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,1278 @@
1
+ var $CLJS = require("./cljs_env");
2
+ var $jscomp = $CLJS.$jscomp;
3
+ var COMPILED = false;
4
+ require("./cljs.core.js");
5
+ require("./cljs.core.async.js");
6
+ require("./cljs.core.async.impl.protocols.js");
7
+ require("./cljs_node_io.file.js");
8
+ require("./cljs_node_io.fs.js");
9
+ var environ=$CLJS.environ || ($CLJS.environ = {});
10
+ var fress=$CLJS.fress || ($CLJS.fress = {});
11
+ var datahike=$CLJS.datahike || ($CLJS.datahike = {});
12
+ var clojure=$CLJS.clojure || ($CLJS.clojure = {});
13
+ var hasch=$CLJS.hasch || ($CLJS.hasch = {});
14
+ var tailrecursion=$CLJS.tailrecursion || ($CLJS.tailrecursion = {});
15
+ var superv=$CLJS.superv || ($CLJS.superv = {});
16
+ var geheimnis=$CLJS.geheimnis || ($CLJS.geheimnis = {});
17
+ var is=$CLJS.is || ($CLJS.is = {});
18
+ var cljs=$CLJS.cljs || ($CLJS.cljs = {});
19
+ var cljs_node_io=$CLJS.cljs_node_io || ($CLJS.cljs_node_io = {});
20
+ var goog=$CLJS.goog || ($CLJS.goog = {});
21
+ var konserve=$CLJS.konserve || ($CLJS.konserve = {});
22
+ var datalog=$CLJS.datalog || ($CLJS.datalog = {});
23
+ var spec_tools=$CLJS.spec_tools || ($CLJS.spec_tools = {});
24
+ var taoensso=$CLJS.taoensso || ($CLJS.taoensso = {});
25
+ var incognito=$CLJS.incognito || ($CLJS.incognito = {});
26
+ var medley=$CLJS.medley || ($CLJS.medley = {});
27
+ var me=$CLJS.me || ($CLJS.me = {});
28
+
29
+ $CLJS.SHADOW_ENV.setLoaded("cljs_node_io.core.js");
30
+
31
+ goog.provide('cljs_node_io.core');
32
+ cljs_node_io.core.fs = require("fs");
33
+ cljs_node_io.core.path = require("path");
34
+ cljs_node_io.core.stream = require("stream");
35
+ /**
36
+ * sugar over Buffer.isBuffer
37
+ * @param {*} b
38
+ * @return {!boolean}
39
+ */
40
+ cljs_node_io.core.Buffer_QMARK_ = (function cljs_node_io$core$Buffer_QMARK_(b){
41
+ return Buffer.isBuffer(b);
42
+ });
43
+ cljs_node_io.core.buffer_QMARK_ = cljs_node_io.core.Buffer_QMARK_;
44
+ (Buffer.prototype.cljs$core$IEquiv$ = cljs.core.PROTOCOL_SENTINEL);
45
+
46
+ (Buffer.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this$,o){
47
+ var this$__$1 = this;
48
+ if((this$__$1 === o)){
49
+ return true;
50
+ } else {
51
+ if(Buffer.isBuffer(o)){
52
+ return this$__$1.equals(o);
53
+ } else {
54
+ return false;
55
+ }
56
+ }
57
+ }));
58
+ /**
59
+ * This is needed to mock the java.io.File constructor.
60
+ * The java File constructor is polymorphic and accepts one or two args:
61
+ * (Uri), (pathstring), (parentstring, childstring), (File, childstring)
62
+ * @return {!string}
63
+ */
64
+ cljs_node_io.core.filepath = (function cljs_node_io$core$filepath(var_args){
65
+ var G__127867 = arguments.length;
66
+ switch (G__127867) {
67
+ case 1:
68
+ return cljs_node_io.core.filepath.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
69
+
70
+ break;
71
+ case 2:
72
+ return cljs_node_io.core.filepath.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
73
+
74
+ break;
75
+ default:
76
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
77
+
78
+ }
79
+ });
80
+
81
+ (cljs_node_io.core.filepath.cljs$core$IFn$_invoke$arity$1 = (function (a){
82
+ return cljs_node_io.core.filepath.cljs$core$IFn$_invoke$arity$2(a,null);
83
+ }));
84
+
85
+ (cljs_node_io.core.filepath.cljs$core$IFn$_invoke$arity$2 = (function (a,b){
86
+ var pred__127870 = cljs.core._EQ_;
87
+ var expr__127871 = new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.type(a),cljs.core.type(b)], null);
88
+ if(cljs.core.truth_((function (){var G__127873 = new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [goog.Uri,null], null);
89
+ var G__127874 = expr__127871;
90
+ return (pred__127870.cljs$core$IFn$_invoke$arity$2 ? pred__127870.cljs$core$IFn$_invoke$arity$2(G__127873,G__127874) : pred__127870.call(null, G__127873,G__127874));
91
+ })())){
92
+ return a.getPath();
93
+ } else {
94
+ if(cljs.core.truth_((function (){var G__127875 = new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [String,null], null);
95
+ var G__127876 = expr__127871;
96
+ return (pred__127870.cljs$core$IFn$_invoke$arity$2 ? pred__127870.cljs$core$IFn$_invoke$arity$2(G__127875,G__127876) : pred__127870.call(null, G__127875,G__127876));
97
+ })())){
98
+ return a;
99
+ } else {
100
+ if(cljs.core.truth_((function (){var G__127877 = new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [String,String], null);
101
+ var G__127878 = expr__127871;
102
+ return (pred__127870.cljs$core$IFn$_invoke$arity$2 ? pred__127870.cljs$core$IFn$_invoke$arity$2(G__127877,G__127878) : pred__127870.call(null, G__127877,G__127878));
103
+ })())){
104
+ return cljs_node_io.core.path.join(a,b);
105
+ } else {
106
+ if(cljs.core.truth_((function (){var G__127879 = new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs_node_io.file.File,String], null);
107
+ var G__127880 = expr__127871;
108
+ return (pred__127870.cljs$core$IFn$_invoke$arity$2 ? pred__127870.cljs$core$IFn$_invoke$arity$2(G__127879,G__127880) : pred__127870.call(null, G__127879,G__127880));
109
+ })())){
110
+ return cljs_node_io.core.path.join(a.getPath(),b);
111
+ } else {
112
+ if(cljs.core.truth_((pred__127870.cljs$core$IFn$_invoke$arity$2 ? pred__127870.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"else","else",-1508377146),expr__127871) : pred__127870.call(null, new cljs.core.Keyword(null,"else","else",-1508377146),expr__127871)))){
113
+ throw (new TypeError(["Unrecognized path configuration passed to File constructor.","\nYou passed ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([a], 0))," and ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([b], 0)),"\nYou must pass a [string], [uri], [string string], or [file string]."].join('')));
114
+ } else {
115
+ throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__127871)].join('')));
116
+ }
117
+ }
118
+ }
119
+ }
120
+ }
121
+ }));
122
+
123
+ (cljs_node_io.core.filepath.cljs$lang$maxFixedArity = 2);
124
+
125
+
126
+ /**
127
+ * @interface
128
+ */
129
+ cljs_node_io.core.Coercions = function(){};
130
+
131
+ var cljs_node_io$core$Coercions$as_file$dyn_128041 = (function (x){
132
+ var x__5350__auto__ = (((x == null))?null:x);
133
+ var m__5351__auto__ = (cljs_node_io.core.as_file[goog.typeOf(x__5350__auto__)]);
134
+ if((!((m__5351__auto__ == null)))){
135
+ return (m__5351__auto__.cljs$core$IFn$_invoke$arity$1 ? m__5351__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__5351__auto__.call(null, x));
136
+ } else {
137
+ var m__5349__auto__ = (cljs_node_io.core.as_file["_"]);
138
+ if((!((m__5349__auto__ == null)))){
139
+ return (m__5349__auto__.cljs$core$IFn$_invoke$arity$1 ? m__5349__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__5349__auto__.call(null, x));
140
+ } else {
141
+ throw cljs.core.missing_protocol("Coercions.as-file",x);
142
+ }
143
+ }
144
+ });
145
+ /**
146
+ * Coerce argument to a file.
147
+ */
148
+ cljs_node_io.core.as_file = (function cljs_node_io$core$as_file(x){
149
+ if((((!((x == null)))) && ((!((x.cljs_node_io$core$Coercions$as_file$arity$1 == null)))))){
150
+ return x.cljs_node_io$core$Coercions$as_file$arity$1(x);
151
+ } else {
152
+ return cljs_node_io$core$Coercions$as_file$dyn_128041(x);
153
+ }
154
+ });
155
+
156
+ var cljs_node_io$core$Coercions$as_url$dyn_128042 = (function (x){
157
+ var x__5350__auto__ = (((x == null))?null:x);
158
+ var m__5351__auto__ = (cljs_node_io.core.as_url[goog.typeOf(x__5350__auto__)]);
159
+ if((!((m__5351__auto__ == null)))){
160
+ return (m__5351__auto__.cljs$core$IFn$_invoke$arity$1 ? m__5351__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__5351__auto__.call(null, x));
161
+ } else {
162
+ var m__5349__auto__ = (cljs_node_io.core.as_url["_"]);
163
+ if((!((m__5349__auto__ == null)))){
164
+ return (m__5349__auto__.cljs$core$IFn$_invoke$arity$1 ? m__5349__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__5349__auto__.call(null, x));
165
+ } else {
166
+ throw cljs.core.missing_protocol("Coercions.as-url",x);
167
+ }
168
+ }
169
+ });
170
+ /**
171
+ * Coerce argument to a URL.
172
+ */
173
+ cljs_node_io.core.as_url = (function cljs_node_io$core$as_url(x){
174
+ if((((!((x == null)))) && ((!((x.cljs_node_io$core$Coercions$as_url$arity$1 == null)))))){
175
+ return x.cljs_node_io$core$Coercions$as_url$arity$1(x);
176
+ } else {
177
+ return cljs_node_io$core$Coercions$as_url$dyn_128042(x);
178
+ }
179
+ });
180
+
181
+ (cljs_node_io.core.Coercions["null"] = true);
182
+
183
+ (cljs_node_io.core.as_file["null"] = (function (_){
184
+ return null;
185
+ }));
186
+
187
+ (cljs_node_io.core.as_url["null"] = (function (_){
188
+ return null;
189
+ }));
190
+
191
+ (cljs_node_io.core.Coercions["string"] = true);
192
+
193
+ (cljs_node_io.core.as_file["string"] = (function (s){
194
+ return (new cljs_node_io.file.File(cljs_node_io.core.filepath.cljs$core$IFn$_invoke$arity$1(s)));
195
+ }));
196
+
197
+ (cljs_node_io.core.as_url["string"] = (function (s){
198
+ return (new goog.Uri(s)).getPath();
199
+ }));
200
+
201
+ (cljs_node_io.file.File.prototype.cljs_node_io$core$Coercions$ = cljs.core.PROTOCOL_SENTINEL);
202
+
203
+ (cljs_node_io.file.File.prototype.cljs_node_io$core$Coercions$as_file$arity$1 = (function (f){
204
+ var f__$1 = this;
205
+ return f__$1;
206
+ }));
207
+
208
+ (cljs_node_io.file.File.prototype.cljs_node_io$core$Coercions$as_url$arity$1 = (function (f){
209
+ var f__$1 = this;
210
+ return f__$1.to_url();
211
+ }));
212
+
213
+ (goog.Uri.prototype.cljs_node_io$core$Coercions$ = cljs.core.PROTOCOL_SENTINEL);
214
+
215
+ (goog.Uri.prototype.cljs_node_io$core$Coercions$as_url$arity$1 = (function (u){
216
+ var u__$1 = this;
217
+ return u__$1.getPath();
218
+ }));
219
+
220
+ (goog.Uri.prototype.cljs_node_io$core$Coercions$as_file$arity$1 = (function (u){
221
+ var u__$1 = this;
222
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2("file",u__$1.getScheme())){
223
+ return cljs_node_io.core.as_file(u__$1.getPath());
224
+ } else {
225
+ throw (new Error(["Uri's must have file protocol: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(u__$1)].join('')));
226
+ }
227
+ }));
228
+
229
+ /**
230
+ * Attempts to create a native node stream.
231
+ * @interface
232
+ */
233
+ cljs_node_io.core.IOFactory = function(){};
234
+
235
+ var cljs_node_io$core$IOFactory$make_reader$dyn_128043 = (function (x,opts){
236
+ var x__5350__auto__ = (((x == null))?null:x);
237
+ var m__5351__auto__ = (cljs_node_io.core.make_reader[goog.typeOf(x__5350__auto__)]);
238
+ if((!((m__5351__auto__ == null)))){
239
+ return (m__5351__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5351__auto__.cljs$core$IFn$_invoke$arity$2(x,opts) : m__5351__auto__.call(null, x,opts));
240
+ } else {
241
+ var m__5349__auto__ = (cljs_node_io.core.make_reader["_"]);
242
+ if((!((m__5349__auto__ == null)))){
243
+ return (m__5349__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5349__auto__.cljs$core$IFn$_invoke$arity$2(x,opts) : m__5349__auto__.call(null, x,opts));
244
+ } else {
245
+ throw cljs.core.missing_protocol("IOFactory.make-reader",x);
246
+ }
247
+ }
248
+ });
249
+ /**
250
+ * create stream.Readable
251
+ */
252
+ cljs_node_io.core.make_reader = (function cljs_node_io$core$make_reader(x,opts){
253
+ if((((!((x == null)))) && ((!((x.cljs_node_io$core$IOFactory$make_reader$arity$2 == null)))))){
254
+ return x.cljs_node_io$core$IOFactory$make_reader$arity$2(x,opts);
255
+ } else {
256
+ return cljs_node_io$core$IOFactory$make_reader$dyn_128043(x,opts);
257
+ }
258
+ });
259
+
260
+ var cljs_node_io$core$IOFactory$make_writer$dyn_128044 = (function (x,opts){
261
+ var x__5350__auto__ = (((x == null))?null:x);
262
+ var m__5351__auto__ = (cljs_node_io.core.make_writer[goog.typeOf(x__5350__auto__)]);
263
+ if((!((m__5351__auto__ == null)))){
264
+ return (m__5351__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5351__auto__.cljs$core$IFn$_invoke$arity$2(x,opts) : m__5351__auto__.call(null, x,opts));
265
+ } else {
266
+ var m__5349__auto__ = (cljs_node_io.core.make_writer["_"]);
267
+ if((!((m__5349__auto__ == null)))){
268
+ return (m__5349__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5349__auto__.cljs$core$IFn$_invoke$arity$2(x,opts) : m__5349__auto__.call(null, x,opts));
269
+ } else {
270
+ throw cljs.core.missing_protocol("IOFactory.make-writer",x);
271
+ }
272
+ }
273
+ });
274
+ /**
275
+ * create stream.Writable
276
+ */
277
+ cljs_node_io.core.make_writer = (function cljs_node_io$core$make_writer(x,opts){
278
+ if((((!((x == null)))) && ((!((x.cljs_node_io$core$IOFactory$make_writer$arity$2 == null)))))){
279
+ return x.cljs_node_io$core$IOFactory$make_writer$arity$2(x,opts);
280
+ } else {
281
+ return cljs_node_io$core$IOFactory$make_writer$dyn_128044(x,opts);
282
+ }
283
+ });
284
+
285
+ var cljs_node_io$core$IOFactory$make_input_stream$dyn_128045 = (function (x,opts){
286
+ var x__5350__auto__ = (((x == null))?null:x);
287
+ var m__5351__auto__ = (cljs_node_io.core.make_input_stream[goog.typeOf(x__5350__auto__)]);
288
+ if((!((m__5351__auto__ == null)))){
289
+ return (m__5351__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5351__auto__.cljs$core$IFn$_invoke$arity$2(x,opts) : m__5351__auto__.call(null, x,opts));
290
+ } else {
291
+ var m__5349__auto__ = (cljs_node_io.core.make_input_stream["_"]);
292
+ if((!((m__5349__auto__ == null)))){
293
+ return (m__5349__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5349__auto__.cljs$core$IFn$_invoke$arity$2(x,opts) : m__5349__auto__.call(null, x,opts));
294
+ } else {
295
+ throw cljs.core.missing_protocol("IOFactory.make-input-stream",x);
296
+ }
297
+ }
298
+ });
299
+ /**
300
+ * create stream.Readable
301
+ */
302
+ cljs_node_io.core.make_input_stream = (function cljs_node_io$core$make_input_stream(x,opts){
303
+ if((((!((x == null)))) && ((!((x.cljs_node_io$core$IOFactory$make_input_stream$arity$2 == null)))))){
304
+ return x.cljs_node_io$core$IOFactory$make_input_stream$arity$2(x,opts);
305
+ } else {
306
+ return cljs_node_io$core$IOFactory$make_input_stream$dyn_128045(x,opts);
307
+ }
308
+ });
309
+
310
+ var cljs_node_io$core$IOFactory$make_output_stream$dyn_128046 = (function (x,opts){
311
+ var x__5350__auto__ = (((x == null))?null:x);
312
+ var m__5351__auto__ = (cljs_node_io.core.make_output_stream[goog.typeOf(x__5350__auto__)]);
313
+ if((!((m__5351__auto__ == null)))){
314
+ return (m__5351__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5351__auto__.cljs$core$IFn$_invoke$arity$2(x,opts) : m__5351__auto__.call(null, x,opts));
315
+ } else {
316
+ var m__5349__auto__ = (cljs_node_io.core.make_output_stream["_"]);
317
+ if((!((m__5349__auto__ == null)))){
318
+ return (m__5349__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5349__auto__.cljs$core$IFn$_invoke$arity$2(x,opts) : m__5349__auto__.call(null, x,opts));
319
+ } else {
320
+ throw cljs.core.missing_protocol("IOFactory.make-output-stream",x);
321
+ }
322
+ }
323
+ });
324
+ /**
325
+ * create stream.Writable
326
+ */
327
+ cljs_node_io.core.make_output_stream = (function cljs_node_io$core$make_output_stream(x,opts){
328
+ if((((!((x == null)))) && ((!((x.cljs_node_io$core$IOFactory$make_output_stream$arity$2 == null)))))){
329
+ return x.cljs_node_io$core$IOFactory$make_output_stream$arity$2(x,opts);
330
+ } else {
331
+ return cljs_node_io$core$IOFactory$make_output_stream$dyn_128046(x,opts);
332
+ }
333
+ });
334
+
335
+ cljs_node_io.core.default_make_input_stream = (function cljs_node_io$core$default_make_input_stream(x,opts){
336
+ throw (new Error(["Cannot open <",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([x], 0)),"> as stream.Readable"].join('')));
337
+ });
338
+ cljs_node_io.core.default_make_output_stream = (function cljs_node_io$core$default_make_output_stream(x,opts){
339
+ throw (new Error(["Cannot open <",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([x], 0)),"> as stream.Writable"].join('')));
340
+ });
341
+ (cljs_node_io.core.IOFactory["null"] = true);
342
+
343
+ (cljs_node_io.core.make_reader["null"] = (function (x,opts){
344
+ return cljs_node_io.core.default_make_input_stream(x,opts);
345
+ }));
346
+
347
+ (cljs_node_io.core.make_writer["null"] = (function (x,opts){
348
+ return cljs_node_io.core.default_make_output_stream(x,opts);
349
+ }));
350
+
351
+ (cljs_node_io.core.make_input_stream["null"] = (function (x,opts){
352
+ return cljs_node_io.core.default_make_input_stream(x,opts);
353
+ }));
354
+
355
+ (cljs_node_io.core.make_output_stream["null"] = (function (x,opts){
356
+ return cljs_node_io.core.default_make_output_stream(x,opts);
357
+ }));
358
+
359
+ (cljs_node_io.core.stream.Readable.prototype.cljs_node_io$core$IOFactory$ = cljs.core.PROTOCOL_SENTINEL);
360
+
361
+ (cljs_node_io.core.stream.Readable.prototype.cljs_node_io$core$IOFactory$make_reader$arity$2 = (function (x,opts){
362
+ var x__$1 = this;
363
+ return x__$1;
364
+ }));
365
+
366
+ (cljs_node_io.core.stream.Readable.prototype.cljs_node_io$core$IOFactory$make_writer$arity$2 = (function (x,opts){
367
+ var x__$1 = this;
368
+ return cljs_node_io.core.make_output_stream(x__$1,opts);
369
+ }));
370
+
371
+ (cljs_node_io.core.stream.Readable.prototype.cljs_node_io$core$IOFactory$make_input_stream$arity$2 = (function (x,opts){
372
+ var x__$1 = this;
373
+ return x__$1;
374
+ }));
375
+
376
+ (cljs_node_io.core.stream.Readable.prototype.cljs_node_io$core$IOFactory$make_output_stream$arity$2 = (function (x,opts){
377
+ var x__$1 = this;
378
+ return cljs_node_io.core.default_make_output_stream(x__$1,opts);
379
+ }));
380
+
381
+ (cljs_node_io.core.stream.Writable.prototype.cljs_node_io$core$IOFactory$ = cljs.core.PROTOCOL_SENTINEL);
382
+
383
+ (cljs_node_io.core.stream.Writable.prototype.cljs_node_io$core$IOFactory$make_reader$arity$2 = (function (x,opts){
384
+ var x__$1 = this;
385
+ return cljs_node_io.core.make_input_stream(x__$1,opts);
386
+ }));
387
+
388
+ (cljs_node_io.core.stream.Writable.prototype.cljs_node_io$core$IOFactory$make_writer$arity$2 = (function (x,opts){
389
+ var x__$1 = this;
390
+ return x__$1;
391
+ }));
392
+
393
+ (cljs_node_io.core.stream.Writable.prototype.cljs_node_io$core$IOFactory$make_input_stream$arity$2 = (function (x,opts){
394
+ var x__$1 = this;
395
+ return cljs_node_io.core.default_make_input_stream(x__$1,opts);
396
+ }));
397
+
398
+ (cljs_node_io.core.stream.Writable.prototype.cljs_node_io$core$IOFactory$make_output_stream$arity$2 = (function (x,opts){
399
+ var x__$1 = this;
400
+ return x__$1;
401
+ }));
402
+
403
+ (cljs_node_io.core.stream.Duplex.prototype.cljs_node_io$core$IOFactory$ = cljs.core.PROTOCOL_SENTINEL);
404
+
405
+ (cljs_node_io.core.stream.Duplex.prototype.cljs_node_io$core$IOFactory$make_reader$arity$2 = (function (x,opts){
406
+ var x__$1 = this;
407
+ return x__$1;
408
+ }));
409
+
410
+ (cljs_node_io.core.stream.Duplex.prototype.cljs_node_io$core$IOFactory$make_writer$arity$2 = (function (x,opts){
411
+ var x__$1 = this;
412
+ return x__$1;
413
+ }));
414
+
415
+ (cljs_node_io.core.stream.Duplex.prototype.cljs_node_io$core$IOFactory$make_input_stream$arity$2 = (function (x,opts){
416
+ var x__$1 = this;
417
+ return x__$1;
418
+ }));
419
+
420
+ (cljs_node_io.core.stream.Duplex.prototype.cljs_node_io$core$IOFactory$make_output_stream$arity$2 = (function (x,opts){
421
+ var x__$1 = this;
422
+ return x__$1;
423
+ }));
424
+
425
+ (cljs_node_io.core.IOFactory["string"] = true);
426
+
427
+ (cljs_node_io.core.make_reader["string"] = (function (x,opts){
428
+ return cljs_node_io.core.make_input_stream(x,opts);
429
+ }));
430
+
431
+ (cljs_node_io.core.make_writer["string"] = (function (x,opts){
432
+ return cljs_node_io.core.make_output_stream(x,opts);
433
+ }));
434
+
435
+ (cljs_node_io.core.make_input_stream["string"] = (function (x,opts){
436
+ return cljs_node_io.core.fs.createReadStream(x,cljs.core.clj__GT_js(opts));
437
+ }));
438
+
439
+ (cljs_node_io.core.make_output_stream["string"] = (function (x,opts){
440
+ return cljs_node_io.core.fs.createWriteStream(x,cljs.core.clj__GT_js(opts));
441
+ }));
442
+
443
+ (cljs_node_io.file.File.prototype.cljs_node_io$core$IOFactory$ = cljs.core.PROTOCOL_SENTINEL);
444
+
445
+ (cljs_node_io.file.File.prototype.cljs_node_io$core$IOFactory$make_reader$arity$2 = (function (x,opts){
446
+ var x__$1 = this;
447
+ return cljs_node_io.core.make_input_stream(x__$1,opts);
448
+ }));
449
+
450
+ (cljs_node_io.file.File.prototype.cljs_node_io$core$IOFactory$make_writer$arity$2 = (function (x,opts){
451
+ var x__$1 = this;
452
+ return cljs_node_io.core.make_output_stream(x__$1,opts);
453
+ }));
454
+
455
+ (cljs_node_io.file.File.prototype.cljs_node_io$core$IOFactory$make_input_stream$arity$2 = (function (x,opts){
456
+ var x__$1 = this;
457
+ return cljs_node_io.core.fs.createReadStream(x__$1.getPath(),cljs.core.clj__GT_js(opts));
458
+ }));
459
+
460
+ (cljs_node_io.file.File.prototype.cljs_node_io$core$IOFactory$make_output_stream$arity$2 = (function (x,opts){
461
+ var x__$1 = this;
462
+ return cljs_node_io.core.fs.createWriteStream(x__$1.getPath(),cljs.core.clj__GT_js(opts));
463
+ }));
464
+
465
+ (Buffer.prototype.cljs_node_io$core$IOFactory$ = cljs.core.PROTOCOL_SENTINEL);
466
+
467
+ (Buffer.prototype.cljs_node_io$core$IOFactory$make_reader$arity$2 = (function (x,opts){
468
+ var x__$1 = this;
469
+ return cljs_node_io.core.make_input_stream(x__$1,opts);
470
+ }));
471
+
472
+ (Buffer.prototype.cljs_node_io$core$IOFactory$make_writer$arity$2 = (function (x,opts){
473
+ var x__$1 = this;
474
+ return cljs_node_io.core.make_output_stream(x__$1,opts);
475
+ }));
476
+
477
+ (Buffer.prototype.cljs_node_io$core$IOFactory$make_input_stream$arity$2 = (function (x,opts){
478
+ var x__$1 = this;
479
+ var rs = (new cljs_node_io.core.stream.Readable(cljs.core.clj__GT_js(opts)));
480
+ (rs._read = (function (){
481
+ return null;
482
+ }));
483
+
484
+ rs.push(x__$1);
485
+
486
+ rs.push(null);
487
+
488
+ return rs;
489
+ }));
490
+
491
+ (Buffer.prototype.cljs_node_io$core$IOFactory$make_output_stream$arity$2 = (function (x,opts){
492
+ var x__$1 = this;
493
+ return cljs_node_io.core.default_make_output_stream(x__$1,opts);
494
+ }));
495
+
496
+ (goog.Uri.prototype.cljs_node_io$core$IOFactory$ = cljs.core.PROTOCOL_SENTINEL);
497
+
498
+ (goog.Uri.prototype.cljs_node_io$core$IOFactory$make_reader$arity$2 = (function (x,opts){
499
+ var x__$1 = this;
500
+ return cljs_node_io.core.make_reader(cljs_node_io.core.make_input_stream(x__$1,opts),opts);
501
+ }));
502
+
503
+ (goog.Uri.prototype.cljs_node_io$core$IOFactory$make_writer$arity$2 = (function (x,opts){
504
+ var x__$1 = this;
505
+ return cljs_node_io.core.make_writer(cljs_node_io.core.make_output_stream(x__$1,opts),opts);
506
+ }));
507
+
508
+ (goog.Uri.prototype.cljs_node_io$core$IOFactory$make_input_stream$arity$2 = (function (x,opts){
509
+ var x__$1 = this;
510
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2("file",x__$1.getScheme())){
511
+ return cljs_node_io.core.make_input_stream(x__$1.getPath(),x__$1);
512
+ } else {
513
+ return cljs_node_io.core.default_make_input_stream(x__$1,opts);
514
+ }
515
+ }));
516
+
517
+ (goog.Uri.prototype.cljs_node_io$core$IOFactory$make_output_stream$arity$2 = (function (x,opts){
518
+ var x__$1 = this;
519
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2("file",x__$1.getScheme())){
520
+ return cljs_node_io.core.make_output_stream(x__$1.getPath(),x__$1);
521
+ } else {
522
+ return cljs_node_io.core.default_make_output_stream(x__$1,opts);
523
+ }
524
+ }));
525
+ /**
526
+ * Attempt to create a native stream.Readable.
527
+ * {@link https://nodejs.org/api/stream.html#class-streamreadable}
528
+ * Note that node streams are event driven.
529
+ * + stream.Readable => itself
530
+ * + buffers => stream.Readable
531
+ * + files + strings + goog.Uri => fs.ReadStream
532
+ * @return {!stream.Readable}
533
+ */
534
+ cljs_node_io.core.reader = (function cljs_node_io$core$reader(var_args){
535
+ var args__5732__auto__ = [];
536
+ var len__5726__auto___128054 = arguments.length;
537
+ var i__5727__auto___128055 = (0);
538
+ while(true){
539
+ if((i__5727__auto___128055 < len__5726__auto___128054)){
540
+ args__5732__auto__.push((arguments[i__5727__auto___128055]));
541
+
542
+ var G__128056 = (i__5727__auto___128055 + (1));
543
+ i__5727__auto___128055 = G__128056;
544
+ continue;
545
+ } else {
546
+ }
547
+ break;
548
+ }
549
+
550
+ var argseq__5733__auto__ = ((((1) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((1)),(0),null)):null);
551
+ return cljs_node_io.core.reader.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__5733__auto__);
552
+ });
553
+
554
+ (cljs_node_io.core.reader.cljs$core$IFn$_invoke$arity$variadic = (function (x,opts){
555
+ return cljs_node_io.core.make_reader(x,(cljs.core.truth_(opts)?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,opts):null));
556
+ }));
557
+
558
+ (cljs_node_io.core.reader.cljs$lang$maxFixedArity = (1));
559
+
560
+ /** @this {Function} */
561
+ (cljs_node_io.core.reader.cljs$lang$applyTo = (function (seq127995){
562
+ var G__127996 = cljs.core.first(seq127995);
563
+ var seq127995__$1 = cljs.core.next(seq127995);
564
+ var self__5711__auto__ = this;
565
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__127996,seq127995__$1);
566
+ }));
567
+
568
+ /**
569
+ * Attempt to create a native stream.Writable.
570
+ * {@link https://nodejs.org/api/stream.html#class-streamwritable}
571
+ * Note that node streams are event driven.
572
+ * + stream.Writable => itself
573
+ * + buffers => stream.Writable
574
+ * + files + strings + goog.Uri => fs.WriteStream
575
+ * @return {!stream.Writable}
576
+ */
577
+ cljs_node_io.core.writer = (function cljs_node_io$core$writer(var_args){
578
+ var args__5732__auto__ = [];
579
+ var len__5726__auto___128060 = arguments.length;
580
+ var i__5727__auto___128061 = (0);
581
+ while(true){
582
+ if((i__5727__auto___128061 < len__5726__auto___128060)){
583
+ args__5732__auto__.push((arguments[i__5727__auto___128061]));
584
+
585
+ var G__128063 = (i__5727__auto___128061 + (1));
586
+ i__5727__auto___128061 = G__128063;
587
+ continue;
588
+ } else {
589
+ }
590
+ break;
591
+ }
592
+
593
+ var argseq__5733__auto__ = ((((1) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((1)),(0),null)):null);
594
+ return cljs_node_io.core.writer.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__5733__auto__);
595
+ });
596
+
597
+ (cljs_node_io.core.writer.cljs$core$IFn$_invoke$arity$variadic = (function (x,opts){
598
+ return cljs_node_io.core.make_writer(x,(cljs.core.truth_(opts)?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,opts):null));
599
+ }));
600
+
601
+ (cljs_node_io.core.writer.cljs$lang$maxFixedArity = (1));
602
+
603
+ /** @this {Function} */
604
+ (cljs_node_io.core.writer.cljs$lang$applyTo = (function (seq127997){
605
+ var G__127998 = cljs.core.first(seq127997);
606
+ var seq127997__$1 = cljs.core.next(seq127997);
607
+ var self__5711__auto__ = this;
608
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__127998,seq127997__$1);
609
+ }));
610
+
611
+ /**
612
+ * Attempt to create a native stream.Readable.
613
+ * {@link https://nodejs.org/api/stream.html#class-streamreadable}
614
+ * Note that node streams are event driven.
615
+ * + stream.Readable => itself
616
+ * + buffers => stream.Readable
617
+ * + files + strings + goog.Uri => fs.ReadStream
618
+ * @return {!stream.Readable}
619
+ */
620
+ cljs_node_io.core.input_stream = (function cljs_node_io$core$input_stream(var_args){
621
+ var args__5732__auto__ = [];
622
+ var len__5726__auto___128065 = arguments.length;
623
+ var i__5727__auto___128066 = (0);
624
+ while(true){
625
+ if((i__5727__auto___128066 < len__5726__auto___128065)){
626
+ args__5732__auto__.push((arguments[i__5727__auto___128066]));
627
+
628
+ var G__128067 = (i__5727__auto___128066 + (1));
629
+ i__5727__auto___128066 = G__128067;
630
+ continue;
631
+ } else {
632
+ }
633
+ break;
634
+ }
635
+
636
+ var argseq__5733__auto__ = ((((1) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((1)),(0),null)):null);
637
+ return cljs_node_io.core.input_stream.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__5733__auto__);
638
+ });
639
+
640
+ (cljs_node_io.core.input_stream.cljs$core$IFn$_invoke$arity$variadic = (function (x,opts){
641
+ return cljs_node_io.core.make_input_stream(x,(cljs.core.truth_(opts)?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,opts):null));
642
+ }));
643
+
644
+ (cljs_node_io.core.input_stream.cljs$lang$maxFixedArity = (1));
645
+
646
+ /** @this {Function} */
647
+ (cljs_node_io.core.input_stream.cljs$lang$applyTo = (function (seq127999){
648
+ var G__128000 = cljs.core.first(seq127999);
649
+ var seq127999__$1 = cljs.core.next(seq127999);
650
+ var self__5711__auto__ = this;
651
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__128000,seq127999__$1);
652
+ }));
653
+
654
+ /**
655
+ * Attempt to create a native stream.Writable.
656
+ * {@link https://nodejs.org/api/stream.html#class-streamwritable}
657
+ * Note that node streams are event driven.
658
+ * + stream.Writable => itself
659
+ * + buffers => stream.Writable
660
+ * + files + strings + goog.Uri => fs.WriteStream
661
+ * @return {!stream.Writable}
662
+ */
663
+ cljs_node_io.core.output_stream = (function cljs_node_io$core$output_stream(var_args){
664
+ var args__5732__auto__ = [];
665
+ var len__5726__auto___128068 = arguments.length;
666
+ var i__5727__auto___128069 = (0);
667
+ while(true){
668
+ if((i__5727__auto___128069 < len__5726__auto___128068)){
669
+ args__5732__auto__.push((arguments[i__5727__auto___128069]));
670
+
671
+ var G__128070 = (i__5727__auto___128069 + (1));
672
+ i__5727__auto___128069 = G__128070;
673
+ continue;
674
+ } else {
675
+ }
676
+ break;
677
+ }
678
+
679
+ var argseq__5733__auto__ = ((((1) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((1)),(0),null)):null);
680
+ return cljs_node_io.core.output_stream.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__5733__auto__);
681
+ });
682
+
683
+ (cljs_node_io.core.output_stream.cljs$core$IFn$_invoke$arity$variadic = (function (x,opts){
684
+ return cljs_node_io.core.make_output_stream(x,(cljs.core.truth_(opts)?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,opts):null));
685
+ }));
686
+
687
+ (cljs_node_io.core.output_stream.cljs$lang$maxFixedArity = (1));
688
+
689
+ /** @this {Function} */
690
+ (cljs_node_io.core.output_stream.cljs$lang$applyTo = (function (seq128001){
691
+ var G__128002 = cljs.core.first(seq128001);
692
+ var seq128001__$1 = cljs.core.next(seq128001);
693
+ var self__5711__auto__ = this;
694
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__128002,seq128001__$1);
695
+ }));
696
+
697
+ /**
698
+ * Tries to create a stream.Readable from obj. Supports iterables & array-likes
699
+ * in addition to those types supported by IOFactory
700
+ * {@link https://nodejs.org/api/stream.html#class-streamreadable}
701
+ * @param {*} obj
702
+ * @return {!stream.Readable}
703
+ */
704
+ cljs_node_io.core.readable = (function cljs_node_io$core$readable(var_args){
705
+ var G__128004 = arguments.length;
706
+ switch (G__128004) {
707
+ case 1:
708
+ return cljs_node_io.core.readable.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
709
+
710
+ break;
711
+ case 2:
712
+ return cljs_node_io.core.readable.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
713
+
714
+ break;
715
+ default:
716
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
717
+
718
+ }
719
+ });
720
+
721
+ (cljs_node_io.core.readable.cljs$core$IFn$_invoke$arity$1 = (function (obj){
722
+ return cljs_node_io.core.readable.cljs$core$IFn$_invoke$arity$2(obj,cljs.core.PersistentArrayMap.EMPTY);
723
+ }));
724
+
725
+ (cljs_node_io.core.readable.cljs$core$IFn$_invoke$arity$2 = (function (obj,opts){
726
+ if(cljs.core.truth_(goog.isArrayLike(obj))){
727
+ return cljs_node_io.core.make_input_stream(Buffer.from(obj),opts);
728
+ } else {
729
+ if(cljs.core.js_iterable_QMARK_(obj)){
730
+ return cljs_node_io.core.stream.Readable.from(obj,cljs.core.clj__GT_js(opts));
731
+ } else {
732
+ return cljs_node_io.core.make_input_stream(obj,opts);
733
+
734
+ }
735
+ }
736
+ }));
737
+
738
+ (cljs_node_io.core.readable.cljs$lang$maxFixedArity = 2);
739
+
740
+ /**
741
+ * Tries to create a stream.Writable from obj
742
+ * @param {*} obj
743
+ * @return {!stream.Writable}
744
+ */
745
+ cljs_node_io.core.writable = (function cljs_node_io$core$writable(var_args){
746
+ var G__128006 = arguments.length;
747
+ switch (G__128006) {
748
+ case 1:
749
+ return cljs_node_io.core.writable.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
750
+
751
+ break;
752
+ case 2:
753
+ return cljs_node_io.core.writable.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
754
+
755
+ break;
756
+ default:
757
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
758
+
759
+ }
760
+ });
761
+
762
+ (cljs_node_io.core.writable.cljs$core$IFn$_invoke$arity$1 = (function (obj){
763
+ return cljs_node_io.core.writable.cljs$core$IFn$_invoke$arity$2(obj,cljs.core.PersistentArrayMap.EMPTY);
764
+ }));
765
+
766
+ (cljs_node_io.core.writable.cljs$core$IFn$_invoke$arity$2 = (function (obj,opts){
767
+ return cljs_node_io.core.make_output_stream(obj,opts);
768
+ }));
769
+
770
+ (cljs_node_io.core.writable.cljs$lang$maxFixedArity = 2);
771
+
772
+ /**
773
+ * a relative path, else IllegalArgumentException.
774
+ * @param {(string|IFile|Uri)} x
775
+ * @return {!string}
776
+ */
777
+ cljs_node_io.core.as_relative_path = (function cljs_node_io$core$as_relative_path(x){
778
+ var f = cljs_node_io.core.as_file(x);
779
+ if(cljs.core.truth_(f.isAbsolute())){
780
+ throw (new Error(["IllegalArgumentException: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(f)," is not a relative path"].join('')));
781
+ } else {
782
+ return f.getPath();
783
+ }
784
+ });
785
+ /**
786
+ * Returns a reified file, passing each arg to as-file. Multiple-arg
787
+ * versions treat the first argument as parent and subsequent args as
788
+ * children relative to the parent. Use in place of File constructor
789
+ * @return {!IFile}
790
+ */
791
+ cljs_node_io.core.file = (function cljs_node_io$core$file(var_args){
792
+ var G__128011 = arguments.length;
793
+ switch (G__128011) {
794
+ case 1:
795
+ return cljs_node_io.core.file.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
796
+
797
+ break;
798
+ case 2:
799
+ return cljs_node_io.core.file.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
800
+
801
+ break;
802
+ default:
803
+ var args_arr__5751__auto__ = [];
804
+ var len__5726__auto___128074 = arguments.length;
805
+ var i__5727__auto___128075 = (0);
806
+ while(true){
807
+ if((i__5727__auto___128075 < len__5726__auto___128074)){
808
+ args_arr__5751__auto__.push((arguments[i__5727__auto___128075]));
809
+
810
+ var G__128076 = (i__5727__auto___128075 + (1));
811
+ i__5727__auto___128075 = G__128076;
812
+ continue;
813
+ } else {
814
+ }
815
+ break;
816
+ }
817
+
818
+ var argseq__5752__auto__ = ((((2) < args_arr__5751__auto__.length))?(new cljs.core.IndexedSeq(args_arr__5751__auto__.slice((2)),(0),null)):null);
819
+ return cljs_node_io.core.file.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__5752__auto__);
820
+
821
+ }
822
+ });
823
+
824
+ (cljs_node_io.core.file.cljs$core$IFn$_invoke$arity$1 = (function (arg){
825
+ return cljs_node_io.core.as_file(arg);
826
+ }));
827
+
828
+ (cljs_node_io.core.file.cljs$core$IFn$_invoke$arity$2 = (function (parent,child){
829
+ return (new cljs_node_io.file.File(cljs_node_io.core.filepath.cljs$core$IFn$_invoke$arity$2(cljs_node_io.core.as_file(parent),cljs_node_io.core.as_relative_path(child))));
830
+ }));
831
+
832
+ (cljs_node_io.core.file.cljs$core$IFn$_invoke$arity$variadic = (function (parent,child,more){
833
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs_node_io.core.file,cljs_node_io.core.file.cljs$core$IFn$_invoke$arity$2(parent,child),more);
834
+ }));
835
+
836
+ /** @this {Function} */
837
+ (cljs_node_io.core.file.cljs$lang$applyTo = (function (seq128008){
838
+ var G__128009 = cljs.core.first(seq128008);
839
+ var seq128008__$1 = cljs.core.next(seq128008);
840
+ var G__128010 = cljs.core.first(seq128008__$1);
841
+ var seq128008__$2 = cljs.core.next(seq128008__$1);
842
+ var self__5711__auto__ = this;
843
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__128009,G__128010,seq128008__$2);
844
+ }));
845
+
846
+ (cljs_node_io.core.file.cljs$lang$maxFixedArity = (2));
847
+
848
+ /**
849
+ * Delete file f. Raise an exception if it fails unless silently is true.
850
+ * @return {!boolean}
851
+ */
852
+ cljs_node_io.core.delete_file = (function cljs_node_io$core$delete_file(var_args){
853
+ var args__5732__auto__ = [];
854
+ var len__5726__auto___128078 = arguments.length;
855
+ var i__5727__auto___128079 = (0);
856
+ while(true){
857
+ if((i__5727__auto___128079 < len__5726__auto___128078)){
858
+ args__5732__auto__.push((arguments[i__5727__auto___128079]));
859
+
860
+ var G__128080 = (i__5727__auto___128079 + (1));
861
+ i__5727__auto___128079 = G__128080;
862
+ continue;
863
+ } else {
864
+ }
865
+ break;
866
+ }
867
+
868
+ var argseq__5733__auto__ = ((((1) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((1)),(0),null)):null);
869
+ return cljs_node_io.core.delete_file.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__5733__auto__);
870
+ });
871
+
872
+ (cljs_node_io.core.delete_file.cljs$core$IFn$_invoke$arity$variadic = (function (f,p__128014){
873
+ var vec__128015 = p__128014;
874
+ var silently = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__128015,(0),null);
875
+ var or__5002__auto__ = cljs_node_io.core.file.cljs$core$IFn$_invoke$arity$1(f).delete();
876
+ if(cljs.core.truth_(or__5002__auto__)){
877
+ return or__5002__auto__;
878
+ } else {
879
+ var or__5002__auto____$1 = silently;
880
+ if(cljs.core.truth_(or__5002__auto____$1)){
881
+ return or__5002__auto____$1;
882
+ } else {
883
+ throw (new Error(["Couldn't delete ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(f)].join('')));
884
+ }
885
+ }
886
+ }));
887
+
888
+ (cljs_node_io.core.delete_file.cljs$lang$maxFixedArity = (1));
889
+
890
+ /** @this {Function} */
891
+ (cljs_node_io.core.delete_file.cljs$lang$applyTo = (function (seq128012){
892
+ var G__128013 = cljs.core.first(seq128012);
893
+ var seq128012__$1 = cljs.core.next(seq128012);
894
+ var self__5711__auto__ = this;
895
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__128013,seq128012__$1);
896
+ }));
897
+
898
+ /**
899
+ * Returns a string synchronously. Unlike JVM, does not use FileInputStream.
900
+ * Only option at this time is :encoding
901
+ * If :encoding "" (an explicit empty string), returns raw buffer instead of string.
902
+ * @return {(string|buffer.Buffer)}
903
+ */
904
+ cljs_node_io.core.slurp = (function cljs_node_io$core$slurp(var_args){
905
+ var args__5732__auto__ = [];
906
+ var len__5726__auto___128081 = arguments.length;
907
+ var i__5727__auto___128082 = (0);
908
+ while(true){
909
+ if((i__5727__auto___128082 < len__5726__auto___128081)){
910
+ args__5732__auto__.push((arguments[i__5727__auto___128082]));
911
+
912
+ var G__128083 = (i__5727__auto___128082 + (1));
913
+ i__5727__auto___128082 = G__128083;
914
+ continue;
915
+ } else {
916
+ }
917
+ break;
918
+ }
919
+
920
+ var argseq__5733__auto__ = ((((1) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((1)),(0),null)):null);
921
+ return cljs_node_io.core.slurp.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__5733__auto__);
922
+ });
923
+
924
+ (cljs_node_io.core.slurp.cljs$core$IFn$_invoke$arity$variadic = (function (p,opts){
925
+ var opts__$1 = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,opts);
926
+ var f = cljs_node_io.core.as_file(p);
927
+ return f.read((function (){var or__5002__auto__ = new cljs.core.Keyword(null,"encoding","encoding",1728578272).cljs$core$IFn$_invoke$arity$1(opts__$1);
928
+ if(cljs.core.truth_(or__5002__auto__)){
929
+ return or__5002__auto__;
930
+ } else {
931
+ return "utf8";
932
+ }
933
+ })());
934
+ }));
935
+
936
+ (cljs_node_io.core.slurp.cljs$lang$maxFixedArity = (1));
937
+
938
+ /** @this {Function} */
939
+ (cljs_node_io.core.slurp.cljs$lang$applyTo = (function (seq128018){
940
+ var G__128019 = cljs.core.first(seq128018);
941
+ var seq128018__$1 = cljs.core.next(seq128018);
942
+ var self__5711__auto__ = this;
943
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__128019,seq128018__$1);
944
+ }));
945
+
946
+ /**
947
+ * @return {!Channel} a which will receive [?err ?data]
948
+ */
949
+ cljs_node_io.core.aslurp = (function cljs_node_io$core$aslurp(var_args){
950
+ var args__5732__auto__ = [];
951
+ var len__5726__auto___128084 = arguments.length;
952
+ var i__5727__auto___128085 = (0);
953
+ while(true){
954
+ if((i__5727__auto___128085 < len__5726__auto___128084)){
955
+ args__5732__auto__.push((arguments[i__5727__auto___128085]));
956
+
957
+ var G__128086 = (i__5727__auto___128085 + (1));
958
+ i__5727__auto___128085 = G__128086;
959
+ continue;
960
+ } else {
961
+ }
962
+ break;
963
+ }
964
+
965
+ var argseq__5733__auto__ = ((((1) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((1)),(0),null)):null);
966
+ return cljs_node_io.core.aslurp.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__5733__auto__);
967
+ });
968
+
969
+ (cljs_node_io.core.aslurp.cljs$core$IFn$_invoke$arity$variadic = (function (p,opts){
970
+ var opts__$1 = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,opts);
971
+ var f = cljs_node_io.core.as_file(p);
972
+ return f.aread((function (){var or__5002__auto__ = new cljs.core.Keyword(null,"encoding","encoding",1728578272).cljs$core$IFn$_invoke$arity$1(opts__$1);
973
+ if(cljs.core.truth_(or__5002__auto__)){
974
+ return or__5002__auto__;
975
+ } else {
976
+ return "utf8";
977
+ }
978
+ })());
979
+ }));
980
+
981
+ (cljs_node_io.core.aslurp.cljs$lang$maxFixedArity = (1));
982
+
983
+ /** @this {Function} */
984
+ (cljs_node_io.core.aslurp.cljs$lang$applyTo = (function (seq128020){
985
+ var G__128021 = cljs.core.first(seq128020);
986
+ var seq128020__$1 = cljs.core.next(seq128020);
987
+ var self__5711__auto__ = this;
988
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__128021,seq128020__$1);
989
+ }));
990
+
991
+ /**
992
+ * Writes content synchronously to file f.
993
+ * @param {(string|IFile|Uri)} p :: path to write to
994
+ * @param {(string|buffer.Buffer)} content to write
995
+ * Options:
996
+ * :encoding {string} defaults to utf8. Ignored when content is a buffer
997
+ * :append {bool} - add content to end of existing file.
998
+ * :flags {string} - overrides :append when set
999
+ * :mode {number} - set on newly created files
1000
+ * @return {nil} or throws
1001
+ */
1002
+ cljs_node_io.core.spit = (function cljs_node_io$core$spit(var_args){
1003
+ var args__5732__auto__ = [];
1004
+ var len__5726__auto___128087 = arguments.length;
1005
+ var i__5727__auto___128088 = (0);
1006
+ while(true){
1007
+ if((i__5727__auto___128088 < len__5726__auto___128087)){
1008
+ args__5732__auto__.push((arguments[i__5727__auto___128088]));
1009
+
1010
+ var G__128089 = (i__5727__auto___128088 + (1));
1011
+ i__5727__auto___128088 = G__128089;
1012
+ continue;
1013
+ } else {
1014
+ }
1015
+ break;
1016
+ }
1017
+
1018
+ var argseq__5733__auto__ = ((((2) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((2)),(0),null)):null);
1019
+ return cljs_node_io.core.spit.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__5733__auto__);
1020
+ });
1021
+
1022
+ (cljs_node_io.core.spit.cljs$core$IFn$_invoke$arity$variadic = (function (p,content,options){
1023
+ var opts = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,options);
1024
+ var f = cljs_node_io.core.as_file(p);
1025
+ return f.write(content,opts);
1026
+ }));
1027
+
1028
+ (cljs_node_io.core.spit.cljs$lang$maxFixedArity = (2));
1029
+
1030
+ /** @this {Function} */
1031
+ (cljs_node_io.core.spit.cljs$lang$applyTo = (function (seq128022){
1032
+ var G__128023 = cljs.core.first(seq128022);
1033
+ var seq128022__$1 = cljs.core.next(seq128022);
1034
+ var G__128024 = cljs.core.first(seq128022__$1);
1035
+ var seq128022__$2 = cljs.core.next(seq128022__$1);
1036
+ var self__5711__auto__ = this;
1037
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__128023,G__128024,seq128022__$2);
1038
+ }));
1039
+
1040
+ /**
1041
+ * Async spit. Wait for result before writing again!
1042
+ * @param {(string|IFile|Uri)} p :: path to write to
1043
+ * @param {(string|buffer.Buffer)} content to write
1044
+ * Options:
1045
+ * :encoding {string} defaults to utf8. Ignored when content is a buffer
1046
+ * :append {bool} - add content to end of existing file.
1047
+ * :flags {string} - overrides :append when set
1048
+ * :mode {number} - set on newly created files
1049
+ * @return {!Channel} recieves [?err]
1050
+ */
1051
+ cljs_node_io.core.aspit = (function cljs_node_io$core$aspit(var_args){
1052
+ var args__5732__auto__ = [];
1053
+ var len__5726__auto___128091 = arguments.length;
1054
+ var i__5727__auto___128092 = (0);
1055
+ while(true){
1056
+ if((i__5727__auto___128092 < len__5726__auto___128091)){
1057
+ args__5732__auto__.push((arguments[i__5727__auto___128092]));
1058
+
1059
+ var G__128093 = (i__5727__auto___128092 + (1));
1060
+ i__5727__auto___128092 = G__128093;
1061
+ continue;
1062
+ } else {
1063
+ }
1064
+ break;
1065
+ }
1066
+
1067
+ var argseq__5733__auto__ = ((((2) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((2)),(0),null)):null);
1068
+ return cljs_node_io.core.aspit.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__5733__auto__);
1069
+ });
1070
+
1071
+ (cljs_node_io.core.aspit.cljs$core$IFn$_invoke$arity$variadic = (function (p,content,options){
1072
+ var opts = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,options);
1073
+ var f = cljs_node_io.core.as_file(p);
1074
+ return f.awrite(content,opts);
1075
+ }));
1076
+
1077
+ (cljs_node_io.core.aspit.cljs$lang$maxFixedArity = (2));
1078
+
1079
+ /** @this {Function} */
1080
+ (cljs_node_io.core.aspit.cljs$lang$applyTo = (function (seq128025){
1081
+ var G__128026 = cljs.core.first(seq128025);
1082
+ var seq128025__$1 = cljs.core.next(seq128025);
1083
+ var G__128027 = cljs.core.first(seq128025__$1);
1084
+ var seq128025__$2 = cljs.core.next(seq128025__$1);
1085
+ var self__5711__auto__ = this;
1086
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__128026,G__128027,seq128025__$2);
1087
+ }));
1088
+
1089
+ /**
1090
+ * A tree seq on cljs-node-io.Files
1091
+ * @return {LazySeq<File>}
1092
+ */
1093
+ cljs_node_io.core.file_seq = (function cljs_node_io$core$file_seq(dir){
1094
+ if((!((dir instanceof cljs_node_io.file.File)))){
1095
+ var G__128030 = cljs_node_io.core.as_file(dir);
1096
+ return (cljs_node_io.core.file_seq.cljs$core$IFn$_invoke$arity$1 ? cljs_node_io.core.file_seq.cljs$core$IFn$_invoke$arity$1(G__128030) : cljs_node_io.core.file_seq.call(null, G__128030));
1097
+ } else {
1098
+ return cljs.core.tree_seq((function (p1__128028_SHARP_){
1099
+ return p1__128028_SHARP_.isDirectory();
1100
+ }),(function (p1__128029_SHARP_){
1101
+ return p1__128029_SHARP_.listFiles();
1102
+ }),dir);
1103
+ }
1104
+ });
1105
+ /**
1106
+ * Given the same arg(s) as for file, creates all parent directories of
1107
+ * the file they represent.
1108
+ * @return {!boolean}
1109
+ */
1110
+ cljs_node_io.core.make_parents = (function cljs_node_io$core$make_parents(var_args){
1111
+ var args__5732__auto__ = [];
1112
+ var len__5726__auto___128095 = arguments.length;
1113
+ var i__5727__auto___128096 = (0);
1114
+ while(true){
1115
+ if((i__5727__auto___128096 < len__5726__auto___128095)){
1116
+ args__5732__auto__.push((arguments[i__5727__auto___128096]));
1117
+
1118
+ var G__128098 = (i__5727__auto___128096 + (1));
1119
+ i__5727__auto___128096 = G__128098;
1120
+ continue;
1121
+ } else {
1122
+ }
1123
+ break;
1124
+ }
1125
+
1126
+ var argseq__5733__auto__ = ((((1) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((1)),(0),null)):null);
1127
+ return cljs_node_io.core.make_parents.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__5733__auto__);
1128
+ });
1129
+
1130
+ (cljs_node_io.core.make_parents.cljs$core$IFn$_invoke$arity$variadic = (function (f,more){
1131
+ var temp__5804__auto__ = cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs_node_io.core.file,f,more).getParentFile();
1132
+ if(cljs.core.truth_(temp__5804__auto__)){
1133
+ var parent = temp__5804__auto__;
1134
+ return parent.mkdirs();
1135
+ } else {
1136
+ return null;
1137
+ }
1138
+ }));
1139
+
1140
+ (cljs_node_io.core.make_parents.cljs$lang$maxFixedArity = (1));
1141
+
1142
+ /** @this {Function} */
1143
+ (cljs_node_io.core.make_parents.cljs$lang$applyTo = (function (seq128031){
1144
+ var G__128032 = cljs.core.first(seq128031);
1145
+ var seq128031__$1 = cljs.core.next(seq128031);
1146
+ var self__5711__auto__ = this;
1147
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__128032,seq128031__$1);
1148
+ }));
1149
+
1150
+ /**
1151
+ * Synchronously copies input to output..
1152
+ * Only supports files and strings/buffers as filepaths
1153
+ * @param {(string, File, Buffer)} input
1154
+ * @param {(string, File, Buffer)} output
1155
+ * @return {nil} throws on error
1156
+ */
1157
+ cljs_node_io.core.copy = (function cljs_node_io$core$copy(var_args){
1158
+ var args__5732__auto__ = [];
1159
+ var len__5726__auto___128100 = arguments.length;
1160
+ var i__5727__auto___128101 = (0);
1161
+ while(true){
1162
+ if((i__5727__auto___128101 < len__5726__auto___128100)){
1163
+ args__5732__auto__.push((arguments[i__5727__auto___128101]));
1164
+
1165
+ var G__128103 = (i__5727__auto___128101 + (1));
1166
+ i__5727__auto___128101 = G__128103;
1167
+ continue;
1168
+ } else {
1169
+ }
1170
+ break;
1171
+ }
1172
+
1173
+ var argseq__5733__auto__ = ((((2) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((2)),(0),null)):null);
1174
+ return cljs_node_io.core.copy.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__5733__auto__);
1175
+ });
1176
+
1177
+ (cljs_node_io.core.copy.cljs$core$IFn$_invoke$arity$variadic = (function (input,output,opts){
1178
+ if(cljs.core.truth_((function (){var or__5002__auto__ = (input instanceof cljs_node_io.file.File);
1179
+ if(or__5002__auto__){
1180
+ return or__5002__auto__;
1181
+ } else {
1182
+ var or__5002__auto____$1 = typeof input === 'string';
1183
+ if(or__5002__auto____$1){
1184
+ return or__5002__auto____$1;
1185
+ } else {
1186
+ return (cljs_node_io.core.buffer_QMARK_.cljs$core$IFn$_invoke$arity$1 ? cljs_node_io.core.buffer_QMARK_.cljs$core$IFn$_invoke$arity$1(input) : cljs_node_io.core.buffer_QMARK_.call(null, input));
1187
+ }
1188
+ }
1189
+ })())){
1190
+ } else {
1191
+ throw (new Error("Assert failed: (or (instance? File input) (string? input) (buffer? input))"));
1192
+ }
1193
+
1194
+ if(cljs.core.truth_((function (){var or__5002__auto__ = (output instanceof cljs_node_io.file.File);
1195
+ if(or__5002__auto__){
1196
+ return or__5002__auto__;
1197
+ } else {
1198
+ var or__5002__auto____$1 = typeof output === 'string';
1199
+ if(or__5002__auto____$1){
1200
+ return or__5002__auto____$1;
1201
+ } else {
1202
+ return (cljs_node_io.core.buffer_QMARK_.cljs$core$IFn$_invoke$arity$1 ? cljs_node_io.core.buffer_QMARK_.cljs$core$IFn$_invoke$arity$1(output) : cljs_node_io.core.buffer_QMARK_.call(null, output));
1203
+ }
1204
+ }
1205
+ })())){
1206
+ } else {
1207
+ throw (new Error("Assert failed: (or (instance? File output) (string? output) (buffer? output))"));
1208
+ }
1209
+
1210
+ return cljs_node_io.fs.copy_file.cljs$core$IFn$_invoke$arity$2(input,output);
1211
+ }));
1212
+
1213
+ (cljs_node_io.core.copy.cljs$lang$maxFixedArity = (2));
1214
+
1215
+ /** @this {Function} */
1216
+ (cljs_node_io.core.copy.cljs$lang$applyTo = (function (seq128033){
1217
+ var G__128034 = cljs.core.first(seq128033);
1218
+ var seq128033__$1 = cljs.core.next(seq128033);
1219
+ var G__128035 = cljs.core.first(seq128033__$1);
1220
+ var seq128033__$2 = cljs.core.next(seq128033__$1);
1221
+ var self__5711__auto__ = this;
1222
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__128034,G__128035,seq128033__$2);
1223
+ }));
1224
+
1225
+ /**
1226
+ * Copies input to output via streams asynchronously.
1227
+ * + Unlike JVM, strings interpreted as filespaths
1228
+ * + Options are passed to the output stream.
1229
+ * @param {(string, File, Buffer, Readable)} input
1230
+ * @param {(string, File, Buffer, Readable)} output
1231
+ * @return {!Channel} yielding [?err]
1232
+ */
1233
+ cljs_node_io.core.acopy = (function cljs_node_io$core$acopy(var_args){
1234
+ var args__5732__auto__ = [];
1235
+ var len__5726__auto___128107 = arguments.length;
1236
+ var i__5727__auto___128108 = (0);
1237
+ while(true){
1238
+ if((i__5727__auto___128108 < len__5726__auto___128107)){
1239
+ args__5732__auto__.push((arguments[i__5727__auto___128108]));
1240
+
1241
+ var G__128109 = (i__5727__auto___128108 + (1));
1242
+ i__5727__auto___128108 = G__128109;
1243
+ continue;
1244
+ } else {
1245
+ }
1246
+ break;
1247
+ }
1248
+
1249
+ var argseq__5733__auto__ = ((((2) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((2)),(0),null)):null);
1250
+ return cljs_node_io.core.acopy.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__5733__auto__);
1251
+ });
1252
+
1253
+ (cljs_node_io.core.acopy.cljs$core$IFn$_invoke$arity$variadic = (function (input,output,opts){
1254
+ var opts__$1 = (cljs.core.truth_(opts)?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,opts):null);
1255
+ var out = cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$0();
1256
+ var input__$1 = cljs_node_io.core.make_input_stream(input,null);
1257
+ var output__$1 = cljs_node_io.core.make_output_stream(output,opts__$1);
1258
+ cljs_node_io.core.stream.pipeline(input__$1,output__$1,(function (p1__128036_SHARP_){
1259
+ return cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2(out,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [p1__128036_SHARP_], null));
1260
+ }));
1261
+
1262
+ return out;
1263
+ }));
1264
+
1265
+ (cljs_node_io.core.acopy.cljs$lang$maxFixedArity = (2));
1266
+
1267
+ /** @this {Function} */
1268
+ (cljs_node_io.core.acopy.cljs$lang$applyTo = (function (seq128037){
1269
+ var G__128038 = cljs.core.first(seq128037);
1270
+ var seq128037__$1 = cljs.core.next(seq128037);
1271
+ var G__128039 = cljs.core.first(seq128037__$1);
1272
+ var seq128037__$2 = cljs.core.next(seq128037__$1);
1273
+ var self__5711__auto__ = this;
1274
+ return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__128038,G__128039,seq128037__$2);
1275
+ }));
1276
+
1277
+
1278
+ //# sourceMappingURL=cljs_node_io.core.js.map