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,435 @@
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("fress.impl.adler32.js");
26
+
27
+ goog.provide('fress.impl.adler32');
28
+
29
+ /**
30
+ * @interface
31
+ */
32
+ fress.impl.adler32.Adler32Protocol = function(){};
33
+
34
+ var fress$impl$adler32$Adler32Protocol$update_BANG_$dyn_45830 = (function() {
35
+ var G__45831 = null;
36
+ var G__45831__2 = (function (this$,byte$){
37
+ var x__5350__auto__ = (((this$ == null))?null:this$);
38
+ var m__5351__auto__ = (fress.impl.adler32.update_BANG_[goog.typeOf(x__5350__auto__)]);
39
+ if((!((m__5351__auto__ == null)))){
40
+ return (m__5351__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5351__auto__.cljs$core$IFn$_invoke$arity$2(this$,byte$) : m__5351__auto__.call(null, this$,byte$));
41
+ } else {
42
+ var m__5349__auto__ = (fress.impl.adler32.update_BANG_["_"]);
43
+ if((!((m__5349__auto__ == null)))){
44
+ return (m__5349__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5349__auto__.cljs$core$IFn$_invoke$arity$2(this$,byte$) : m__5349__auto__.call(null, this$,byte$));
45
+ } else {
46
+ throw cljs.core.missing_protocol("Adler32Protocol.update!",this$);
47
+ }
48
+ }
49
+ });
50
+ var G__45831__4 = (function (this$,bytes,offset,length){
51
+ var x__5350__auto__ = (((this$ == null))?null:this$);
52
+ var m__5351__auto__ = (fress.impl.adler32.update_BANG_[goog.typeOf(x__5350__auto__)]);
53
+ if((!((m__5351__auto__ == null)))){
54
+ return (m__5351__auto__.cljs$core$IFn$_invoke$arity$4 ? m__5351__auto__.cljs$core$IFn$_invoke$arity$4(this$,bytes,offset,length) : m__5351__auto__.call(null, this$,bytes,offset,length));
55
+ } else {
56
+ var m__5349__auto__ = (fress.impl.adler32.update_BANG_["_"]);
57
+ if((!((m__5349__auto__ == null)))){
58
+ return (m__5349__auto__.cljs$core$IFn$_invoke$arity$4 ? m__5349__auto__.cljs$core$IFn$_invoke$arity$4(this$,bytes,offset,length) : m__5349__auto__.call(null, this$,bytes,offset,length));
59
+ } else {
60
+ throw cljs.core.missing_protocol("Adler32Protocol.update!",this$);
61
+ }
62
+ }
63
+ });
64
+ G__45831 = function(this$,bytes,offset,length){
65
+ switch(arguments.length){
66
+ case 2:
67
+ return G__45831__2.call(this,this$,bytes);
68
+ case 4:
69
+ return G__45831__4.call(this,this$,bytes,offset,length);
70
+ }
71
+ throw(new Error('Invalid arity: ' + arguments.length));
72
+ };
73
+ G__45831.cljs$core$IFn$_invoke$arity$2 = G__45831__2;
74
+ G__45831.cljs$core$IFn$_invoke$arity$4 = G__45831__4;
75
+ return G__45831;
76
+ })()
77
+ ;
78
+ fress.impl.adler32.update_BANG_ = (function fress$impl$adler32$update_BANG_(var_args){
79
+ var G__45732 = arguments.length;
80
+ switch (G__45732) {
81
+ case 2:
82
+ return fress.impl.adler32.update_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
83
+
84
+ break;
85
+ case 4:
86
+ return fress.impl.adler32.update_BANG_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));
87
+
88
+ break;
89
+ default:
90
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
91
+
92
+ }
93
+ });
94
+
95
+ (fress.impl.adler32.update_BANG_.cljs$core$IFn$_invoke$arity$2 = (function (this$,byte$){
96
+ if((((!((this$ == null)))) && ((!((this$.fress$impl$adler32$Adler32Protocol$update_BANG_$arity$2 == null)))))){
97
+ return this$.fress$impl$adler32$Adler32Protocol$update_BANG_$arity$2(this$,byte$);
98
+ } else {
99
+ return fress$impl$adler32$Adler32Protocol$update_BANG_$dyn_45830(this$,byte$);
100
+ }
101
+ }));
102
+
103
+ (fress.impl.adler32.update_BANG_.cljs$core$IFn$_invoke$arity$4 = (function (this$,bytes,offset,length){
104
+ if((((!((this$ == null)))) && ((!((this$.fress$impl$adler32$Adler32Protocol$update_BANG_$arity$4 == null)))))){
105
+ return this$.fress$impl$adler32$Adler32Protocol$update_BANG_$arity$4(this$,bytes,offset,length);
106
+ } else {
107
+ return fress$impl$adler32$Adler32Protocol$update_BANG_$dyn_45830(this$,bytes,offset,length);
108
+ }
109
+ }));
110
+
111
+ (fress.impl.adler32.update_BANG_.cljs$lang$maxFixedArity = 4);
112
+
113
+
114
+ var fress$impl$adler32$Adler32Protocol$reset$dyn_45840 = (function (this$){
115
+ var x__5350__auto__ = (((this$ == null))?null:this$);
116
+ var m__5351__auto__ = (fress.impl.adler32.reset[goog.typeOf(x__5350__auto__)]);
117
+ if((!((m__5351__auto__ == null)))){
118
+ return (m__5351__auto__.cljs$core$IFn$_invoke$arity$1 ? m__5351__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__5351__auto__.call(null, this$));
119
+ } else {
120
+ var m__5349__auto__ = (fress.impl.adler32.reset["_"]);
121
+ if((!((m__5349__auto__ == null)))){
122
+ return (m__5349__auto__.cljs$core$IFn$_invoke$arity$1 ? m__5349__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__5349__auto__.call(null, this$));
123
+ } else {
124
+ throw cljs.core.missing_protocol("Adler32Protocol.reset",this$);
125
+ }
126
+ }
127
+ });
128
+ fress.impl.adler32.reset = (function fress$impl$adler32$reset(this$){
129
+ if((((!((this$ == null)))) && ((!((this$.fress$impl$adler32$Adler32Protocol$reset$arity$1 == null)))))){
130
+ return this$.fress$impl$adler32$Adler32Protocol$reset$arity$1(this$);
131
+ } else {
132
+ return fress$impl$adler32$Adler32Protocol$reset$dyn_45840(this$);
133
+ }
134
+ });
135
+
136
+ fress.impl.adler32.adler32_base = (65521);
137
+
138
+ /**
139
+ * @constructor
140
+ * @implements {cljs.core.IRecord}
141
+ * @implements {cljs.core.IKVReduce}
142
+ * @implements {cljs.core.IEquiv}
143
+ * @implements {cljs.core.IHash}
144
+ * @implements {cljs.core.ICollection}
145
+ * @implements {cljs.core.ICounted}
146
+ * @implements {cljs.core.ISeqable}
147
+ * @implements {cljs.core.IMeta}
148
+ * @implements {cljs.core.ICloneable}
149
+ * @implements {cljs.core.IDeref}
150
+ * @implements {cljs.core.IPrintWithWriter}
151
+ * @implements {cljs.core.IIterable}
152
+ * @implements {cljs.core.IWithMeta}
153
+ * @implements {cljs.core.IAssociative}
154
+ * @implements {cljs.core.IMap}
155
+ * @implements {cljs.core.ILookup}
156
+ * @implements {fress.impl.adler32.Adler32Protocol}
157
+ */
158
+ fress.impl.adler32.Adler32 = (function (value,__meta,__extmap,__hash){
159
+ this.value = value;
160
+ this.__meta = __meta;
161
+ this.__extmap = __extmap;
162
+ this.__hash = __hash;
163
+ this.cljs$lang$protocol_mask$partition0$ = 2230748938;
164
+ this.cljs$lang$protocol_mask$partition1$ = 139264;
165
+ });
166
+ (fress.impl.adler32.Adler32.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__5300__auto__,k__5301__auto__){
167
+ var self__ = this;
168
+ var this__5300__auto____$1 = this;
169
+ return this__5300__auto____$1.cljs$core$ILookup$_lookup$arity$3(null, k__5301__auto__,null);
170
+ }));
171
+
172
+ (fress.impl.adler32.Adler32.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__5302__auto__,k45750,else__5303__auto__){
173
+ var self__ = this;
174
+ var this__5302__auto____$1 = this;
175
+ var G__45757 = k45750;
176
+ var G__45757__$1 = (((G__45757 instanceof cljs.core.Keyword))?G__45757.fqn:null);
177
+ switch (G__45757__$1) {
178
+ case "value":
179
+ return self__.value;
180
+
181
+ break;
182
+ default:
183
+ return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k45750,else__5303__auto__);
184
+
185
+ }
186
+ }));
187
+
188
+ (fress.impl.adler32.Adler32.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__5320__auto__,f__5321__auto__,init__5322__auto__){
189
+ var self__ = this;
190
+ var this__5320__auto____$1 = this;
191
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__5323__auto__,p__45758){
192
+ var vec__45761 = p__45758;
193
+ var k__5324__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45761,(0),null);
194
+ var v__5325__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45761,(1),null);
195
+ 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__));
196
+ }),init__5322__auto__,this__5320__auto____$1);
197
+ }));
198
+
199
+ (fress.impl.adler32.Adler32.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__5315__auto__,writer__5316__auto__,opts__5317__auto__){
200
+ var self__ = this;
201
+ var this__5315__auto____$1 = this;
202
+ var pr_pair__5318__auto__ = (function (keyval__5319__auto__){
203
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,cljs.core.pr_writer,""," ","",opts__5317__auto__,keyval__5319__auto__);
204
+ });
205
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,pr_pair__5318__auto__,"#fress.impl.adler32.Adler32{",", ","}",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,"value","value",305978217),self__.value],null))], null),self__.__extmap));
206
+ }));
207
+
208
+ (fress.impl.adler32.Adler32.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__45749){
209
+ var self__ = this;
210
+ var G__45749__$1 = this;
211
+ return (new cljs.core.RecordIter((0),G__45749__$1,1,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"value","value",305978217)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
212
+ }));
213
+
214
+ (fress.impl.adler32.Adler32.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__5298__auto__){
215
+ var self__ = this;
216
+ var this__5298__auto____$1 = this;
217
+ return self__.__meta;
218
+ }));
219
+
220
+ (fress.impl.adler32.Adler32.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__5295__auto__){
221
+ var self__ = this;
222
+ var this__5295__auto____$1 = this;
223
+ return (new fress.impl.adler32.Adler32(self__.value,self__.__meta,self__.__extmap,self__.__hash));
224
+ }));
225
+
226
+ (fress.impl.adler32.Adler32.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__5304__auto__){
227
+ var self__ = this;
228
+ var this__5304__auto____$1 = this;
229
+ return (1 + cljs.core.count(self__.__extmap));
230
+ }));
231
+
232
+ (fress.impl.adler32.Adler32.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__5296__auto__){
233
+ var self__ = this;
234
+ var this__5296__auto____$1 = this;
235
+ var h__5111__auto__ = self__.__hash;
236
+ if((!((h__5111__auto__ == null)))){
237
+ return h__5111__auto__;
238
+ } else {
239
+ var h__5111__auto____$1 = (function (coll__5297__auto__){
240
+ return (501626806 ^ cljs.core.hash_unordered_coll(coll__5297__auto__));
241
+ })(this__5296__auto____$1);
242
+ (self__.__hash = h__5111__auto____$1);
243
+
244
+ return h__5111__auto____$1;
245
+ }
246
+ }));
247
+
248
+ (fress.impl.adler32.Adler32.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this45751,other45752){
249
+ var self__ = this;
250
+ var this45751__$1 = this;
251
+ return (((!((other45752 == null)))) && ((((this45751__$1.constructor === other45752.constructor)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this45751__$1.value,other45752.value)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this45751__$1.__extmap,other45752.__extmap)))))));
252
+ }));
253
+
254
+ (fress.impl.adler32.Adler32.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__5310__auto__,k__5311__auto__){
255
+ var self__ = this;
256
+ var this__5310__auto____$1 = this;
257
+ if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"value","value",305978217),null], null), null),k__5311__auto__)){
258
+ 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__);
259
+ } else {
260
+ return (new fress.impl.adler32.Adler32(self__.value,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__5311__auto__)),null));
261
+ }
262
+ }));
263
+
264
+ (fress.impl.adler32.Adler32.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 = (function (this__5307__auto__,k45750){
265
+ var self__ = this;
266
+ var this__5307__auto____$1 = this;
267
+ var G__45808 = k45750;
268
+ var G__45808__$1 = (((G__45808 instanceof cljs.core.Keyword))?G__45808.fqn:null);
269
+ switch (G__45808__$1) {
270
+ case "value":
271
+ return true;
272
+
273
+ break;
274
+ default:
275
+ return cljs.core.contains_QMARK_(self__.__extmap,k45750);
276
+
277
+ }
278
+ }));
279
+
280
+ (fress.impl.adler32.Adler32.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__5308__auto__,k__5309__auto__,G__45749){
281
+ var self__ = this;
282
+ var this__5308__auto____$1 = this;
283
+ var pred__45809 = cljs.core.keyword_identical_QMARK_;
284
+ var expr__45810 = k__5309__auto__;
285
+ if(cljs.core.truth_((pred__45809.cljs$core$IFn$_invoke$arity$2 ? pred__45809.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"value","value",305978217),expr__45810) : pred__45809.call(null, new cljs.core.Keyword(null,"value","value",305978217),expr__45810)))){
286
+ return (new fress.impl.adler32.Adler32(G__45749,self__.__meta,self__.__extmap,null));
287
+ } else {
288
+ return (new fress.impl.adler32.Adler32(self__.value,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__5309__auto__,G__45749),null));
289
+ }
290
+ }));
291
+
292
+ (fress.impl.adler32.Adler32.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__5313__auto__){
293
+ var self__ = this;
294
+ var this__5313__auto____$1 = this;
295
+ 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,"value","value",305978217),self__.value,null))], null),self__.__extmap));
296
+ }));
297
+
298
+ (fress.impl.adler32.Adler32.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__5299__auto__,G__45749){
299
+ var self__ = this;
300
+ var this__5299__auto____$1 = this;
301
+ return (new fress.impl.adler32.Adler32(self__.value,G__45749,self__.__extmap,self__.__hash));
302
+ }));
303
+
304
+ (fress.impl.adler32.Adler32.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__5305__auto__,entry__5306__auto__){
305
+ var self__ = this;
306
+ var this__5305__auto____$1 = this;
307
+ if(cljs.core.vector_QMARK_(entry__5306__auto__)){
308
+ 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)));
309
+ } else {
310
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__5305__auto____$1,entry__5306__auto__);
311
+ }
312
+ }));
313
+
314
+ (fress.impl.adler32.Adler32.prototype.fress$impl$adler32$Adler32Protocol$ = cljs.core.PROTOCOL_SENTINEL);
315
+
316
+ (fress.impl.adler32.Adler32.prototype.fress$impl$adler32$Adler32Protocol$update_BANG_$arity$2 = (function (this$,byte$){
317
+ var self__ = this;
318
+ var this$__$1 = this;
319
+ var s1 = ((self__.value & (65535)) + (byte$ & (255)));
320
+ var s2 = (((self__.value >> (16)) & (65535)) + s1);
321
+ return (this$__$1.value = ((cljs.core.mod(s2,(65521)) << (16)) | cljs.core.mod(s1,(65521))));
322
+ }));
323
+
324
+ (fress.impl.adler32.Adler32.prototype.fress$impl$adler32$Adler32Protocol$update_BANG_$arity$4 = (function (this$,bs,off,len){
325
+ var self__ = this;
326
+ var this$__$1 = this;
327
+ var seq__45814 = cljs.core.seq(cljs.core.range.cljs$core$IFn$_invoke$arity$2(off,(off + len)));
328
+ var chunk__45815 = null;
329
+ var count__45816 = (0);
330
+ var i__45817 = (0);
331
+ while(true){
332
+ if((i__45817 < count__45816)){
333
+ var i = chunk__45815.cljs$core$IIndexed$_nth$arity$2(null, i__45817);
334
+ this$__$1.fress$impl$adler32$Adler32Protocol$update_BANG_$arity$2(null, (bs[i]));
335
+
336
+
337
+ var G__45856 = seq__45814;
338
+ var G__45857 = chunk__45815;
339
+ var G__45858 = count__45816;
340
+ var G__45859 = (i__45817 + (1));
341
+ seq__45814 = G__45856;
342
+ chunk__45815 = G__45857;
343
+ count__45816 = G__45858;
344
+ i__45817 = G__45859;
345
+ continue;
346
+ } else {
347
+ var temp__5804__auto__ = cljs.core.seq(seq__45814);
348
+ if(temp__5804__auto__){
349
+ var seq__45814__$1 = temp__5804__auto__;
350
+ if(cljs.core.chunked_seq_QMARK_(seq__45814__$1)){
351
+ var c__5525__auto__ = cljs.core.chunk_first(seq__45814__$1);
352
+ var G__45862 = cljs.core.chunk_rest(seq__45814__$1);
353
+ var G__45863 = c__5525__auto__;
354
+ var G__45864 = cljs.core.count(c__5525__auto__);
355
+ var G__45865 = (0);
356
+ seq__45814 = G__45862;
357
+ chunk__45815 = G__45863;
358
+ count__45816 = G__45864;
359
+ i__45817 = G__45865;
360
+ continue;
361
+ } else {
362
+ var i = cljs.core.first(seq__45814__$1);
363
+ this$__$1.fress$impl$adler32$Adler32Protocol$update_BANG_$arity$2(null, (bs[i]));
364
+
365
+
366
+ var G__45867 = cljs.core.next(seq__45814__$1);
367
+ var G__45868 = null;
368
+ var G__45869 = (0);
369
+ var G__45870 = (0);
370
+ seq__45814 = G__45867;
371
+ chunk__45815 = G__45868;
372
+ count__45816 = G__45869;
373
+ i__45817 = G__45870;
374
+ continue;
375
+ }
376
+ } else {
377
+ return null;
378
+ }
379
+ }
380
+ break;
381
+ }
382
+ }));
383
+
384
+ (fress.impl.adler32.Adler32.prototype.fress$impl$adler32$Adler32Protocol$reset$arity$1 = (function (this$){
385
+ var self__ = this;
386
+ var this$__$1 = this;
387
+ return (this$__$1.value = (1));
388
+ }));
389
+
390
+ (fress.impl.adler32.Adler32.prototype.cljs$core$IDeref$_deref$arity$1 = (function (this$){
391
+ var self__ = this;
392
+ var this$__$1 = this;
393
+ return (self__.value & (4294967295));
394
+ }));
395
+
396
+ (fress.impl.adler32.Adler32.getBasis = (function (){
397
+ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"value","value",1946509744,null)], null);
398
+ }));
399
+
400
+ (fress.impl.adler32.Adler32.cljs$lang$type = true);
401
+
402
+ (fress.impl.adler32.Adler32.cljs$lang$ctorPrSeq = (function (this__5346__auto__){
403
+ return (new cljs.core.List(null,"fress.impl.adler32/Adler32",null,(1),null));
404
+ }));
405
+
406
+ (fress.impl.adler32.Adler32.cljs$lang$ctorPrWriter = (function (this__5346__auto__,writer__5347__auto__){
407
+ return cljs.core._write(writer__5347__auto__,"fress.impl.adler32/Adler32");
408
+ }));
409
+
410
+ /**
411
+ * Positional factory function for fress.impl.adler32/Adler32.
412
+ */
413
+ fress.impl.adler32.__GT_Adler32 = (function fress$impl$adler32$__GT_Adler32(value){
414
+ return (new fress.impl.adler32.Adler32(value,null,null,null));
415
+ });
416
+
417
+ /**
418
+ * Factory function for fress.impl.adler32/Adler32, taking a map of keywords to field values.
419
+ */
420
+ fress.impl.adler32.map__GT_Adler32 = (function fress$impl$adler32$map__GT_Adler32(G__45754){
421
+ var extmap__5342__auto__ = (function (){var G__45827 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(G__45754,new cljs.core.Keyword(null,"value","value",305978217));
422
+ if(cljs.core.record_QMARK_(G__45754)){
423
+ return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__45827);
424
+ } else {
425
+ return G__45827;
426
+ }
427
+ })();
428
+ return (new fress.impl.adler32.Adler32(new cljs.core.Keyword(null,"value","value",305978217).cljs$core$IFn$_invoke$arity$1(G__45754),null,cljs.core.not_empty(extmap__5342__auto__),null));
429
+ });
430
+
431
+ fress.impl.adler32.adler32 = (function fress$impl$adler32$adler32(){
432
+ return (new fress.impl.adler32.Adler32((1),null,null,null));
433
+ });
434
+
435
+ //# sourceMappingURL=fress.impl.adler32.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["fress/impl/adler32.cljs"],"mappings":"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","names":["fress$impl$adler32$Adler32Protocol$update_BANG_$dyn","x__5350__auto__","m__5351__auto__","fress.impl.adler32/update!","goog/typeOf","m__5349__auto__","cljs.core/missing-protocol","var_args","G__45732","js/Error","fress$impl$adler32$Adler32Protocol$reset$dyn","fress.impl.adler32/reset","fress.impl.adler32/Adler32Protocol","this","byte","bytes","offset","length","fress.impl.adler32/adler32-base","this__5300__auto__","k__5301__auto__","this__5302__auto__","k45750","else__5303__auto__","G__45757","cljs.core/Keyword","value","cljs.core.get","__extmap","this__5320__auto__","f__5321__auto__","init__5322__auto__","cljs.core.reduce","ret__5323__auto__","p__45758","vec__45761","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__45749","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","this45751","other45752","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__45808","this__5308__auto__","k__5309__auto__","pred__45809","cljs.core/keyword-identical?","expr__45810","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","cljs.core/PROTOCOL_SENTINEL","fress.impl.adler32/Adler32","this__5346__auto__","cljs.core/List","writer__5347__auto__","cljs.core/-write","G__45754","extmap__5342__auto__","G__45827","cljs.core/record?","fress.impl.adler32/->Adler32","fress.impl.adler32/map->Adler32","s1","s2","cljs.core/mod","bs","off","len","seq__45814","chunk__45815","count__45816","i__45817","temp__5804__auto__","cljs.core/chunked-seq?","c__5525__auto__","cljs.core/chunk-first","cljs.core/chunk-rest","cljs.core/first","cljs.core/next","i","cljs.core.range","fress.impl.adler32/adler32"],"sourcesContent":["(ns fress.impl.adler32)\n\n(defprotocol Adler32Protocol\n (update! [this byte]\n [this bytes offset length])\n (reset [this]))\n\n(def ^:const adler32-base 65521)\n\n(defrecord Adler32 [value]\n IDeref\n (-deref [this] (bit-and value 0xffffffff))\n Adler32Protocol\n (update! [this byte]\n (let [s1 (+ (bit-and value 0xffff) (bit-and byte 0xff))\n s2 (+ (bit-and (bit-shift-right value 16) 0xffff) s1)]\n (set! (.-value this)\n (bit-or (bit-shift-left (mod s2 adler32-base) 16)\n (mod s1 adler32-base)))))\n (update! [this bs off len]\n (doseq [i (range off (+ off len))]\n (update! this (aget bs i))))\n (reset [this] (set! (.-value this) 1)))\n\n(defn adler32 [] (Adler32. 1))\n"],"x_google_ignoreList":[0]}
@@ -0,0 +1,185 @@
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("fress.impl.bigint.js");
26
+
27
+ goog.provide('fress.impl.bigint');
28
+ fress.impl.bigint.bigint_QMARK_ = (function fress$impl$bigint$bigint_QMARK_(n){
29
+ return (BigInt === cljs.core.type(n));
30
+ });
31
+ fress.impl.bigint.bigint = (function fress$impl$bigint$bigint(n){
32
+ return BigInt(n);
33
+ });
34
+ fress.impl.bigint.abs = (function fress$impl$bigint$abs(bn){
35
+ if((bn < (0))){
36
+ return (- bn);
37
+ } else {
38
+ return bn;
39
+ }
40
+ });
41
+ fress.impl.bigint.pow = (function fress$impl$bigint$pow(base,exponent){
42
+ return base ** BigInt(exponent);
43
+ });
44
+ fress.impl.bigint._GT__GT_ = (function fress$impl$bigint$_GT__GT_(a,b){
45
+ return a >> BigInt(b);
46
+ });
47
+ fress.impl.bigint._LT__LT_ = (function fress$impl$bigint$_LT__LT_(a,b){
48
+ return a << BigInt(b);
49
+ });
50
+ /**
51
+ * @return {number} bits not needed to represent this number
52
+ */
53
+ fress.impl.bigint.bit_switch = (function fress$impl$bigint$bit_switch(bn){
54
+ if(cljs.core.truth_(bn === 0n)){
55
+ return (64);
56
+ } else {
57
+ var bn__$1 = bn;
58
+ if((bn__$1 < (0))){
59
+ bn__$1 = BigInt(bn__$1) + BigInt(1);
60
+
61
+ bn__$1 = -bn__$1;
62
+ } else {
63
+ }
64
+
65
+ return ((64) - bn__$1.toString((2)).length);
66
+ }
67
+ });
68
+ fress.impl.bigint.flip_bin_string = (function fress$impl$bigint$flip_bin_string(bin){
69
+ return bin.split("").map((function (i){
70
+ if(("0" === i)){
71
+ return "1";
72
+ } else {
73
+ return "0";
74
+ }
75
+ })).join("");
76
+ });
77
+ /**
78
+ * interprets as signed integer, use js/BigInt directly for unsigned
79
+ */
80
+ fress.impl.bigint.hex__GT_signed_bigint = (function fress$impl$bigint$hex__GT_signed_bigint(hex){
81
+
82
+ var hex__$1 = ((cljs.core.mod(hex.length,(2)))?["0",cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex)].join(''):hex);
83
+ var high_byte = parseInt(hex__$1.slice((0),(2)),(16));
84
+ var bn = BigInt(["0x",cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex__$1)].join(''));
85
+ if(((128) & high_byte)){
86
+ var bin_46863 = ["0b",fress.impl.bigint.flip_bin_string(bn.toString((2)))].join('');
87
+ bn = -( BigInt(bin_46863) + 1n);
88
+ } else {
89
+ }
90
+
91
+
92
+ return bn;
93
+ });
94
+ fress.impl.bigint.bytes__GT_bigint = (function fress$impl$bigint$bytes__GT_bigint(bytes){
95
+ var hex = [];
96
+ var bytes__$1 = Uint8Array.from(bytes);
97
+ bytes__$1.forEach((function (i){
98
+ var h = i.toString((16));
99
+
100
+ if(cljs.core.mod(h.length,(2))){
101
+ h = '0' + h;
102
+ } else {
103
+ }
104
+
105
+
106
+ return hex.push(h);
107
+ }));
108
+
109
+ return fress.impl.bigint.hex__GT_signed_bigint(hex.join(""));
110
+ });
111
+ fress.impl.bigint.bit_not = (function fress$impl$bigint$bit_not(bn){
112
+ var bin = (- bn).toString((2));
113
+ var _ = (function (){
114
+
115
+ while(true){
116
+ if(cljs.core.mod(bin.length,(8))){
117
+ bin = '0' + bin;
118
+
119
+ continue;
120
+ } else {
121
+ }
122
+ break;
123
+ }
124
+
125
+ })()
126
+ ;
127
+ var prefix = ((((("1" === (bin[(0)]))) && ((!(((-1) === bin.slice((1)).indexOf("1")))))))?"11111111":null);
128
+ return (fress.impl.bigint.bigint(["0b",prefix,fress.impl.bigint.flip_bin_string(bin)].join('')) + fress.impl.bigint.bigint((1)));
129
+ });
130
+ fress.impl.bigint.bigint__GT_hex = (function fress$impl$bigint$bigint__GT_hex(bn){
131
+ var bn__$1 = fress.impl.bigint.bigint(bn);
132
+ var pos = (((bn__$1 < (0)))?(function (){
133
+ bn__$1 = fress.impl.bigint.bit_not(bn__$1);
134
+
135
+ return false;
136
+ })()
137
+ :true);
138
+ var hex = bn__$1.toString((16));
139
+
140
+ if(cljs.core.mod(hex.length,(2))){
141
+ hex = '0' + hex;
142
+ } else {
143
+ }
144
+
145
+ if((function (){var and__5000__auto__ = pos;
146
+ if(and__5000__auto__){
147
+ return ((128) & parseInt(hex.slice((0),(2)),(16)));
148
+ } else {
149
+ return and__5000__auto__;
150
+ }
151
+ })()){
152
+ hex = '00' + hex;
153
+ } else {
154
+ }
155
+
156
+
157
+ return hex;
158
+ });
159
+ fress.impl.bigint.bigint__GT_bytes = (function fress$impl$bigint$bigint__GT_bytes(bn){
160
+
161
+ var hex = fress.impl.bigint.bigint__GT_hex(bn);
162
+ var _ = ((cljs.core.mod(hex.length,(2)))?hex = '0' + hex:null);
163
+ var byte_length = (hex.length / (2));
164
+ var bytes = (new Uint8Array(byte_length));
165
+ var i_46871 = (0);
166
+ var j_46872 = (0);
167
+ while(true){
168
+ if((i_46871 < byte_length)){
169
+ (bytes[i_46871] = parseInt(hex.slice(j_46872,(j_46872 + (2))),(16)));
170
+
171
+ var G__46873 = (i_46871 + (1));
172
+ var G__46874 = (j_46872 + (2));
173
+ i_46871 = G__46873;
174
+ j_46872 = G__46874;
175
+ continue;
176
+ } else {
177
+ }
178
+ break;
179
+ }
180
+
181
+
182
+ return bytes;
183
+ });
184
+
185
+ //# sourceMappingURL=fress.impl.bigint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["fress/impl/bigint.cljs"],"mappings":"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","names":["fress.impl.bigint/bigint?","n","js/BigInt","cljs.core/type","fress.impl.bigint/bigint","fress.impl.bigint/abs","bn","fress.impl.bigint/pow","base","exponent","fress.impl.bigint/>>","a","b","fress.impl.bigint/<<","fress.impl.bigint/bit-switch","fress.impl.bigint/flip-bin-string","bin","i","fress.impl.bigint/hex->signed-bigint","hex","cljs.core/mod","high-byte","js/parseInt","fress.impl.bigint/bytes->bigint","bytes","js/Uint8Array.from","h","fress.impl.bigint/bit-not","_","prefix","fress.impl.bigint/bigint->hex","pos","and__5000__auto__","fress.impl.bigint/bigint->bytes","byte-length","js/Uint8Array","j"],"sourcesContent":["(ns fress.impl.bigint\n (:refer-clojure :exclude [bit-not abs]))\n\n(defn bigint?\n [n]\n (identical? js/BigInt (type n)))\n\n(defn bigint\n [n]\n (js/BigInt n))\n\n(defn abs\n [bn]\n (if (< bn 0)\n (- bn)\n bn))\n\n(defn pow\n [base exponent]\n (js* \"~{} ** BigInt(~{})\" base exponent))\n\n(defn >>\n [a b]\n (js* \"~{} >> BigInt(~{})\" a b))\n\n(defn <<\n [a b]\n (js* \"~{} << BigInt(~{})\" a b))\n\n(defn ^number bit-switch\n \"@return {number} bits not needed to represent this number\"\n [bn]\n (if (js* \"~{} === 0n\" bn)\n 64\n (let [bn bn]\n (if (< bn 0)\n (do\n (js* \"~{} = BigInt(~{}) + BigInt(1)\" bn bn)\n (js* \"~{} = -~{}\" bn bn)))\n (- 64 (.-length (.toString bn 2))))))\n\n;;==============================================================================\n\n(defn ^string flip-bin-string [^string bin]\n (.join (.map (.split bin \"\") (fn [i] (if (identical? \"0\" i) \"1\" \"0\"))) \"\"))\n\n(defn hex->signed-bigint\n \"interprets as signed integer, use js/BigInt directly for unsigned\"\n [hex]\n (set! *unchecked-if* true)\n (let [hex (if (mod (alength hex) 2)\n (str \"0\" hex)\n hex)\n high-byte (js/parseInt (.slice hex 0 2) 16)\n bn (js/BigInt (str \"0x\" hex))]\n ;; if negative number, flip bits & add 1 (because js operators are for unsigned only)\n (if (bit-and 0x80 high-byte)\n (let [bin (str \"0b\" (flip-bin-string (.toString bn 2)))]\n (js* \"~{} = -( BigInt(~{}) + 1n)\" bn bin)))\n (set! *unchecked-if* false)\n bn))\n\n(defn bytes->bigint [bytes]\n (let [hex #js[]\n bytes (js/Uint8Array.from bytes)]\n (.forEach bytes\n (fn [i]\n (let [h (.toString i 16)]\n (set! *unchecked-if* true)\n (if (mod (alength h) 2)\n (js* \"~{} = '0' + ~{}\" h h))\n (set! *unchecked-if* false)\n (.push hex h))))\n (hex->signed-bigint (.join hex \"\"))))\n\n(defn- bit-not [bn]\n (let [bin (.toString (- bn) 2)\n _(do\n (set! *unchecked-if* true)\n (while (mod (alength bin) 8)\n (js* \"bin = '0' + bin\"))\n (set! *unchecked-if* false))\n prefix (when (and (identical? \"1\" (aget bin 0))\n (not (== -1 (.indexOf (.slice bin 1) \"1\"))))\n \"11111111\")]\n (unchecked-add (bigint (str \"0b\" prefix (flip-bin-string bin))) (bigint 1))))\n\n(defn bigint->hex\n [bn]\n (let [bn (bigint bn)\n pos (if (< bn 0)\n (do\n (js* \"~{} = ~{}\" bn (bit-not bn))\n false)\n true)\n hex (.toString bn 16)]\n (set! *unchecked-if* true)\n (if (mod (alength hex) 2)\n (js* \"hex = '0' + hex\"))\n (if (and pos (bit-and 0x80 (js/parseInt (.slice hex 0 2) 16)))\n (js* \"hex = '00' + hex\"))\n (set! *unchecked-if* false)\n hex))\n\n(defn bigint->bytes [bn]\n (set! *unchecked-if* true)\n (let [hex (bigint->hex bn)\n _(if (mod (alength hex) 2)\n (js* \"hex = '0' + hex\"))\n byte-length (/ (alength hex) 2)\n bytes (js/Uint8Array. byte-length)]\n (loop [i 0 j 0]\n (when (< i byte-length)\n (aset bytes i (js/parseInt (.slice hex j (+ j 2)) 16))\n (recur (inc i) (unchecked-add j 2))))\n (set! *unchecked-if* false)\n bytes))\n"],"x_google_ignoreList":[0]}