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,502 @@
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("clojure.string.js");
26
+
27
+ goog.provide('clojure.string');
28
+ clojure.string.seq_reverse = (function clojure$string$seq_reverse(coll){
29
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.conj,cljs.core.List.EMPTY,coll);
30
+ });
31
+ clojure.string.re_surrogate_pair = (new RegExp("([\\uD800-\\uDBFF])([\\uDC00-\\uDFFF])","g"));
32
+ /**
33
+ * Returns s with its characters reversed.
34
+ */
35
+ clojure.string.reverse = (function clojure$string$reverse(s){
36
+ return s.replace(clojure.string.re_surrogate_pair,"$2$1").split("").reverse().join("");
37
+ });
38
+ clojure.string.replace_all = (function clojure$string$replace_all(s,re,replacement){
39
+ var r = (new RegExp(re.source,(function (){var G__21565 = "g";
40
+ var G__21565__$1 = (cljs.core.truth_(re.ignoreCase)?[G__21565,"i"].join(''):G__21565);
41
+ var G__21565__$2 = (cljs.core.truth_(re.multiline)?[G__21565__$1,"m"].join(''):G__21565__$1);
42
+ if(cljs.core.truth_(re.unicode)){
43
+ return [G__21565__$2,"u"].join('');
44
+ } else {
45
+ return G__21565__$2;
46
+ }
47
+ })()));
48
+ return s.replace(r,replacement);
49
+ });
50
+ clojure.string.replace_with = (function clojure$string$replace_with(f){
51
+ return (function() {
52
+ var G__21676__delegate = function (args){
53
+ var matches = cljs.core.drop_last.cljs$core$IFn$_invoke$arity$2((2),args);
54
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(matches),(1))){
55
+ var G__21567 = cljs.core.first(matches);
56
+ return (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__21567) : f.call(null, G__21567));
57
+ } else {
58
+ var G__21570 = cljs.core.vec(matches);
59
+ return (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__21570) : f.call(null, G__21570));
60
+ }
61
+ };
62
+ var G__21676 = function (var_args){
63
+ var args = null;
64
+ if (arguments.length > 0) {
65
+ var G__21683__i = 0, G__21683__a = new Array(arguments.length - 0);
66
+ while (G__21683__i < G__21683__a.length) {G__21683__a[G__21683__i] = arguments[G__21683__i + 0]; ++G__21683__i;}
67
+ args = new cljs.core.IndexedSeq(G__21683__a,0,null);
68
+ }
69
+ return G__21676__delegate.call(this,args);};
70
+ G__21676.cljs$lang$maxFixedArity = 0;
71
+ G__21676.cljs$lang$applyTo = (function (arglist__21695){
72
+ var args = cljs.core.seq(arglist__21695);
73
+ return G__21676__delegate(args);
74
+ });
75
+ G__21676.cljs$core$IFn$_invoke$arity$variadic = G__21676__delegate;
76
+ return G__21676;
77
+ })()
78
+ ;
79
+ });
80
+ /**
81
+ * Replaces all instance of match with replacement in s.
82
+ *
83
+ * match/replacement can be:
84
+ *
85
+ * string / string
86
+ * pattern / (string or function of match).
87
+ *
88
+ * See also replace-first.
89
+ *
90
+ * The replacement is literal (i.e. none of its characters are treated
91
+ * specially) for all cases above except pattern / string.
92
+ *
93
+ * For pattern / string, $1, $2, etc. in the replacement string are
94
+ * substituted with the string that matched the corresponding
95
+ * parenthesized group in the pattern.
96
+ *
97
+ * Example:
98
+ * (clojure.string/replace "Almost Pig Latin" #"\b(\w)(\w+)\b" "$2$1ay")
99
+ * -> "lmostAay igPay atinLay"
100
+ */
101
+ clojure.string.replace = (function clojure$string$replace(s,match,replacement){
102
+ if(typeof match === 'string'){
103
+ return s.replace((new RegExp(goog.string.regExpEscape(match),"g")),replacement);
104
+ } else {
105
+ if((match instanceof RegExp)){
106
+ if(typeof replacement === 'string'){
107
+ return clojure.string.replace_all(s,match,replacement);
108
+ } else {
109
+ return clojure.string.replace_all(s,match,clojure.string.replace_with(replacement));
110
+ }
111
+ } else {
112
+ throw ["Invalid match arg: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(match)].join('');
113
+
114
+ }
115
+ }
116
+ });
117
+ /**
118
+ * Replaces the first instance of match with replacement in s.
119
+ *
120
+ * match/replacement can be:
121
+ *
122
+ * string / string
123
+ * pattern / (string or function of match).
124
+ *
125
+ * See also replace.
126
+ *
127
+ * The replacement is literal (i.e. none of its characters are treated
128
+ * specially) for all cases above except pattern / string.
129
+ *
130
+ * For pattern / string, $1, $2, etc. in the replacement string are
131
+ * substituted with the string that matched the corresponding
132
+ * parenthesized group in the pattern.
133
+ *
134
+ * Example:
135
+ * (clojure.string/replace-first "swap first two words"
136
+ * #"(\w+)(\s+)(\w+)" "$3$2$1")
137
+ * -> "first swap two words"
138
+ */
139
+ clojure.string.replace_first = (function clojure$string$replace_first(s,match,replacement){
140
+ return s.replace(match,replacement);
141
+ });
142
+ /**
143
+ * Returns a string of all elements in coll, as returned by (seq coll),
144
+ * separated by an optional separator.
145
+ */
146
+ clojure.string.join = (function clojure$string$join(var_args){
147
+ var G__21580 = arguments.length;
148
+ switch (G__21580) {
149
+ case 1:
150
+ return clojure.string.join.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
151
+
152
+ break;
153
+ case 2:
154
+ return clojure.string.join.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
155
+
156
+ break;
157
+ default:
158
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
159
+
160
+ }
161
+ });
162
+
163
+ (clojure.string.join.cljs$core$IFn$_invoke$arity$1 = (function (coll){
164
+ var sb = (new goog.string.StringBuffer());
165
+ var coll__$1 = cljs.core.seq(coll);
166
+ while(true){
167
+ if((!((coll__$1 == null)))){
168
+ var G__21715 = sb.append(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first(coll__$1)));
169
+ var G__21716 = cljs.core.next(coll__$1);
170
+ sb = G__21715;
171
+ coll__$1 = G__21716;
172
+ continue;
173
+ } else {
174
+ return sb.toString();
175
+ }
176
+ break;
177
+ }
178
+ }));
179
+
180
+ (clojure.string.join.cljs$core$IFn$_invoke$arity$2 = (function (separator,coll){
181
+ var sb = (new goog.string.StringBuffer());
182
+ var coll__$1 = cljs.core.seq(coll);
183
+ while(true){
184
+ if((!((coll__$1 == null)))){
185
+ sb.append(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first(coll__$1)));
186
+
187
+ var coll__$2 = cljs.core.next(coll__$1);
188
+ if((coll__$2 == null)){
189
+ } else {
190
+ sb.append(separator);
191
+ }
192
+
193
+ var G__21729 = sb;
194
+ var G__21730 = coll__$2;
195
+ sb = G__21729;
196
+ coll__$1 = G__21730;
197
+ continue;
198
+ } else {
199
+ return sb.toString();
200
+ }
201
+ break;
202
+ }
203
+ }));
204
+
205
+ (clojure.string.join.cljs$lang$maxFixedArity = 2);
206
+
207
+ /**
208
+ * Converts string to all upper-case.
209
+ */
210
+ clojure.string.upper_case = (function clojure$string$upper_case(s){
211
+ return s.toUpperCase();
212
+ });
213
+ /**
214
+ * Converts string to all lower-case.
215
+ */
216
+ clojure.string.lower_case = (function clojure$string$lower_case(s){
217
+ return s.toLowerCase();
218
+ });
219
+ /**
220
+ * Converts first character of the string to upper-case, all other
221
+ * characters to lower-case.
222
+ */
223
+ clojure.string.capitalize = (function clojure$string$capitalize(s){
224
+ return goog.string.capitalize(s);
225
+ });
226
+ clojure.string.pop_last_while_empty = (function clojure$string$pop_last_while_empty(v){
227
+ var v__$1 = v;
228
+ while(true){
229
+ if(("" === cljs.core.peek(v__$1))){
230
+ var G__21733 = cljs.core.pop(v__$1);
231
+ v__$1 = G__21733;
232
+ continue;
233
+ } else {
234
+ return v__$1;
235
+ }
236
+ break;
237
+ }
238
+ });
239
+ clojure.string.discard_trailing_if_needed = (function clojure$string$discard_trailing_if_needed(limit,v){
240
+ if(((((0) === limit)) && (((1) < cljs.core.count(v))))){
241
+ return clojure.string.pop_last_while_empty(v);
242
+ } else {
243
+ return v;
244
+ }
245
+ });
246
+ clojure.string.split_with_empty_regex = (function clojure$string$split_with_empty_regex(s,limit){
247
+ if((((limit <= (0))) || ((limit >= ((2) + cljs.core.count(s)))))){
248
+ return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.vec(cljs.core.cons("",cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.seq(s)))),"");
249
+ } else {
250
+ var pred__21600 = cljs.core._EQ__EQ_;
251
+ var expr__21601 = limit;
252
+ if(cljs.core.truth_((pred__21600.cljs$core$IFn$_invoke$arity$2 ? pred__21600.cljs$core$IFn$_invoke$arity$2((1),expr__21601) : pred__21600.call(null, (1),expr__21601)))){
253
+ return (new cljs.core.PersistentVector(null,1,(5),cljs.core.PersistentVector.EMPTY_NODE,[s],null));
254
+ } else {
255
+ if(cljs.core.truth_((pred__21600.cljs$core$IFn$_invoke$arity$2 ? pred__21600.cljs$core$IFn$_invoke$arity$2((2),expr__21601) : pred__21600.call(null, (2),expr__21601)))){
256
+ return (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,["",s],null));
257
+ } else {
258
+ var c = (limit - (2));
259
+ return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.vec(cljs.core.cons("",cljs.core.subvec.cljs$core$IFn$_invoke$arity$3(cljs.core.vec(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.seq(s))),(0),c))),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,c));
260
+ }
261
+ }
262
+ }
263
+ });
264
+ /**
265
+ * Splits string on a regular expression. Optional argument limit is
266
+ * the maximum number of parts. Not lazy. Returns vector of the parts.
267
+ * Trailing empty strings are not returned - pass limit of -1 to return all.
268
+ */
269
+ clojure.string.split = (function clojure$string$split(var_args){
270
+ var G__21606 = arguments.length;
271
+ switch (G__21606) {
272
+ case 2:
273
+ return clojure.string.split.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
274
+
275
+ break;
276
+ case 3:
277
+ return clojure.string.split.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
278
+
279
+ break;
280
+ default:
281
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
282
+
283
+ }
284
+ });
285
+
286
+ (clojure.string.split.cljs$core$IFn$_invoke$arity$2 = (function (s,re){
287
+ return clojure.string.split.cljs$core$IFn$_invoke$arity$3(s,re,(0));
288
+ }));
289
+
290
+ (clojure.string.split.cljs$core$IFn$_invoke$arity$3 = (function (s,re,limit){
291
+ return clojure.string.discard_trailing_if_needed(limit,((("/(?:)/" === cljs.core.str.cljs$core$IFn$_invoke$arity$1(re)))?clojure.string.split_with_empty_regex(s,limit):(((limit < (1)))?cljs.core.vec(cljs.core.str.cljs$core$IFn$_invoke$arity$1(s).split(re)):(function (){var s__$1 = s;
292
+ var limit__$1 = limit;
293
+ var parts = cljs.core.PersistentVector.EMPTY;
294
+ while(true){
295
+ if(((1) === limit__$1)){
296
+ return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(parts,s__$1);
297
+ } else {
298
+ var m = cljs.core.re_find(re,s__$1);
299
+ if((!((m == null)))){
300
+ var index = s__$1.indexOf(m);
301
+ var G__21739 = s__$1.substring((index + cljs.core.count(m)));
302
+ var G__21740 = (limit__$1 - (1));
303
+ var G__21741 = cljs.core.conj.cljs$core$IFn$_invoke$arity$2(parts,s__$1.substring((0),index));
304
+ s__$1 = G__21739;
305
+ limit__$1 = G__21740;
306
+ parts = G__21741;
307
+ continue;
308
+ } else {
309
+ return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(parts,s__$1);
310
+ }
311
+ }
312
+ break;
313
+ }
314
+ })())));
315
+ }));
316
+
317
+ (clojure.string.split.cljs$lang$maxFixedArity = 3);
318
+
319
+ /**
320
+ * Splits s on \n or \r\n. Trailing empty lines are not returned.
321
+ */
322
+ clojure.string.split_lines = (function clojure$string$split_lines(s){
323
+ return clojure.string.split.cljs$core$IFn$_invoke$arity$2(s,/\n|\r\n/);
324
+ });
325
+ /**
326
+ * Removes whitespace from both ends of string.
327
+ */
328
+ clojure.string.trim = (function clojure$string$trim(s){
329
+ return goog.string.trim(s);
330
+ });
331
+ /**
332
+ * Removes whitespace from the left side of string.
333
+ */
334
+ clojure.string.triml = (function clojure$string$triml(s){
335
+ return goog.string.trimLeft(s);
336
+ });
337
+ /**
338
+ * Removes whitespace from the right side of string.
339
+ */
340
+ clojure.string.trimr = (function clojure$string$trimr(s){
341
+ return goog.string.trimRight(s);
342
+ });
343
+ /**
344
+ * Removes all trailing newline \n or return \r characters from
345
+ * string. Similar to Perl's chomp.
346
+ */
347
+ clojure.string.trim_newline = (function clojure$string$trim_newline(s){
348
+ var index = s.length;
349
+ while(true){
350
+ if((index === (0))){
351
+ return "";
352
+ } else {
353
+ var ch = cljs.core.get.cljs$core$IFn$_invoke$arity$2(s,(index - (1)));
354
+ if(((("\n" === ch)) || (("\r" === ch)))){
355
+ var G__21744 = (index - (1));
356
+ index = G__21744;
357
+ continue;
358
+ } else {
359
+ return s.substring((0),index);
360
+ }
361
+ }
362
+ break;
363
+ }
364
+ });
365
+ /**
366
+ * True if s is nil, empty, or contains only whitespace.
367
+ */
368
+ clojure.string.blank_QMARK_ = (function clojure$string$blank_QMARK_(s){
369
+ return goog.string.isEmptyOrWhitespace(goog.string.makeSafe(s));
370
+ });
371
+ /**
372
+ * Return a new string, using cmap to escape each character ch
373
+ * from s as follows:
374
+ *
375
+ * If (cmap ch) is nil, append ch to the new string.
376
+ * If (cmap ch) is non-nil, append (str (cmap ch)) instead.
377
+ */
378
+ clojure.string.escape = (function clojure$string$escape(s,cmap){
379
+ var buffer = (new goog.string.StringBuffer());
380
+ var length = s.length;
381
+ var index = (0);
382
+ while(true){
383
+ if((length === index)){
384
+ return buffer.toString();
385
+ } else {
386
+ var ch = s.charAt(index);
387
+ var replacement = (cmap.cljs$core$IFn$_invoke$arity$1 ? cmap.cljs$core$IFn$_invoke$arity$1(ch) : cmap.call(null, ch));
388
+ if((!((replacement == null)))){
389
+ buffer.append(cljs.core.str.cljs$core$IFn$_invoke$arity$1(replacement));
390
+ } else {
391
+ buffer.append(ch);
392
+ }
393
+
394
+ var G__21750 = (index + (1));
395
+ index = G__21750;
396
+ continue;
397
+ }
398
+ break;
399
+ }
400
+ });
401
+ /**
402
+ * Return index of value (string or char) in s, optionally searching
403
+ * forward from from-index or nil if not found.
404
+ */
405
+ clojure.string.index_of = (function clojure$string$index_of(var_args){
406
+ var G__21646 = arguments.length;
407
+ switch (G__21646) {
408
+ case 2:
409
+ return clojure.string.index_of.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
410
+
411
+ break;
412
+ case 3:
413
+ return clojure.string.index_of.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
414
+
415
+ break;
416
+ default:
417
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
418
+
419
+ }
420
+ });
421
+
422
+ (clojure.string.index_of.cljs$core$IFn$_invoke$arity$2 = (function (s,value){
423
+ var result = s.indexOf(value);
424
+ if((result < (0))){
425
+ return null;
426
+ } else {
427
+ return result;
428
+ }
429
+ }));
430
+
431
+ (clojure.string.index_of.cljs$core$IFn$_invoke$arity$3 = (function (s,value,from_index){
432
+ var result = s.indexOf(value,from_index);
433
+ if((result < (0))){
434
+ return null;
435
+ } else {
436
+ return result;
437
+ }
438
+ }));
439
+
440
+ (clojure.string.index_of.cljs$lang$maxFixedArity = 3);
441
+
442
+ /**
443
+ * Return last index of value (string or char) in s, optionally
444
+ * searching backward from from-index or nil if not found.
445
+ */
446
+ clojure.string.last_index_of = (function clojure$string$last_index_of(var_args){
447
+ var G__21664 = arguments.length;
448
+ switch (G__21664) {
449
+ case 2:
450
+ return clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
451
+
452
+ break;
453
+ case 3:
454
+ return clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
455
+
456
+ break;
457
+ default:
458
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
459
+
460
+ }
461
+ });
462
+
463
+ (clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$2 = (function (s,value){
464
+ var result = s.lastIndexOf(value);
465
+ if((result < (0))){
466
+ return null;
467
+ } else {
468
+ return result;
469
+ }
470
+ }));
471
+
472
+ (clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$3 = (function (s,value,from_index){
473
+ var result = s.lastIndexOf(value,from_index);
474
+ if((result < (0))){
475
+ return null;
476
+ } else {
477
+ return result;
478
+ }
479
+ }));
480
+
481
+ (clojure.string.last_index_of.cljs$lang$maxFixedArity = 3);
482
+
483
+ /**
484
+ * True if s starts with substr.
485
+ */
486
+ clojure.string.starts_with_QMARK_ = (function clojure$string$starts_with_QMARK_(s,substr){
487
+ return goog.string.startsWith(s,substr);
488
+ });
489
+ /**
490
+ * True if s ends with substr.
491
+ */
492
+ clojure.string.ends_with_QMARK_ = (function clojure$string$ends_with_QMARK_(s,substr){
493
+ return goog.string.endsWith(s,substr);
494
+ });
495
+ /**
496
+ * True if s includes substr.
497
+ */
498
+ clojure.string.includes_QMARK_ = (function clojure$string$includes_QMARK_(s,substr){
499
+ return goog.string.contains(s,substr);
500
+ });
501
+
502
+ //# sourceMappingURL=clojure.string.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["clojure/string.cljs"],"mappings":"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","names":["clojure.string/seq-reverse","coll","cljs.core.reduce","cljs.core/conj","clojure.string/re-surrogate-pair","js/RegExp","clojure.string/reverse","s","clojure.string/replace-all","re","replacement","r","G__21565","clojure.string/replace-with","f","args","matches","cljs.core.drop_last","cljs.core._EQ_","cljs.core/count","G__21567","cljs.core/first","G__21570","cljs.core/vec","clojure.string/replace","match","goog.string/regExpEscape","clojure.string/replace-first","var_args","G__21580","clojure.string/join","js/Error","sb","js/goog.string.StringBuffer","cljs.core/seq","cljs.core/next","separator","clojure.string/upper-case","clojure.string/lower-case","clojure.string/capitalize","goog.string/capitalize","clojure.string/pop-last-while-empty","v","cljs.core/peek","cljs.core/pop","clojure.string/discard-trailing-if-needed","limit","clojure.string/split-with-empty-regex","cljs.core.conj","cljs.core/cons","cljs.core.map","cljs.core/str","pred__21600","expr__21601","cljs.core/==","cljs.core/PersistentVector","c","cljs.core.subvec","cljs.core.subs","G__21606","clojure.string/split","clojure.string.split","parts","m","cljs.core/re-find","index","clojure.string/split-lines","clojure.string/trim","goog.string/trim","clojure.string/triml","goog.string/trimLeft","clojure.string/trimr","goog.string/trimRight","clojure.string/trim-newline","ch","cljs.core.get","clojure.string/blank?","goog.string/isEmptyOrWhitespace","goog.string/makeSafe","clojure.string/escape","cmap","buffer","length","G__21646","clojure.string/index-of","value","result","from-index","G__21664","clojure.string/last-index-of","clojure.string/starts-with?","substr","goog.string/startsWith","clojure.string/ends-with?","goog.string/endsWith","clojure.string/includes?","goog.string/contains"],"sourcesContent":["; Copyright (c) Rich Hickey. All rights reserved.\n; The use and distribution terms for this software are covered by the\n; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)\n; which can be found in the file epl-v10.html at the root of this distribution.\n; By using this software in any fashion, you are agreeing to be bound by\n; the terms of this license.\n; You must not remove this notice, or any other, from this software.\n\n(ns clojure.string\n (:refer-clojure :exclude [replace reverse])\n (:require [goog.string :as gstring])\n (:import [goog.string StringBuffer]))\n\n(defn- seq-reverse\n [coll]\n (reduce conj () coll))\n\n(def ^:private re-surrogate-pair\n (js/RegExp. \"([\\\\uD800-\\\\uDBFF])([\\\\uDC00-\\\\uDFFF])\" \"g\"))\n\n(defn ^string reverse\n \"Returns s with its characters reversed.\"\n [s]\n (-> (.replace s re-surrogate-pair \"$2$1\")\n (.. (split \"\") (reverse) (join \"\"))))\n\n(defn- replace-all\n [s re replacement]\n (let [r (js/RegExp. (.-source re)\n (cond-> \"g\"\n (.-ignoreCase re) (str \"i\")\n (.-multiline re) (str \"m\")\n (.-unicode re) (str \"u\")))]\n (.replace s r replacement)))\n\n(defn- replace-with\n [f]\n (fn [& args]\n (let [matches (drop-last 2 args)]\n (if (= (count matches) 1)\n (f (first matches))\n (f (vec matches))))))\n\n(defn ^string replace\n \"Replaces all instance of match with replacement in s.\n\n match/replacement can be:\n\n string / string\n pattern / (string or function of match).\n\n See also replace-first.\n\n The replacement is literal (i.e. none of its characters are treated\n specially) for all cases above except pattern / string.\n\n For pattern / string, $1, $2, etc. in the replacement string are\n substituted with the string that matched the corresponding\n parenthesized group in the pattern.\n\n Example:\n (clojure.string/replace \\\"Almost Pig Latin\\\" #\\\"\\\\b(\\\\w)(\\\\w+)\\\\b\\\" \\\"$2$1ay\\\")\n -> \\\"lmostAay igPay atinLay\\\"\"\n [s match replacement]\n (cond\n (string? match)\n (.replace s (js/RegExp. (gstring/regExpEscape match) \"g\") replacement)\n\n (instance? js/RegExp match)\n (if (string? replacement)\n (replace-all s match replacement)\n (replace-all s match (replace-with replacement)))\n\n :else (throw (str \"Invalid match arg: \" match))))\n\n(defn ^string replace-first\n \"Replaces the first instance of match with replacement in s.\n\n match/replacement can be:\n\n string / string\n pattern / (string or function of match).\n\n See also replace.\n\n The replacement is literal (i.e. none of its characters are treated\n specially) for all cases above except pattern / string.\n\n For pattern / string, $1, $2, etc. in the replacement string are\n substituted with the string that matched the corresponding\n parenthesized group in the pattern.\n\n Example:\n (clojure.string/replace-first \\\"swap first two words\\\"\n #\\\"(\\\\w+)(\\\\s+)(\\\\w+)\\\" \\\"$3$2$1\\\")\n -> \\\"first swap two words\\\"\"\n [s match replacement]\n (.replace s match replacement))\n\n(defn join\n \"Returns a string of all elements in coll, as returned by (seq coll),\n separated by an optional separator.\"\n ([coll]\n (loop [sb (StringBuffer.) coll (seq coll)]\n (if-not (nil? coll)\n (recur (. sb (append (str (first coll)))) (next coll))\n ^string (.toString sb))))\n ([separator coll]\n (loop [sb (StringBuffer.) coll (seq coll)]\n (if-not (nil? coll)\n (do\n (. sb (append (str (first coll))))\n (let [coll (next coll)]\n (when-not (nil? coll)\n (. sb (append separator)))\n (recur sb coll)))\n ^string (.toString sb)))))\n\n(defn ^string upper-case\n \"Converts string to all upper-case.\"\n [s]\n (.toUpperCase s))\n\n(defn ^string lower-case\n \"Converts string to all lower-case.\"\n [s]\n (.toLowerCase s))\n\n(defn ^string capitalize\n \"Converts first character of the string to upper-case, all other\n characters to lower-case.\"\n [s]\n (gstring/capitalize s))\n\n;; The JavaScript split function takes a limit argument but the return\n;; value is not the same as the Java split function.\n;;\n;; Java: (.split \"a-b-c\" #\"-\" 2) => [\"a\" \"b-c\"]\n;; JavaScript: (.split \"a-b-c\" #\"-\" 2) => [\"a\" \"b\"]\n;;\n;; For consistency, the three arg version has been implemented to\n;; mimic Java's behavior.\n\n(defn- pop-last-while-empty\n [v]\n (loop [v v]\n (if (identical? \"\" (peek v))\n (recur (pop v))\n v)))\n\n(defn- discard-trailing-if-needed\n [limit v]\n (if (and (== 0 limit) (< 1 (count v)))\n (pop-last-while-empty v)\n v))\n\n(defn- split-with-empty-regex\n [s limit]\n (if (or (<= limit 0) (>= limit (+ 2 (count s))))\n (conj (vec (cons \"\" (map str (seq s)))) \"\")\n (condp == limit\n 1 (vector s)\n 2 (vector \"\" s)\n (let [c (- limit 2)]\n (conj (vec (cons \"\" (subvec (vec (map str (seq s))) 0 c))) (subs s c))))))\n\n(defn split\n \"Splits string on a regular expression. Optional argument limit is\n the maximum number of parts. Not lazy. Returns vector of the parts.\n Trailing empty strings are not returned - pass limit of -1 to return all.\"\n ([s re]\n (split s re 0))\n ([s re limit]\n (discard-trailing-if-needed limit\n (if (identical? \"/(?:)/\" (str re))\n (split-with-empty-regex s limit)\n (if (< limit 1)\n (vec (.split (str s) re))\n (loop [s s\n limit limit\n parts []]\n (if (== 1 limit)\n (conj parts s)\n (let [m (re-find re s)]\n (if-not (nil? m)\n (let [index (.indexOf s m)]\n (recur (.substring s (+ index (count m)))\n (dec limit)\n (conj parts (.substring s 0 index))))\n (conj parts s))))))))))\n\n(defn split-lines\n \"Splits s on \\\\n or \\\\r\\\\n. Trailing empty lines are not returned.\"\n [s]\n (split s #\"\\n|\\r\\n\"))\n\n(defn ^string trim\n \"Removes whitespace from both ends of string.\"\n [s]\n (gstring/trim s))\n\n(defn ^string triml\n \"Removes whitespace from the left side of string.\"\n [s]\n (gstring/trimLeft s))\n\n(defn ^string trimr\n \"Removes whitespace from the right side of string.\"\n [s]\n (gstring/trimRight s))\n\n(defn ^string trim-newline\n \"Removes all trailing newline \\\\n or return \\\\r characters from\n string. Similar to Perl's chomp.\"\n [s]\n (loop [index (.-length s)]\n (if (zero? index)\n \"\"\n (let [ch (get s (dec index))]\n (if (or (identical? \\newline ch)\n (identical? \\return ch))\n (recur (dec index))\n (.substring s 0 index))))))\n\n(defn ^boolean blank?\n \"True if s is nil, empty, or contains only whitespace.\"\n [s]\n (gstring/isEmptyOrWhitespace (gstring/makeSafe s)))\n\n(defn ^string escape\n \"Return a new string, using cmap to escape each character ch\n from s as follows:\n\n If (cmap ch) is nil, append ch to the new string.\n If (cmap ch) is non-nil, append (str (cmap ch)) instead.\"\n [s cmap]\n (let [buffer (StringBuffer.)\n length (.-length s)]\n (loop [index 0]\n (if (== length index)\n (. buffer (toString))\n (let [ch (.charAt s index)\n replacement (cmap ch)]\n (if-not (nil? replacement)\n (.append buffer (str replacement))\n (.append buffer ch))\n (recur (inc index)))))))\n\n(defn index-of\n \"Return index of value (string or char) in s, optionally searching\n forward from from-index or nil if not found.\"\n ([s value]\n (let [result (.indexOf s value)]\n (if (neg? result)\n nil\n result)))\n ([s value from-index]\n (let [result (.indexOf s value from-index)]\n (if (neg? result)\n nil\n result))))\n\n(defn last-index-of\n \"Return last index of value (string or char) in s, optionally\n searching backward from from-index or nil if not found.\"\n ([s value]\n (let [result (.lastIndexOf s value)]\n (if (neg? result)\n nil\n result)))\n ([s value from-index]\n (let [result (.lastIndexOf s value from-index)]\n (if (neg? result)\n nil\n result))))\n\n(defn ^boolean starts-with?\n \"True if s starts with substr.\"\n [s substr]\n (gstring/startsWith s substr))\n\n(defn ^boolean ends-with?\n \"True if s ends with substr.\"\n [s substr]\n (gstring/endsWith s substr))\n\n(defn ^boolean includes?\n \"True if s includes substr.\"\n [s substr]\n (gstring/contains s substr))\n"],"x_google_ignoreList":[0]}
@@ -0,0 +1,156 @@
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("clojure.walk.js");
26
+
27
+ goog.provide('clojure.walk');
28
+ /**
29
+ * Traverses form, an arbitrary data structure. inner and outer are
30
+ * functions. Applies inner to each element of form, building up a
31
+ * data structure of the same type, then applies outer to the result.
32
+ * Recognizes all Clojure data structures. Consumes seqs as with doall.
33
+ */
34
+ clojure.walk.walk = (function clojure$walk$walk(inner,outer,form){
35
+ if(cljs.core.list_QMARK_(form)){
36
+ var G__21552 = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.list,cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));
37
+ return (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__21552) : outer.call(null, G__21552));
38
+ } else {
39
+ if(cljs.core.map_entry_QMARK_(form)){
40
+ var G__21554 = (new cljs.core.MapEntry((function (){var G__21558 = cljs.core.key(form);
41
+ return (inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(G__21558) : inner.call(null, G__21558));
42
+ })(),(function (){var G__21560 = cljs.core.val(form);
43
+ return (inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(G__21560) : inner.call(null, G__21560));
44
+ })(),null));
45
+ return (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__21554) : outer.call(null, G__21554));
46
+ } else {
47
+ if(cljs.core.seq_QMARK_(form)){
48
+ var G__21561 = cljs.core.doall.cljs$core$IFn$_invoke$arity$1(cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));
49
+ return (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__21561) : outer.call(null, G__21561));
50
+ } else {
51
+ if(cljs.core.record_QMARK_(form)){
52
+ var G__21562 = cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (r,x){
53
+ return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(r,(inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(x) : inner.call(null, x)));
54
+ }),form,form);
55
+ return (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__21562) : outer.call(null, G__21562));
56
+ } else {
57
+ if(cljs.core.coll_QMARK_(form)){
58
+ var G__21563 = cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.empty(form),cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));
59
+ return (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__21563) : outer.call(null, G__21563));
60
+ } else {
61
+ return (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(form) : outer.call(null, form));
62
+
63
+ }
64
+ }
65
+ }
66
+ }
67
+ }
68
+ });
69
+ /**
70
+ * Performs a depth-first, post-order traversal of form. Calls f on
71
+ * each sub-form, uses f's return value in place of the original.
72
+ * Recognizes all Clojure data structures. Consumes seqs as with doall.
73
+ */
74
+ clojure.walk.postwalk = (function clojure$walk$postwalk(f,form){
75
+ return clojure.walk.walk(cljs.core.partial.cljs$core$IFn$_invoke$arity$2(clojure.walk.postwalk,f),f,form);
76
+ });
77
+ /**
78
+ * Like postwalk, but does pre-order traversal.
79
+ */
80
+ clojure.walk.prewalk = (function clojure$walk$prewalk(f,form){
81
+ return clojure.walk.walk(cljs.core.partial.cljs$core$IFn$_invoke$arity$2(clojure.walk.prewalk,f),cljs.core.identity,(f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(form) : f.call(null, form)));
82
+ });
83
+ /**
84
+ * Recursively transforms all map keys from strings to keywords.
85
+ */
86
+ clojure.walk.keywordize_keys = (function clojure$walk$keywordize_keys(m){
87
+ var f = (function (p__21569){
88
+ var vec__21572 = p__21569;
89
+ var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__21572,(0),null);
90
+ var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__21572,(1),null);
91
+ if(typeof k === 'string'){
92
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(k),v], null);
93
+ } else {
94
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v], null);
95
+ }
96
+ });
97
+ return clojure.walk.postwalk((function (x){
98
+ if(cljs.core.map_QMARK_(x)){
99
+ return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$2(f,x));
100
+ } else {
101
+ return x;
102
+ }
103
+ }),m);
104
+ });
105
+ /**
106
+ * Recursively transforms all map keys from keywords to strings.
107
+ */
108
+ clojure.walk.stringify_keys = (function clojure$walk$stringify_keys(m){
109
+ var f = (function (p__21581){
110
+ var vec__21582 = p__21581;
111
+ var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__21582,(0),null);
112
+ var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__21582,(1),null);
113
+ if((k instanceof cljs.core.Keyword)){
114
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.name(k),v], null);
115
+ } else {
116
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v], null);
117
+ }
118
+ });
119
+ return clojure.walk.postwalk((function (x){
120
+ if(cljs.core.map_QMARK_(x)){
121
+ return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$2(f,x));
122
+ } else {
123
+ return x;
124
+ }
125
+ }),m);
126
+ });
127
+ /**
128
+ * Recursively transforms form by replacing keys in smap with their
129
+ * values. Like clojure/replace but works on any data structure. Does
130
+ * replacement at the root of the tree first.
131
+ */
132
+ clojure.walk.prewalk_replace = (function clojure$walk$prewalk_replace(smap,form){
133
+ return clojure.walk.prewalk((function (x){
134
+ if(cljs.core.contains_QMARK_(smap,x)){
135
+ return (smap.cljs$core$IFn$_invoke$arity$1 ? smap.cljs$core$IFn$_invoke$arity$1(x) : smap.call(null, x));
136
+ } else {
137
+ return x;
138
+ }
139
+ }),form);
140
+ });
141
+ /**
142
+ * Recursively transforms form by replacing keys in smap with their
143
+ * values. Like clojure/replace but works on any data structure. Does
144
+ * replacement at the leaves of the tree first.
145
+ */
146
+ clojure.walk.postwalk_replace = (function clojure$walk$postwalk_replace(smap,form){
147
+ return clojure.walk.postwalk((function (x){
148
+ if(cljs.core.contains_QMARK_(smap,x)){
149
+ return (smap.cljs$core$IFn$_invoke$arity$1 ? smap.cljs$core$IFn$_invoke$arity$1(x) : smap.call(null, x));
150
+ } else {
151
+ return x;
152
+ }
153
+ }),form);
154
+ });
155
+
156
+ //# sourceMappingURL=clojure.walk.js.map