datahike 0.7.1630

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (282) hide show
  1. package/README.md +226 -0
  2. package/cljs.analyzer.api.js +427 -0
  3. package/cljs.analyzer.api.js.map +1 -0
  4. package/cljs.analyzer.impl.js +86 -0
  5. package/cljs.analyzer.impl.js.map +1 -0
  6. package/cljs.analyzer.impl.namespaces.js +219 -0
  7. package/cljs.analyzer.impl.namespaces.js.map +1 -0
  8. package/cljs.analyzer.js +7186 -0
  9. package/cljs.analyzer.js.map +1 -0
  10. package/cljs.analyzer.passes.and_or.js +141 -0
  11. package/cljs.analyzer.passes.and_or.js.map +1 -0
  12. package/cljs.analyzer.passes.js +104 -0
  13. package/cljs.analyzer.passes.js.map +1 -0
  14. package/cljs.cache.js +1145 -0
  15. package/cljs.cache.js.map +1 -0
  16. package/cljs.cache.wrapped.js +352 -0
  17. package/cljs.cache.wrapped.js.map +1 -0
  18. package/cljs.core.async.impl.buffers.js +489 -0
  19. package/cljs.core.async.impl.buffers.js.map +1 -0
  20. package/cljs.core.async.impl.channels.js +711 -0
  21. package/cljs.core.async.impl.channels.js.map +1 -0
  22. package/cljs.core.async.impl.dispatch.js +81 -0
  23. package/cljs.core.async.impl.dispatch.js.map +1 -0
  24. package/cljs.core.async.impl.ioc_helpers.js +192 -0
  25. package/cljs.core.async.impl.ioc_helpers.js.map +1 -0
  26. package/cljs.core.async.impl.protocols.js +368 -0
  27. package/cljs.core.async.impl.protocols.js.map +1 -0
  28. package/cljs.core.async.impl.timers.js +510 -0
  29. package/cljs.core.async.impl.timers.js.map +1 -0
  30. package/cljs.core.async.js +8813 -0
  31. package/cljs.core.async.js.map +1 -0
  32. package/cljs.core.js +38764 -0
  33. package/cljs.core.js.map +1 -0
  34. package/cljs.env.js +60 -0
  35. package/cljs.env.js.map +1 -0
  36. package/cljs.nodejs.js +80 -0
  37. package/cljs.nodejs.js.map +1 -0
  38. package/cljs.reader.js +462 -0
  39. package/cljs.reader.js.map +1 -0
  40. package/cljs.spec.alpha.js +5312 -0
  41. package/cljs.spec.alpha.js.map +1 -0
  42. package/cljs.spec.gen.alpha.js +2020 -0
  43. package/cljs.spec.gen.alpha.js.map +1 -0
  44. package/cljs.tagged_literals.js +103 -0
  45. package/cljs.tagged_literals.js.map +1 -0
  46. package/cljs.tools.reader.edn.js +960 -0
  47. package/cljs.tools.reader.edn.js.map +1 -0
  48. package/cljs.tools.reader.impl.commons.js +217 -0
  49. package/cljs.tools.reader.impl.commons.js.map +1 -0
  50. package/cljs.tools.reader.impl.errors.js +441 -0
  51. package/cljs.tools.reader.impl.errors.js.map +1 -0
  52. package/cljs.tools.reader.impl.inspect.js +182 -0
  53. package/cljs.tools.reader.impl.inspect.js.map +1 -0
  54. package/cljs.tools.reader.impl.utils.js +429 -0
  55. package/cljs.tools.reader.impl.utils.js.map +1 -0
  56. package/cljs.tools.reader.js +1830 -0
  57. package/cljs.tools.reader.js.map +1 -0
  58. package/cljs.tools.reader.reader_types.js +838 -0
  59. package/cljs.tools.reader.reader_types.js.map +1 -0
  60. package/cljs_env.js +18192 -0
  61. package/cljs_node_io.core.js +1278 -0
  62. package/cljs_node_io.core.js.map +1 -0
  63. package/cljs_node_io.file.js +918 -0
  64. package/cljs_node_io.file.js.map +1 -0
  65. package/cljs_node_io.fs.js +3911 -0
  66. package/cljs_node_io.fs.js.map +1 -0
  67. package/clojure.data.js +319 -0
  68. package/clojure.data.js.map +1 -0
  69. package/clojure.edn.js +119 -0
  70. package/clojure.edn.js.map +1 -0
  71. package/clojure.set.js +406 -0
  72. package/clojure.set.js.map +1 -0
  73. package/clojure.string.js +502 -0
  74. package/clojure.string.js.map +1 -0
  75. package/clojure.walk.js +156 -0
  76. package/clojure.walk.js.map +1 -0
  77. package/datahike.api.impl.js +621 -0
  78. package/datahike.api.impl.js.map +1 -0
  79. package/datahike.api.specification.js +85 -0
  80. package/datahike.api.specification.js.map +1 -0
  81. package/datahike.array.js +275 -0
  82. package/datahike.array.js.map +1 -0
  83. package/datahike.config.js +437 -0
  84. package/datahike.config.js.map +1 -0
  85. package/datahike.connections.js +55 -0
  86. package/datahike.connections.js.map +1 -0
  87. package/datahike.connector.js +1248 -0
  88. package/datahike.connector.js.map +1 -0
  89. package/datahike.constants.js +66 -0
  90. package/datahike.constants.js.map +1 -0
  91. package/datahike.core.js +628 -0
  92. package/datahike.core.js.map +1 -0
  93. package/datahike.datom.js +963 -0
  94. package/datahike.datom.js.map +1 -0
  95. package/datahike.db.interface.js +819 -0
  96. package/datahike.db.interface.js.map +1 -0
  97. package/datahike.db.js +3095 -0
  98. package/datahike.db.js.map +1 -0
  99. package/datahike.db.search.js +1004 -0
  100. package/datahike.db.search.js.map +1 -0
  101. package/datahike.db.transaction.js +1904 -0
  102. package/datahike.db.transaction.js.map +1 -0
  103. package/datahike.db.utils.js +642 -0
  104. package/datahike.db.utils.js.map +1 -0
  105. package/datahike.gc.js +1618 -0
  106. package/datahike.gc.js.map +1 -0
  107. package/datahike.impl.entity.js +604 -0
  108. package/datahike.impl.entity.js.map +1 -0
  109. package/datahike.index.interface.js +484 -0
  110. package/datahike.index.interface.js.map +1 -0
  111. package/datahike.index.js +50 -0
  112. package/datahike.index.js.map +1 -0
  113. package/datahike.index.persistent_set.js +1250 -0
  114. package/datahike.index.persistent_set.js.map +1 -0
  115. package/datahike.js.api.js +2211 -0
  116. package/datahike.js.api.js.map +1 -0
  117. package/datahike.lru.js +404 -0
  118. package/datahike.lru.js.map +1 -0
  119. package/datahike.pull_api.js +533 -0
  120. package/datahike.pull_api.js.map +1 -0
  121. package/datahike.query.js +11891 -0
  122. package/datahike.query.js.map +1 -0
  123. package/datahike.query_stats.js +152 -0
  124. package/datahike.query_stats.js.map +1 -0
  125. package/datahike.readers.js +166 -0
  126. package/datahike.readers.js.map +1 -0
  127. package/datahike.schema.js +251 -0
  128. package/datahike.schema.js.map +1 -0
  129. package/datahike.schema_cache.js +66 -0
  130. package/datahike.schema_cache.js.map +1 -0
  131. package/datahike.spec.js +70 -0
  132. package/datahike.spec.js.map +1 -0
  133. package/datahike.store.js +514 -0
  134. package/datahike.store.js.map +1 -0
  135. package/datahike.tools.js +436 -0
  136. package/datahike.tools.js.map +1 -0
  137. package/datahike.writer.js +3463 -0
  138. package/datahike.writer.js.map +1 -0
  139. package/datahike.writing.js +3168 -0
  140. package/datahike.writing.js.map +1 -0
  141. package/datalog.parser.impl.js +1421 -0
  142. package/datalog.parser.impl.js.map +1 -0
  143. package/datalog.parser.impl.proto.js +213 -0
  144. package/datalog.parser.impl.proto.js.map +1 -0
  145. package/datalog.parser.impl.util.js +117 -0
  146. package/datalog.parser.impl.util.js.map +1 -0
  147. package/datalog.parser.js +47 -0
  148. package/datalog.parser.js.map +1 -0
  149. package/datalog.parser.pull.js +2603 -0
  150. package/datalog.parser.pull.js.map +1 -0
  151. package/datalog.parser.type.js +7502 -0
  152. package/datalog.parser.type.js.map +1 -0
  153. package/datalog.parser.util.js +60 -0
  154. package/datalog.parser.util.js.map +1 -0
  155. package/environ.core.js +263 -0
  156. package/environ.core.js.map +1 -0
  157. package/fress.api.js +607 -0
  158. package/fress.api.js.map +1 -0
  159. package/fress.impl.adler32.js +435 -0
  160. package/fress.impl.adler32.js.map +1 -0
  161. package/fress.impl.bigint.js +185 -0
  162. package/fress.impl.bigint.js.map +1 -0
  163. package/fress.impl.buffer.js +1087 -0
  164. package/fress.impl.buffer.js.map +1 -0
  165. package/fress.impl.codes.js +105 -0
  166. package/fress.impl.codes.js.map +1 -0
  167. package/fress.impl.hopmap.js +603 -0
  168. package/fress.impl.hopmap.js.map +1 -0
  169. package/fress.impl.ranges.js +49 -0
  170. package/fress.impl.ranges.js.map +1 -0
  171. package/fress.impl.raw_input.js +837 -0
  172. package/fress.impl.raw_input.js.map +1 -0
  173. package/fress.impl.raw_output.js +653 -0
  174. package/fress.impl.raw_output.js.map +1 -0
  175. package/fress.impl.table.js +133 -0
  176. package/fress.impl.table.js.map +1 -0
  177. package/fress.reader.js +2312 -0
  178. package/fress.reader.js.map +1 -0
  179. package/fress.util.js +458 -0
  180. package/fress.util.js.map +1 -0
  181. package/fress.writer.js +2141 -0
  182. package/fress.writer.js.map +1 -0
  183. package/geheimnis.aes.js +132 -0
  184. package/geheimnis.aes.js.map +1 -0
  185. package/hasch.base64.js +42 -0
  186. package/hasch.base64.js.map +1 -0
  187. package/hasch.benc.js +201 -0
  188. package/hasch.benc.js.map +1 -0
  189. package/hasch.core.js +188 -0
  190. package/hasch.core.js.map +1 -0
  191. package/hasch.platform.js +221 -0
  192. package/hasch.platform.js.map +1 -0
  193. package/incognito.base.js +276 -0
  194. package/incognito.base.js.map +1 -0
  195. package/incognito.edn.js +54 -0
  196. package/incognito.edn.js.map +1 -0
  197. package/incognito.fressian.js +330 -0
  198. package/incognito.fressian.js.map +1 -0
  199. package/index.d.ts +660 -0
  200. package/is.simm.partial_cps.async.js +142 -0
  201. package/is.simm.partial_cps.async.js.map +1 -0
  202. package/is.simm.partial_cps.runtime.js +65 -0
  203. package/is.simm.partial_cps.runtime.js.map +1 -0
  204. package/is.simm.partial_cps.sequence.js +1255 -0
  205. package/is.simm.partial_cps.sequence.js.map +1 -0
  206. package/konserve.cache.js +2519 -0
  207. package/konserve.cache.js.map +1 -0
  208. package/konserve.compressor.js +502 -0
  209. package/konserve.compressor.js.map +1 -0
  210. package/konserve.core.js +8052 -0
  211. package/konserve.core.js.map +1 -0
  212. package/konserve.encryptor.js +553 -0
  213. package/konserve.encryptor.js.map +1 -0
  214. package/konserve.gc.js +541 -0
  215. package/konserve.gc.js.map +1 -0
  216. package/konserve.impl.defaults.js +8290 -0
  217. package/konserve.impl.defaults.js.map +1 -0
  218. package/konserve.impl.storage_layout.js +849 -0
  219. package/konserve.impl.storage_layout.js.map +1 -0
  220. package/konserve.memory.js +2102 -0
  221. package/konserve.memory.js.map +1 -0
  222. package/konserve.node_filestore.js +2951 -0
  223. package/konserve.node_filestore.js.map +1 -0
  224. package/konserve.protocols.js +590 -0
  225. package/konserve.protocols.js.map +1 -0
  226. package/konserve.serializers.js +562 -0
  227. package/konserve.serializers.js.map +1 -0
  228. package/konserve.store.js +2245 -0
  229. package/konserve.store.js.map +1 -0
  230. package/konserve.tiered.js +9574 -0
  231. package/konserve.tiered.js.map +1 -0
  232. package/konserve.utils.js +180 -0
  233. package/konserve.utils.js.map +1 -0
  234. package/me.tonsky.persistent_sorted_set.arrays.js +66 -0
  235. package/me.tonsky.persistent_sorted_set.arrays.js.map +1 -0
  236. package/me.tonsky.persistent_sorted_set.branch.js +2779 -0
  237. package/me.tonsky.persistent_sorted_set.branch.js.map +1 -0
  238. package/me.tonsky.persistent_sorted_set.btset.js +14196 -0
  239. package/me.tonsky.persistent_sorted_set.btset.js.map +1 -0
  240. package/me.tonsky.persistent_sorted_set.impl.node.js +324 -0
  241. package/me.tonsky.persistent_sorted_set.impl.node.js.map +1 -0
  242. package/me.tonsky.persistent_sorted_set.impl.storage.js +123 -0
  243. package/me.tonsky.persistent_sorted_set.impl.storage.js.map +1 -0
  244. package/me.tonsky.persistent_sorted_set.js +890 -0
  245. package/me.tonsky.persistent_sorted_set.js.map +1 -0
  246. package/me.tonsky.persistent_sorted_set.leaf.js +561 -0
  247. package/me.tonsky.persistent_sorted_set.leaf.js.map +1 -0
  248. package/me.tonsky.persistent_sorted_set.util.js +402 -0
  249. package/me.tonsky.persistent_sorted_set.util.js.map +1 -0
  250. package/medley.core.js +1857 -0
  251. package/medley.core.js.map +1 -0
  252. package/package.json +38 -0
  253. package/spec_tools.core.js +1925 -0
  254. package/spec_tools.core.js.map +1 -0
  255. package/spec_tools.data_spec.js +1291 -0
  256. package/spec_tools.data_spec.js.map +1 -0
  257. package/spec_tools.form.js +185 -0
  258. package/spec_tools.form.js.map +1 -0
  259. package/spec_tools.impl.js +362 -0
  260. package/spec_tools.impl.js.map +1 -0
  261. package/spec_tools.parse.js +427 -0
  262. package/spec_tools.parse.js.map +1 -0
  263. package/spec_tools.transform.js +288 -0
  264. package/spec_tools.transform.js.map +1 -0
  265. package/superv.async.js +8617 -0
  266. package/superv.async.js.map +1 -0
  267. package/tailrecursion.priority_map.js +994 -0
  268. package/tailrecursion.priority_map.js.map +1 -0
  269. package/taoensso.encore.js +12385 -0
  270. package/taoensso.encore.js.map +1 -0
  271. package/taoensso.timbre.appenders.core.js +239 -0
  272. package/taoensso.timbre.appenders.core.js.map +1 -0
  273. package/taoensso.timbre.js +1264 -0
  274. package/taoensso.timbre.js.map +1 -0
  275. package/taoensso.truss.impl.js +442 -0
  276. package/taoensso.truss.impl.js.map +1 -0
  277. package/taoensso.truss.js +743 -0
  278. package/taoensso.truss.js.map +1 -0
  279. package/test-config-keys.js +33 -0
  280. package/test-final.js +36 -0
  281. package/test-key-duplication.js +67 -0
  282. package/test.js +557 -0
@@ -0,0 +1,275 @@
1
+ var $CLJS = require("./cljs_env");
2
+ var $jscomp = $CLJS.$jscomp;
3
+ var COMPILED = false;
4
+ require("./cljs.core.js");
5
+ var environ=$CLJS.environ || ($CLJS.environ = {});
6
+ var fress=$CLJS.fress || ($CLJS.fress = {});
7
+ var datahike=$CLJS.datahike || ($CLJS.datahike = {});
8
+ var clojure=$CLJS.clojure || ($CLJS.clojure = {});
9
+ var hasch=$CLJS.hasch || ($CLJS.hasch = {});
10
+ var tailrecursion=$CLJS.tailrecursion || ($CLJS.tailrecursion = {});
11
+ var superv=$CLJS.superv || ($CLJS.superv = {});
12
+ var geheimnis=$CLJS.geheimnis || ($CLJS.geheimnis = {});
13
+ var is=$CLJS.is || ($CLJS.is = {});
14
+ var cljs=$CLJS.cljs || ($CLJS.cljs = {});
15
+ var cljs_node_io=$CLJS.cljs_node_io || ($CLJS.cljs_node_io = {});
16
+ var goog=$CLJS.goog || ($CLJS.goog = {});
17
+ var konserve=$CLJS.konserve || ($CLJS.konserve = {});
18
+ var datalog=$CLJS.datalog || ($CLJS.datalog = {});
19
+ var spec_tools=$CLJS.spec_tools || ($CLJS.spec_tools = {});
20
+ var taoensso=$CLJS.taoensso || ($CLJS.taoensso = {});
21
+ var incognito=$CLJS.incognito || ($CLJS.incognito = {});
22
+ var medley=$CLJS.medley || ($CLJS.medley = {});
23
+ var me=$CLJS.me || ($CLJS.me = {});
24
+
25
+ $CLJS.SHADOW_ENV.setLoaded("datahike.array.js");
26
+
27
+ goog.provide('datahike.array');
28
+ goog.scope(function(){
29
+ datahike.array.goog$module$goog$array = goog.module.get('goog.array');
30
+ });
31
+ datahike.array.bytes_QMARK_ = (function datahike$array$bytes_QMARK_(x){
32
+ return (((x.buffer instanceof ArrayBuffer)) && (typeof x.byteLength === 'number'));
33
+ });
34
+ /**
35
+ * Compare two arrays a and b element-wise in ascending order. If one array is a
36
+ * prefix of another then it comes first.
37
+ */
38
+ datahike.array.compare_arrays = (function datahike$array$compare_arrays(a,b){
39
+ return datahike.array.goog$module$goog$array.compare3(a,b);
40
+ });
41
+ /**
42
+ * Represents a byte array as a string. Two byte arrays are said to be equal iff their corresponding values after applying this function are equal. That way, we rely on the equality and hash code implementations of the String class to compare byte arrays.
43
+ */
44
+ datahike.array.string_from_bytes = (function datahike$array$string_from_bytes(x){
45
+ return (new TextDecoder("utf8")).decode(x);
46
+ });
47
+
48
+ /**
49
+ * @constructor
50
+ * @implements {cljs.core.IRecord}
51
+ * @implements {cljs.core.IKVReduce}
52
+ * @implements {cljs.core.IEquiv}
53
+ * @implements {cljs.core.IHash}
54
+ * @implements {cljs.core.ICollection}
55
+ * @implements {cljs.core.ICounted}
56
+ * @implements {cljs.core.ISeqable}
57
+ * @implements {cljs.core.IMeta}
58
+ * @implements {cljs.core.ICloneable}
59
+ * @implements {cljs.core.IPrintWithWriter}
60
+ * @implements {cljs.core.IIterable}
61
+ * @implements {cljs.core.IWithMeta}
62
+ * @implements {cljs.core.IAssociative}
63
+ * @implements {cljs.core.IMap}
64
+ * @implements {cljs.core.ILookup}
65
+ */
66
+ datahike.array.WrappedBytes = (function (string_repr,__meta,__extmap,__hash){
67
+ this.string_repr = string_repr;
68
+ this.__meta = __meta;
69
+ this.__extmap = __extmap;
70
+ this.__hash = __hash;
71
+ this.cljs$lang$protocol_mask$partition0$ = 2230716170;
72
+ this.cljs$lang$protocol_mask$partition1$ = 139264;
73
+ });
74
+ (datahike.array.WrappedBytes.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__5300__auto__,k__5301__auto__){
75
+ var self__ = this;
76
+ var this__5300__auto____$1 = this;
77
+ return this__5300__auto____$1.cljs$core$ILookup$_lookup$arity$3(null, k__5301__auto__,null);
78
+ }));
79
+
80
+ (datahike.array.WrappedBytes.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__5302__auto__,k102734,else__5303__auto__){
81
+ var self__ = this;
82
+ var this__5302__auto____$1 = this;
83
+ var G__102752 = k102734;
84
+ var G__102752__$1 = (((G__102752 instanceof cljs.core.Keyword))?G__102752.fqn:null);
85
+ switch (G__102752__$1) {
86
+ case "string-repr":
87
+ return self__.string_repr;
88
+
89
+ break;
90
+ default:
91
+ return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k102734,else__5303__auto__);
92
+
93
+ }
94
+ }));
95
+
96
+ (datahike.array.WrappedBytes.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__5320__auto__,f__5321__auto__,init__5322__auto__){
97
+ var self__ = this;
98
+ var this__5320__auto____$1 = this;
99
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__5323__auto__,p__102759){
100
+ var vec__102761 = p__102759;
101
+ var k__5324__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__102761,(0),null);
102
+ var v__5325__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__102761,(1),null);
103
+ return (f__5321__auto__.cljs$core$IFn$_invoke$arity$3 ? f__5321__auto__.cljs$core$IFn$_invoke$arity$3(ret__5323__auto__,k__5324__auto__,v__5325__auto__) : f__5321__auto__.call(null, ret__5323__auto__,k__5324__auto__,v__5325__auto__));
104
+ }),init__5322__auto__,this__5320__auto____$1);
105
+ }));
106
+
107
+ (datahike.array.WrappedBytes.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__5315__auto__,writer__5316__auto__,opts__5317__auto__){
108
+ var self__ = this;
109
+ var this__5315__auto____$1 = this;
110
+ var pr_pair__5318__auto__ = (function (keyval__5319__auto__){
111
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,cljs.core.pr_writer,""," ","",opts__5317__auto__,keyval__5319__auto__);
112
+ });
113
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,pr_pair__5318__auto__,"#datahike.array.WrappedBytes{",", ","}",opts__5317__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"string-repr","string-repr",431081264),self__.string_repr],null))], null),self__.__extmap));
114
+ }));
115
+
116
+ (datahike.array.WrappedBytes.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__102733){
117
+ var self__ = this;
118
+ var G__102733__$1 = this;
119
+ return (new cljs.core.RecordIter((0),G__102733__$1,1,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"string-repr","string-repr",431081264)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
120
+ }));
121
+
122
+ (datahike.array.WrappedBytes.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__5298__auto__){
123
+ var self__ = this;
124
+ var this__5298__auto____$1 = this;
125
+ return self__.__meta;
126
+ }));
127
+
128
+ (datahike.array.WrappedBytes.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__5295__auto__){
129
+ var self__ = this;
130
+ var this__5295__auto____$1 = this;
131
+ return (new datahike.array.WrappedBytes(self__.string_repr,self__.__meta,self__.__extmap,self__.__hash));
132
+ }));
133
+
134
+ (datahike.array.WrappedBytes.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__5304__auto__){
135
+ var self__ = this;
136
+ var this__5304__auto____$1 = this;
137
+ return (1 + cljs.core.count(self__.__extmap));
138
+ }));
139
+
140
+ (datahike.array.WrappedBytes.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__5296__auto__){
141
+ var self__ = this;
142
+ var this__5296__auto____$1 = this;
143
+ var h__5111__auto__ = self__.__hash;
144
+ if((!((h__5111__auto__ == null)))){
145
+ return h__5111__auto__;
146
+ } else {
147
+ var h__5111__auto____$1 = (function (coll__5297__auto__){
148
+ return (-959997962 ^ cljs.core.hash_unordered_coll(coll__5297__auto__));
149
+ })(this__5296__auto____$1);
150
+ (self__.__hash = h__5111__auto____$1);
151
+
152
+ return h__5111__auto____$1;
153
+ }
154
+ }));
155
+
156
+ (datahike.array.WrappedBytes.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this102735,other102736){
157
+ var self__ = this;
158
+ var this102735__$1 = this;
159
+ return (((!((other102736 == null)))) && ((((this102735__$1.constructor === other102736.constructor)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this102735__$1.string_repr,other102736.string_repr)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this102735__$1.__extmap,other102736.__extmap)))))));
160
+ }));
161
+
162
+ (datahike.array.WrappedBytes.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__5310__auto__,k__5311__auto__){
163
+ var self__ = this;
164
+ var this__5310__auto____$1 = this;
165
+ if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"string-repr","string-repr",431081264),null], null), null),k__5311__auto__)){
166
+ return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__5310__auto____$1),self__.__meta),k__5311__auto__);
167
+ } else {
168
+ return (new datahike.array.WrappedBytes(self__.string_repr,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__5311__auto__)),null));
169
+ }
170
+ }));
171
+
172
+ (datahike.array.WrappedBytes.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 = (function (this__5307__auto__,k102734){
173
+ var self__ = this;
174
+ var this__5307__auto____$1 = this;
175
+ var G__102774 = k102734;
176
+ var G__102774__$1 = (((G__102774 instanceof cljs.core.Keyword))?G__102774.fqn:null);
177
+ switch (G__102774__$1) {
178
+ case "string-repr":
179
+ return true;
180
+
181
+ break;
182
+ default:
183
+ return cljs.core.contains_QMARK_(self__.__extmap,k102734);
184
+
185
+ }
186
+ }));
187
+
188
+ (datahike.array.WrappedBytes.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__5308__auto__,k__5309__auto__,G__102733){
189
+ var self__ = this;
190
+ var this__5308__auto____$1 = this;
191
+ var pred__102776 = cljs.core.keyword_identical_QMARK_;
192
+ var expr__102777 = k__5309__auto__;
193
+ if(cljs.core.truth_((pred__102776.cljs$core$IFn$_invoke$arity$2 ? pred__102776.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"string-repr","string-repr",431081264),expr__102777) : pred__102776.call(null, new cljs.core.Keyword(null,"string-repr","string-repr",431081264),expr__102777)))){
194
+ return (new datahike.array.WrappedBytes(G__102733,self__.__meta,self__.__extmap,null));
195
+ } else {
196
+ return (new datahike.array.WrappedBytes(self__.string_repr,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__5309__auto__,G__102733),null));
197
+ }
198
+ }));
199
+
200
+ (datahike.array.WrappedBytes.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__5313__auto__){
201
+ var self__ = this;
202
+ var this__5313__auto____$1 = this;
203
+ return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,"string-repr","string-repr",431081264),self__.string_repr,null))], null),self__.__extmap));
204
+ }));
205
+
206
+ (datahike.array.WrappedBytes.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__5299__auto__,G__102733){
207
+ var self__ = this;
208
+ var this__5299__auto____$1 = this;
209
+ return (new datahike.array.WrappedBytes(self__.string_repr,G__102733,self__.__extmap,self__.__hash));
210
+ }));
211
+
212
+ (datahike.array.WrappedBytes.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__5305__auto__,entry__5306__auto__){
213
+ var self__ = this;
214
+ var this__5305__auto____$1 = this;
215
+ if(cljs.core.vector_QMARK_(entry__5306__auto__)){
216
+ return this__5305__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null, cljs.core._nth(entry__5306__auto__,(0)),cljs.core._nth(entry__5306__auto__,(1)));
217
+ } else {
218
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__5305__auto____$1,entry__5306__auto__);
219
+ }
220
+ }));
221
+
222
+ (datahike.array.WrappedBytes.getBasis = (function (){
223
+ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"string-repr","string-repr",2071612791,null)], null);
224
+ }));
225
+
226
+ (datahike.array.WrappedBytes.cljs$lang$type = true);
227
+
228
+ (datahike.array.WrappedBytes.cljs$lang$ctorPrSeq = (function (this__5346__auto__){
229
+ return (new cljs.core.List(null,"datahike.array/WrappedBytes",null,(1),null));
230
+ }));
231
+
232
+ (datahike.array.WrappedBytes.cljs$lang$ctorPrWriter = (function (this__5346__auto__,writer__5347__auto__){
233
+ return cljs.core._write(writer__5347__auto__,"datahike.array/WrappedBytes");
234
+ }));
235
+
236
+ /**
237
+ * Positional factory function for datahike.array/WrappedBytes.
238
+ */
239
+ datahike.array.__GT_WrappedBytes = (function datahike$array$__GT_WrappedBytes(string_repr){
240
+ return (new datahike.array.WrappedBytes(string_repr,null,null,null));
241
+ });
242
+
243
+ /**
244
+ * Factory function for datahike.array/WrappedBytes, taking a map of keywords to field values.
245
+ */
246
+ datahike.array.map__GT_WrappedBytes = (function datahike$array$map__GT_WrappedBytes(G__102741){
247
+ var extmap__5342__auto__ = (function (){var G__102820 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(G__102741,new cljs.core.Keyword(null,"string-repr","string-repr",431081264));
248
+ if(cljs.core.record_QMARK_(G__102741)){
249
+ return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__102820);
250
+ } else {
251
+ return G__102820;
252
+ }
253
+ })();
254
+ return (new datahike.array.WrappedBytes(new cljs.core.Keyword(null,"string-repr","string-repr",431081264).cljs$core$IFn$_invoke$arity$1(G__102741),null,cljs.core.not_empty(extmap__5342__auto__),null));
255
+ });
256
+
257
+ /**
258
+ * This functions is such that `(a= x y)` is equivalent to `(= (wrap-comparable x) (wrap-comparable y))`. This lets us also use these semantics in hash-sets or as keys in maps.
259
+ */
260
+ datahike.array.wrap_comparable = (function datahike$array$wrap_comparable(x){
261
+ if(datahike.array.bytes_QMARK_(x)){
262
+ return (new datahike.array.WrappedBytes(x,null,null,null));
263
+ } else {
264
+ return x;
265
+ }
266
+ });
267
+ /**
268
+ * Extension of Clojure's equality to things we also want to treat like values,
269
+ * e.g. certain array types.
270
+ */
271
+ datahike.array.a_EQ_ = (function datahike$array$a_EQ_(a,b){
272
+ return ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(a,b)) || ((((a === b)) || ((datahike.array.compare_arrays(a,b) === (0))))));
273
+ });
274
+
275
+ //# sourceMappingURL=datahike.array.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["datahike/array.cljc"],"mappings":"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","names":["datahike.array/bytes?","x","js/ArrayBuffer","datahike.array/compare-arrays","a","b","datahike.array.goog$module$goog$array.compare3","datahike.array/string-from-bytes","js/TextDecoder","this__5300__auto__","k__5301__auto__","this__5302__auto__","k102734","else__5303__auto__","G__102752","cljs.core/Keyword","string-repr","cljs.core.get","__extmap","this__5320__auto__","f__5321__auto__","init__5322__auto__","cljs.core.reduce","ret__5323__auto__","p__102759","vec__102761","k__5324__auto__","cljs.core.nth","v__5325__auto__","this__5315__auto__","writer__5316__auto__","opts__5317__auto__","pr-pair__5318__auto__","keyval__5319__auto__","cljs.core/pr-sequential-writer","cljs.core.concat","cljs.core/PersistentVector","G__102733","cljs.core/RecordIter","cljs.core/-iterator","cljs.core/nil-iter","this__5298__auto__","__meta","this__5295__auto__","__hash","this__5304__auto__","cljs.core/count","this__5296__auto__","h__5111__auto__","coll__5297__auto__","cljs.core/hash-unordered-coll","this102735","other102736","cljs.core._EQ_","this__5310__auto__","k__5311__auto__","cljs.core/contains?","cljs.core.dissoc","cljs.core/-with-meta","cljs.core.into","cljs.core/not-empty","this__5307__auto__","G__102774","this__5308__auto__","k__5309__auto__","pred__102776","cljs.core/keyword-identical?","expr__102777","cljs.core.assoc","this__5313__auto__","cljs.core/seq","cljs.core/MapEntry","this__5299__auto__","this__5305__auto__","entry__5306__auto__","cljs.core/vector?","cljs.core/-nth","cljs.core/-conj","datahike.array/WrappedBytes","this__5346__auto__","cljs.core/List","writer__5347__auto__","cljs.core/-write","G__102741","extmap__5342__auto__","G__102820","cljs.core/record?","datahike.array/->WrappedBytes","datahike.array/map->WrappedBytes","datahike.array/wrap-comparable","datahike.array/a="],"sourcesContent":["(ns ^:no-doc datahike.array\n #?(:cljs (:require [goog.array]))\n #?(:clj (:import [java.util Arrays])))\n\n#?(:clj\n (defonce ^:private hh-node-ns\n (try\n (require 'hitchhiker.tree.node)\n (find-ns 'hitchhiker.tree.node)\n (catch Exception _ nil))))\n\n#?(:clj\n (defn java8? []\n (try\n (= 8 (Integer/parseInt (subs (System/getProperty \"java.specification.version\") 2)))\n (catch Exception _\n false))))\n\n#?(:clj\n ;; meta data doesn't get expanded in macros :/\n (defn array-compare [a b] (Arrays/compare ^bytes a ^bytes b)))\n\n#?(:clj\n (defmacro raw-array-compare [a b]\n (if (java8?)\n ;; slow fallback for Java 8, but has same semantics\n `(let [bl# (alength ~b)\n al# (alength ~a)]\n (loop [i# 1]\n (cond (and (> i# bl#) (> i# al#))\n 0\n\n (> i# bl#)\n 1 ;; b is a prefix of a\n\n (> i# al#)\n -1 ;; a is a prefix of b\n\n :else\n (let [ec# (compare (aget ~a (dec i#)) (aget ~b (dec i#)))]\n (if (not (zero? ec#))\n ec#\n (recur (inc i#)))))))\n `(array-compare ~a ~b))))\n\n#?(:cljs\n (defn bytes? [x]\n (and (instance? js/ArrayBuffer (.-buffer x))\n (number? (.-byteLength x)))))\n\n(defn compare-arrays\n \"Compare two arrays a and b element-wise in ascending order. If one array is a\nprefix of another then it comes first.\"\n [a b]\n #?(:cljs (goog.array/compare3 a b)\n :clj\n (if (not (and (bytes? a) (bytes? b)))\n (try\n (compare a b)\n (catch ClassCastException _\n (if hh-node-ns\n (let [order-fn (ns-resolve hh-node-ns '-order-on-edn-types)]\n (- (order-fn a) (order-fn b)))\n ;; Fallback when hitchhiker-tree not available\n (compare (class a) (class b)))))\n (raw-array-compare a b))))\n\n(defn string-from-bytes\n \"Represents a byte array as a string. Two byte arrays are said to be equal iff their corresponding values after applying this function are equal. That way, we rely on the equality and hash code implementations of the String class to compare byte arrays.\"\n [x]\n #?(:cljs (.decode (js/TextDecoder. \"utf8\") x)\n :clj\n (let [n (alength x)\n dst (char-array n)]\n (dotimes [i n]\n (aset dst i (char (aget x i))))\n (String. dst))))\n\n(defrecord WrappedBytes [string-repr])\n\n(defn wrap-comparable\n \"This functions is such that `(a= x y)` is equivalent to `(= (wrap-comparable x) (wrap-comparable y))`. This lets us also use these semantics in hash-sets or as keys in maps.\"\n [x]\n (if (bytes? x)\n (WrappedBytes. #?(:clj (string-from-bytes x)\n :cljs x))\n x))\n\n(defn a=\n \"Extension of Clojure's equality to things we also want to treat like values,\n e.g. certain array types.\"\n [a b]\n (or (= a b)\n #?(:clj (and (bytes? a)\n (bytes? b)\n (zero? (compare-arrays a b)))\n :cljs (or (identical? a b)\n (zero? (compare-arrays a b))))))\n"]}