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.
- package/README.md +226 -0
- package/cljs.analyzer.api.js +427 -0
- package/cljs.analyzer.api.js.map +1 -0
- package/cljs.analyzer.impl.js +86 -0
- package/cljs.analyzer.impl.js.map +1 -0
- package/cljs.analyzer.impl.namespaces.js +219 -0
- package/cljs.analyzer.impl.namespaces.js.map +1 -0
- package/cljs.analyzer.js +7186 -0
- package/cljs.analyzer.js.map +1 -0
- package/cljs.analyzer.passes.and_or.js +141 -0
- package/cljs.analyzer.passes.and_or.js.map +1 -0
- package/cljs.analyzer.passes.js +104 -0
- package/cljs.analyzer.passes.js.map +1 -0
- package/cljs.cache.js +1145 -0
- package/cljs.cache.js.map +1 -0
- package/cljs.cache.wrapped.js +352 -0
- package/cljs.cache.wrapped.js.map +1 -0
- package/cljs.core.async.impl.buffers.js +489 -0
- package/cljs.core.async.impl.buffers.js.map +1 -0
- package/cljs.core.async.impl.channels.js +711 -0
- package/cljs.core.async.impl.channels.js.map +1 -0
- package/cljs.core.async.impl.dispatch.js +81 -0
- package/cljs.core.async.impl.dispatch.js.map +1 -0
- package/cljs.core.async.impl.ioc_helpers.js +192 -0
- package/cljs.core.async.impl.ioc_helpers.js.map +1 -0
- package/cljs.core.async.impl.protocols.js +368 -0
- package/cljs.core.async.impl.protocols.js.map +1 -0
- package/cljs.core.async.impl.timers.js +510 -0
- package/cljs.core.async.impl.timers.js.map +1 -0
- package/cljs.core.async.js +8813 -0
- package/cljs.core.async.js.map +1 -0
- package/cljs.core.js +38764 -0
- package/cljs.core.js.map +1 -0
- package/cljs.env.js +60 -0
- package/cljs.env.js.map +1 -0
- package/cljs.nodejs.js +80 -0
- package/cljs.nodejs.js.map +1 -0
- package/cljs.reader.js +462 -0
- package/cljs.reader.js.map +1 -0
- package/cljs.spec.alpha.js +5312 -0
- package/cljs.spec.alpha.js.map +1 -0
- package/cljs.spec.gen.alpha.js +2020 -0
- package/cljs.spec.gen.alpha.js.map +1 -0
- package/cljs.tagged_literals.js +103 -0
- package/cljs.tagged_literals.js.map +1 -0
- package/cljs.tools.reader.edn.js +960 -0
- package/cljs.tools.reader.edn.js.map +1 -0
- package/cljs.tools.reader.impl.commons.js +217 -0
- package/cljs.tools.reader.impl.commons.js.map +1 -0
- package/cljs.tools.reader.impl.errors.js +441 -0
- package/cljs.tools.reader.impl.errors.js.map +1 -0
- package/cljs.tools.reader.impl.inspect.js +182 -0
- package/cljs.tools.reader.impl.inspect.js.map +1 -0
- package/cljs.tools.reader.impl.utils.js +429 -0
- package/cljs.tools.reader.impl.utils.js.map +1 -0
- package/cljs.tools.reader.js +1830 -0
- package/cljs.tools.reader.js.map +1 -0
- package/cljs.tools.reader.reader_types.js +838 -0
- package/cljs.tools.reader.reader_types.js.map +1 -0
- package/cljs_env.js +18192 -0
- package/cljs_node_io.core.js +1278 -0
- package/cljs_node_io.core.js.map +1 -0
- package/cljs_node_io.file.js +918 -0
- package/cljs_node_io.file.js.map +1 -0
- package/cljs_node_io.fs.js +3911 -0
- package/cljs_node_io.fs.js.map +1 -0
- package/clojure.data.js +319 -0
- package/clojure.data.js.map +1 -0
- package/clojure.edn.js +119 -0
- package/clojure.edn.js.map +1 -0
- package/clojure.set.js +406 -0
- package/clojure.set.js.map +1 -0
- package/clojure.string.js +502 -0
- package/clojure.string.js.map +1 -0
- package/clojure.walk.js +156 -0
- package/clojure.walk.js.map +1 -0
- package/datahike.api.impl.js +621 -0
- package/datahike.api.impl.js.map +1 -0
- package/datahike.api.specification.js +85 -0
- package/datahike.api.specification.js.map +1 -0
- package/datahike.array.js +275 -0
- package/datahike.array.js.map +1 -0
- package/datahike.config.js +437 -0
- package/datahike.config.js.map +1 -0
- package/datahike.connections.js +55 -0
- package/datahike.connections.js.map +1 -0
- package/datahike.connector.js +1248 -0
- package/datahike.connector.js.map +1 -0
- package/datahike.constants.js +66 -0
- package/datahike.constants.js.map +1 -0
- package/datahike.core.js +628 -0
- package/datahike.core.js.map +1 -0
- package/datahike.datom.js +963 -0
- package/datahike.datom.js.map +1 -0
- package/datahike.db.interface.js +819 -0
- package/datahike.db.interface.js.map +1 -0
- package/datahike.db.js +3095 -0
- package/datahike.db.js.map +1 -0
- package/datahike.db.search.js +1004 -0
- package/datahike.db.search.js.map +1 -0
- package/datahike.db.transaction.js +1904 -0
- package/datahike.db.transaction.js.map +1 -0
- package/datahike.db.utils.js +642 -0
- package/datahike.db.utils.js.map +1 -0
- package/datahike.gc.js +1618 -0
- package/datahike.gc.js.map +1 -0
- package/datahike.impl.entity.js +604 -0
- package/datahike.impl.entity.js.map +1 -0
- package/datahike.index.interface.js +484 -0
- package/datahike.index.interface.js.map +1 -0
- package/datahike.index.js +50 -0
- package/datahike.index.js.map +1 -0
- package/datahike.index.persistent_set.js +1250 -0
- package/datahike.index.persistent_set.js.map +1 -0
- package/datahike.js.api.js +2211 -0
- package/datahike.js.api.js.map +1 -0
- package/datahike.lru.js +404 -0
- package/datahike.lru.js.map +1 -0
- package/datahike.pull_api.js +533 -0
- package/datahike.pull_api.js.map +1 -0
- package/datahike.query.js +11891 -0
- package/datahike.query.js.map +1 -0
- package/datahike.query_stats.js +152 -0
- package/datahike.query_stats.js.map +1 -0
- package/datahike.readers.js +166 -0
- package/datahike.readers.js.map +1 -0
- package/datahike.schema.js +251 -0
- package/datahike.schema.js.map +1 -0
- package/datahike.schema_cache.js +66 -0
- package/datahike.schema_cache.js.map +1 -0
- package/datahike.spec.js +70 -0
- package/datahike.spec.js.map +1 -0
- package/datahike.store.js +514 -0
- package/datahike.store.js.map +1 -0
- package/datahike.tools.js +436 -0
- package/datahike.tools.js.map +1 -0
- package/datahike.writer.js +3463 -0
- package/datahike.writer.js.map +1 -0
- package/datahike.writing.js +3168 -0
- package/datahike.writing.js.map +1 -0
- package/datalog.parser.impl.js +1421 -0
- package/datalog.parser.impl.js.map +1 -0
- package/datalog.parser.impl.proto.js +213 -0
- package/datalog.parser.impl.proto.js.map +1 -0
- package/datalog.parser.impl.util.js +117 -0
- package/datalog.parser.impl.util.js.map +1 -0
- package/datalog.parser.js +47 -0
- package/datalog.parser.js.map +1 -0
- package/datalog.parser.pull.js +2603 -0
- package/datalog.parser.pull.js.map +1 -0
- package/datalog.parser.type.js +7502 -0
- package/datalog.parser.type.js.map +1 -0
- package/datalog.parser.util.js +60 -0
- package/datalog.parser.util.js.map +1 -0
- package/environ.core.js +263 -0
- package/environ.core.js.map +1 -0
- package/fress.api.js +607 -0
- package/fress.api.js.map +1 -0
- package/fress.impl.adler32.js +435 -0
- package/fress.impl.adler32.js.map +1 -0
- package/fress.impl.bigint.js +185 -0
- package/fress.impl.bigint.js.map +1 -0
- package/fress.impl.buffer.js +1087 -0
- package/fress.impl.buffer.js.map +1 -0
- package/fress.impl.codes.js +105 -0
- package/fress.impl.codes.js.map +1 -0
- package/fress.impl.hopmap.js +603 -0
- package/fress.impl.hopmap.js.map +1 -0
- package/fress.impl.ranges.js +49 -0
- package/fress.impl.ranges.js.map +1 -0
- package/fress.impl.raw_input.js +837 -0
- package/fress.impl.raw_input.js.map +1 -0
- package/fress.impl.raw_output.js +653 -0
- package/fress.impl.raw_output.js.map +1 -0
- package/fress.impl.table.js +133 -0
- package/fress.impl.table.js.map +1 -0
- package/fress.reader.js +2312 -0
- package/fress.reader.js.map +1 -0
- package/fress.util.js +458 -0
- package/fress.util.js.map +1 -0
- package/fress.writer.js +2141 -0
- package/fress.writer.js.map +1 -0
- package/geheimnis.aes.js +132 -0
- package/geheimnis.aes.js.map +1 -0
- package/hasch.base64.js +42 -0
- package/hasch.base64.js.map +1 -0
- package/hasch.benc.js +201 -0
- package/hasch.benc.js.map +1 -0
- package/hasch.core.js +188 -0
- package/hasch.core.js.map +1 -0
- package/hasch.platform.js +221 -0
- package/hasch.platform.js.map +1 -0
- package/incognito.base.js +276 -0
- package/incognito.base.js.map +1 -0
- package/incognito.edn.js +54 -0
- package/incognito.edn.js.map +1 -0
- package/incognito.fressian.js +330 -0
- package/incognito.fressian.js.map +1 -0
- package/index.d.ts +660 -0
- package/is.simm.partial_cps.async.js +142 -0
- package/is.simm.partial_cps.async.js.map +1 -0
- package/is.simm.partial_cps.runtime.js +65 -0
- package/is.simm.partial_cps.runtime.js.map +1 -0
- package/is.simm.partial_cps.sequence.js +1255 -0
- package/is.simm.partial_cps.sequence.js.map +1 -0
- package/konserve.cache.js +2519 -0
- package/konserve.cache.js.map +1 -0
- package/konserve.compressor.js +502 -0
- package/konserve.compressor.js.map +1 -0
- package/konserve.core.js +8052 -0
- package/konserve.core.js.map +1 -0
- package/konserve.encryptor.js +553 -0
- package/konserve.encryptor.js.map +1 -0
- package/konserve.gc.js +541 -0
- package/konserve.gc.js.map +1 -0
- package/konserve.impl.defaults.js +8290 -0
- package/konserve.impl.defaults.js.map +1 -0
- package/konserve.impl.storage_layout.js +849 -0
- package/konserve.impl.storage_layout.js.map +1 -0
- package/konserve.memory.js +2102 -0
- package/konserve.memory.js.map +1 -0
- package/konserve.node_filestore.js +2951 -0
- package/konserve.node_filestore.js.map +1 -0
- package/konserve.protocols.js +590 -0
- package/konserve.protocols.js.map +1 -0
- package/konserve.serializers.js +562 -0
- package/konserve.serializers.js.map +1 -0
- package/konserve.store.js +2245 -0
- package/konserve.store.js.map +1 -0
- package/konserve.tiered.js +9574 -0
- package/konserve.tiered.js.map +1 -0
- package/konserve.utils.js +180 -0
- package/konserve.utils.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.arrays.js +66 -0
- package/me.tonsky.persistent_sorted_set.arrays.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.branch.js +2779 -0
- package/me.tonsky.persistent_sorted_set.branch.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.btset.js +14196 -0
- package/me.tonsky.persistent_sorted_set.btset.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.impl.node.js +324 -0
- package/me.tonsky.persistent_sorted_set.impl.node.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.impl.storage.js +123 -0
- package/me.tonsky.persistent_sorted_set.impl.storage.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.js +890 -0
- package/me.tonsky.persistent_sorted_set.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.leaf.js +561 -0
- package/me.tonsky.persistent_sorted_set.leaf.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.util.js +402 -0
- package/me.tonsky.persistent_sorted_set.util.js.map +1 -0
- package/medley.core.js +1857 -0
- package/medley.core.js.map +1 -0
- package/package.json +38 -0
- package/spec_tools.core.js +1925 -0
- package/spec_tools.core.js.map +1 -0
- package/spec_tools.data_spec.js +1291 -0
- package/spec_tools.data_spec.js.map +1 -0
- package/spec_tools.form.js +185 -0
- package/spec_tools.form.js.map +1 -0
- package/spec_tools.impl.js +362 -0
- package/spec_tools.impl.js.map +1 -0
- package/spec_tools.parse.js +427 -0
- package/spec_tools.parse.js.map +1 -0
- package/spec_tools.transform.js +288 -0
- package/spec_tools.transform.js.map +1 -0
- package/superv.async.js +8617 -0
- package/superv.async.js.map +1 -0
- package/tailrecursion.priority_map.js +994 -0
- package/tailrecursion.priority_map.js.map +1 -0
- package/taoensso.encore.js +12385 -0
- package/taoensso.encore.js.map +1 -0
- package/taoensso.timbre.appenders.core.js +239 -0
- package/taoensso.timbre.appenders.core.js.map +1 -0
- package/taoensso.timbre.js +1264 -0
- package/taoensso.timbre.js.map +1 -0
- package/taoensso.truss.impl.js +442 -0
- package/taoensso.truss.impl.js.map +1 -0
- package/taoensso.truss.js +743 -0
- package/taoensso.truss.js.map +1 -0
- package/test-config-keys.js +33 -0
- package/test-final.js +36 -0
- package/test-key-duplication.js +67 -0
- package/test.js +557 -0
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
var $CLJS = require("./cljs_env");
|
|
2
|
+
var $jscomp = $CLJS.$jscomp;
|
|
3
|
+
var COMPILED = false;
|
|
4
|
+
require("./cljs.core.js");
|
|
5
|
+
require("./is.simm.partial_cps.runtime.js");
|
|
6
|
+
var environ=$CLJS.environ || ($CLJS.environ = {});
|
|
7
|
+
var fress=$CLJS.fress || ($CLJS.fress = {});
|
|
8
|
+
var datahike=$CLJS.datahike || ($CLJS.datahike = {});
|
|
9
|
+
var clojure=$CLJS.clojure || ($CLJS.clojure = {});
|
|
10
|
+
var hasch=$CLJS.hasch || ($CLJS.hasch = {});
|
|
11
|
+
var tailrecursion=$CLJS.tailrecursion || ($CLJS.tailrecursion = {});
|
|
12
|
+
var superv=$CLJS.superv || ($CLJS.superv = {});
|
|
13
|
+
var geheimnis=$CLJS.geheimnis || ($CLJS.geheimnis = {});
|
|
14
|
+
var is=$CLJS.is || ($CLJS.is = {});
|
|
15
|
+
var cljs=$CLJS.cljs || ($CLJS.cljs = {});
|
|
16
|
+
var cljs_node_io=$CLJS.cljs_node_io || ($CLJS.cljs_node_io = {});
|
|
17
|
+
var goog=$CLJS.goog || ($CLJS.goog = {});
|
|
18
|
+
var konserve=$CLJS.konserve || ($CLJS.konserve = {});
|
|
19
|
+
var datalog=$CLJS.datalog || ($CLJS.datalog = {});
|
|
20
|
+
var spec_tools=$CLJS.spec_tools || ($CLJS.spec_tools = {});
|
|
21
|
+
var taoensso=$CLJS.taoensso || ($CLJS.taoensso = {});
|
|
22
|
+
var incognito=$CLJS.incognito || ($CLJS.incognito = {});
|
|
23
|
+
var medley=$CLJS.medley || ($CLJS.medley = {});
|
|
24
|
+
var me=$CLJS.me || ($CLJS.me = {});
|
|
25
|
+
|
|
26
|
+
$CLJS.SHADOW_ENV.setLoaded("is.simm.partial_cps.async.js");
|
|
27
|
+
|
|
28
|
+
goog.provide('is.simm.partial_cps.async');
|
|
29
|
+
/**
|
|
30
|
+
* Awaits the asynchronous execution of continuation-passing style function
|
|
31
|
+
* async-cb, applying it to args and two extra callback functions: resolve and
|
|
32
|
+
* raise. cps-fn is expected to eventually either call resolve with the result,
|
|
33
|
+
* call raise with the exception or just throw in the calling thread. The
|
|
34
|
+
* return value of cps-fn is ignored. Effectively returns the value passed to
|
|
35
|
+
* resolve or throws the exception passed to raise (or thrown) but does not
|
|
36
|
+
* block the calling tread.
|
|
37
|
+
*
|
|
38
|
+
* Must be called in an asynchronous function. Note that any nested functions
|
|
39
|
+
* defined with fn, letfn, reify or deftype are considered outside of
|
|
40
|
+
* asynchronous scope.
|
|
41
|
+
*/
|
|
42
|
+
is.simm.partial_cps.async.await$ = (function is$simm$partial_cps$async$await(async_cb){
|
|
43
|
+
throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2("await called outside of asynchronous scope",new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"async-cb","async-cb",-1776859474),async_cb], null));
|
|
44
|
+
});
|
|
45
|
+
is.simm.partial_cps.async._STAR_in_trampoline_STAR_ = false;
|
|
46
|
+
/**
|
|
47
|
+
* Invoke a CPS continuation, handling Thunk returns via trampoline.
|
|
48
|
+
*
|
|
49
|
+
* This is the universal continuation invocation wrapper that ensures
|
|
50
|
+
* Thunks are properly trampolined, preventing stack overflow in loops.
|
|
51
|
+
*
|
|
52
|
+
* Usage:
|
|
53
|
+
* (invoke-continuation resolve-fn value)
|
|
54
|
+
* (invoke-continuation reject-fn error)
|
|
55
|
+
*
|
|
56
|
+
* If the continuation returns a Thunk, it will be executed via trampoline.
|
|
57
|
+
* This is essential for loop/recur constructs in CPS-transformed code.
|
|
58
|
+
*/
|
|
59
|
+
is.simm.partial_cps.async.invoke_continuation = (function is$simm$partial_cps$async$invoke_continuation(var_args){
|
|
60
|
+
var args__5732__auto__ = [];
|
|
61
|
+
var len__5726__auto___42732 = arguments.length;
|
|
62
|
+
var i__5727__auto___42733 = (0);
|
|
63
|
+
while(true){
|
|
64
|
+
if((i__5727__auto___42733 < len__5726__auto___42732)){
|
|
65
|
+
args__5732__auto__.push((arguments[i__5727__auto___42733]));
|
|
66
|
+
|
|
67
|
+
var G__42734 = (i__5727__auto___42733 + (1));
|
|
68
|
+
i__5727__auto___42733 = G__42734;
|
|
69
|
+
continue;
|
|
70
|
+
} else {
|
|
71
|
+
}
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
var argseq__5733__auto__ = ((((1) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((1)),(0),null)):null);
|
|
76
|
+
return is.simm.partial_cps.async.invoke_continuation.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__5733__auto__);
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
(is.simm.partial_cps.async.invoke_continuation.cljs$core$IFn$_invoke$arity$variadic = (function (cont_fn,args){
|
|
80
|
+
var result = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cont_fn,args);
|
|
81
|
+
if((result instanceof is.simm.partial_cps.runtime.Thunk)){
|
|
82
|
+
if(cljs.core.truth_(is.simm.partial_cps.async._STAR_in_trampoline_STAR_)){
|
|
83
|
+
return result;
|
|
84
|
+
} else {
|
|
85
|
+
var _STAR_in_trampoline_STAR__orig_val__42698 = is.simm.partial_cps.async._STAR_in_trampoline_STAR_;
|
|
86
|
+
var _STAR_in_trampoline_STAR__temp_val__42699 = true;
|
|
87
|
+
(is.simm.partial_cps.async._STAR_in_trampoline_STAR_ = _STAR_in_trampoline_STAR__temp_val__42699);
|
|
88
|
+
|
|
89
|
+
try{var r = result;
|
|
90
|
+
while(true){
|
|
91
|
+
if((r instanceof is.simm.partial_cps.runtime.Thunk)){
|
|
92
|
+
var G__42736 = (function (){var fexpr__42703 = r.f;
|
|
93
|
+
return (fexpr__42703.cljs$core$IFn$_invoke$arity$0 ? fexpr__42703.cljs$core$IFn$_invoke$arity$0() : fexpr__42703.call(null, ));
|
|
94
|
+
})();
|
|
95
|
+
r = G__42736;
|
|
96
|
+
continue;
|
|
97
|
+
} else {
|
|
98
|
+
return r;
|
|
99
|
+
}
|
|
100
|
+
break;
|
|
101
|
+
}
|
|
102
|
+
}finally {(is.simm.partial_cps.async._STAR_in_trampoline_STAR_ = _STAR_in_trampoline_STAR__orig_val__42698);
|
|
103
|
+
}}
|
|
104
|
+
} else {
|
|
105
|
+
return result;
|
|
106
|
+
}
|
|
107
|
+
}));
|
|
108
|
+
|
|
109
|
+
(is.simm.partial_cps.async.invoke_continuation.cljs$lang$maxFixedArity = (1));
|
|
110
|
+
|
|
111
|
+
/** @this {Function} */
|
|
112
|
+
(is.simm.partial_cps.async.invoke_continuation.cljs$lang$applyTo = (function (seq42689){
|
|
113
|
+
var G__42690 = cljs.core.first(seq42689);
|
|
114
|
+
var seq42689__$1 = cljs.core.next(seq42689);
|
|
115
|
+
var self__5711__auto__ = this;
|
|
116
|
+
return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__42690,seq42689__$1);
|
|
117
|
+
}));
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* Provides effect handler code for await.
|
|
121
|
+
*
|
|
122
|
+
* Receives ctx map containing:
|
|
123
|
+
* - :env - macro expansion environment (&env)
|
|
124
|
+
* - :r - success continuation
|
|
125
|
+
* - :e - error continuation
|
|
126
|
+
* - :breakpoints - registered breakpoints
|
|
127
|
+
* Plus any additional macro-specific context fields.
|
|
128
|
+
*/
|
|
129
|
+
is.simm.partial_cps.async.await_handler = (function is$simm$partial_cps$async$await_handler(ctx,r,e){
|
|
130
|
+
return (function (args){
|
|
131
|
+
if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(args),(1))){
|
|
132
|
+
} else {
|
|
133
|
+
throw (new Error(["Assert failed: ",["Expected 1 argument, got ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(args)].join(''),"\n","(= (count args) 1)"].join('')));
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
var env = new cljs.core.Keyword(null,"env","env",-1815813235).cljs$core$IFn$_invoke$arity$1(ctx);
|
|
137
|
+
return cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","letfn","cljs.core/letfn",-874326064,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,"safe-r__42708__auto__","safe-r__42708__auto__",1565370415,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(null,"v__42709__auto__","v__42709__auto__",-923735235,null),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,"try","try",-1273693247,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,"if","if",1181717262,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol("is.simm.partial-cps.async","*in-trampoline*","is.simm.partial-cps.async/*in-trampoline*",612257243,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,r,null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,"v__42709__auto__","v__42709__auto__",-923735235,null),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","binding","cljs.core/binding",2050379843,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("is.simm.partial-cps.async","*in-trampoline*","is.simm.partial-cps.async/*in-trampoline*",612257243,null),null,(1),null)),(new cljs.core.List(null,true,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","loop","cljs.core/loop",-1829423021,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,"result__42710__auto__","result__42710__auto__",-401313854,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,r,null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,"v__42709__auto__","v__42709__auto__",-923735235,null),null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,"if","if",1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","instance?","cljs.core/instance?",2044751870,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,"is.simm.partial_cps.runtime.Thunk","is.simm.partial_cps.runtime.Thunk",-92524847,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,"result__42710__auto__","result__42710__auto__",-401313854,null),null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,"recur","recur",1202958259,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,".-f",".-f",-1624449551,null),null,(1),null)),(new cljs.core.List(null,cljs.core.with_meta(new cljs.core.Symbol(null,"result__42710__auto__","result__42710__auto__",-401313854,null),cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.array_map,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Keyword(null,"file","file",-1269645878),null,(1),null)),(new cljs.core.List(null,"is/simm/partial_cps/async.cljc",null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Keyword(null,"line","line",212345235),null,(1),null)),(new cljs.core.List(null,70,null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,"column","column",2078222095),null,(1),null)),(new cljs.core.List(null,76,null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,"end-line","end-line",1837326455),null,(1),null)),(new cljs.core.List(null,70,null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,"end-column","end-column",1425389514),null,(1),null)),(new cljs.core.List(null,83,null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,"tag","tag",-1290361223),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,"is.simm.partial_cps.runtime.Thunk","is.simm.partial_cps.runtime.Thunk",-92524847,null),null,(1),null))], 0)))))),null,(1),null))))),null,(1),null))))),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,"result__42710__auto__","result__42710__auto__",-401313854,null),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,"catch","catch",-1616370245,null),null,(1),null)),(new cljs.core.List(null,(cljs.core.truth_(new cljs.core.Keyword(null,"js-globals","js-globals",1670394727).cljs$core$IFn$_invoke$arity$1(env))?new cljs.core.Keyword(null,"default","default",-1987822328):new cljs.core.Symbol("is.simm.partial-cps.async","Throwable","is.simm.partial-cps.async/Throwable",-1695148487,null)),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,"t__42711__auto__","t__42711__auto__",-776906523,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,e,null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,"t__42711__auto__","t__42711__auto__",-776906523,null),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,cljs.core.first(args),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,"safe-r__42708__auto__","safe-r__42708__auto__",1565370415,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,e,null,(1),null))], 0)))),null,(1),null))], 0))));
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
is.simm.partial_cps.async.breakpoints = new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Symbol("is.simm.partial-cps.async","await","is.simm.partial-cps.async/await",-496235343,null),new cljs.core.Symbol("is.simm.partial-cps.async","await-handler","is.simm.partial-cps.async/await-handler",1922316794,null)], null);
|
|
141
|
+
|
|
142
|
+
//# sourceMappingURL=is.simm.partial_cps.async.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["is/simm/partial_cps/async.cljc"],"mappings":"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","names":["is.simm.partial-cps.async/await","async-cb","cljs.core.ex_info","is.simm.partial-cps.async/*in-trampoline*","var_args","args__5732__auto__","len__5726__auto__","i__5727__auto__","argseq__5733__auto__","cljs.core/IndexedSeq","is.simm.partial-cps.async/invoke-continuation","seq42689","G__42690","cljs.core/first","cljs.core/next","self__5711__auto__","cont-fn","args","result","cljs.core.apply","is.simm.partial_cps.runtime/Thunk","*in-trampoline*-orig-val__42698","*in-trampoline*-temp-val__42699","r","fexpr__42703","is.simm.partial-cps.async/await-handler","ctx","e","js/Error","cljs.core._EQ_","cljs.core/count","cljs.core.sequence","cljs.core/seq","cljs.core.concat","cljs.core/List","cljs.core/vec","cljs.core/with-meta","cljs.core/array-map","env","is.simm.partial-cps.async/breakpoints"],"sourcesContent":["(ns is.simm.partial-cps.async\n (:refer-clojure :exclude [await])\n (:require [is.simm.partial-cps.runtime :as runtime]\n #?(:clj [is.simm.partial-cps.ioc :refer [has-breakpoints? invert]]))\n #?(:cljs (:require-macros [is.simm.partial-cps.async :refer [async]])))\n\n(defn await\n \"Awaits the asynchronous execution of continuation-passing style function\n async-cb, applying it to args and two extra callback functions: resolve and\n raise. cps-fn is expected to eventually either call resolve with the result,\n call raise with the exception or just throw in the calling thread. The\n return value of cps-fn is ignored. Effectively returns the value passed to\n resolve or throws the exception passed to raise (or thrown) but does not\n block the calling tread.\n\n Must be called in an asynchronous function. Note that any nested functions\n defined with fn, letfn, reify or deftype are considered outside of\n asynchronous scope.\"\n [async-cb]\n (throw (ex-info \"await called outside of asynchronous scope\" {:async-cb async-cb})))\n\n(def ^:dynamic *in-trampoline* false)\n\n(defn invoke-continuation\n \"Invoke a CPS continuation, handling Thunk returns via trampoline.\n\n This is the universal continuation invocation wrapper that ensures\n Thunks are properly trampolined, preventing stack overflow in loops.\n\n Usage:\n (invoke-continuation resolve-fn value)\n (invoke-continuation reject-fn error)\n\n If the continuation returns a Thunk, it will be executed via trampoline.\n This is essential for loop/recur constructs in CPS-transformed code.\"\n [cont-fn & args]\n (let [result (apply cont-fn args)]\n (if (instance? is.simm.partial_cps.runtime.Thunk result)\n (if *in-trampoline*\n result ; Already in trampoline, return Thunk\n ;; Not in trampoline, execute it\n (binding [*in-trampoline* true]\n (loop [r result]\n (if (instance? is.simm.partial_cps.runtime.Thunk r)\n (recur ((.-f ^is.simm.partial_cps.runtime.Thunk r)))\n r))))\n result)))\n\n(defn await-handler\n \"Provides effect handler code for await.\n\n Receives ctx map containing:\n - :env - macro expansion environment (&env)\n - :r - success continuation\n - :e - error continuation\n - :breakpoints - registered breakpoints\n Plus any additional macro-specific context fields.\"\n [ctx r e]\n (fn [args]\n (assert (= (count args) 1) (str \"Expected 1 argument, got \" args))\n (let [env (:env ctx)]\n `(letfn [(safe-r# [v#]\n (try\n (if *in-trampoline*\n (~r v#)\n (binding [*in-trampoline* true]\n (loop [result# (~r v#)]\n (if (instance? is.simm.partial_cps.runtime.Thunk result#)\n ;; If continuation returns a thunk, trampoline it\n (recur ((.-f ^is.simm.partial_cps.runtime.Thunk result#)))\n result#))))\n (catch ~(if (:js-globals env) :default `Throwable) t# (~e t#))))]\n (~(first args) safe-r# ~e)))))\n\n(def ^:no-doc breakpoints\n {`await `await-handler})\n\n#?(:clj\n (defmacro async\n \"Defines a function that takes a successful and exceptional continuation,\n and runs the body, suspending execution whenever any of the breakpoints (await) is\n encountered, and eventually calling one of the continuations with the\n result.\n\n A call of the form (breakpoint args..) is forwarded to the corresponding handler\n (handler succ exc args..), which is expected to eventually call either succ\n with the value or exc with exception to substitute the original call result\n and resuming the execution.\"\n [& body]\n (let [r (gensym) e (gensym)\n params {:r r :e e :env &env :breakpoints breakpoints}\n form (cons 'do body)]\n `(fn [~r ~e]\n (try\n (if *in-trampoline*\n ~(invert params form)\n (binding [*in-trampoline* true]\n (loop [result# ~(invert params form)]\n (if (instance? is.simm.partial_cps.runtime.Thunk result#)\n ;; If continuation returns a thunk, trampoline it\n (recur ((.-f ^is.simm.partial_cps.runtime.Thunk result#)))\n result#))))\n (catch ~(if (:js-globals &env) :default `Throwable) t# (~e t#)))))))\n"],"x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,65 @@
|
|
|
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("is.simm.partial_cps.runtime.js");
|
|
26
|
+
|
|
27
|
+
goog.provide('is.simm.partial_cps.runtime');
|
|
28
|
+
is.simm.partial_cps.runtime.bound_fn = (function is$simm$partial_cps$runtime$bound_fn(f){
|
|
29
|
+
return cljs.core.identity;
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* @constructor
|
|
34
|
+
*/
|
|
35
|
+
is.simm.partial_cps.runtime.Thunk = (function (f){
|
|
36
|
+
this.f = f;
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
(is.simm.partial_cps.runtime.Thunk.getBasis = (function (){
|
|
40
|
+
return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"f","f",43394975,null)], null);
|
|
41
|
+
}));
|
|
42
|
+
|
|
43
|
+
(is.simm.partial_cps.runtime.Thunk.cljs$lang$type = true);
|
|
44
|
+
|
|
45
|
+
(is.simm.partial_cps.runtime.Thunk.cljs$lang$ctorStr = "is.simm.partial-cps.runtime/Thunk");
|
|
46
|
+
|
|
47
|
+
(is.simm.partial_cps.runtime.Thunk.cljs$lang$ctorPrWriter = (function (this__5287__auto__,writer__5288__auto__,opt__5289__auto__){
|
|
48
|
+
return cljs.core._write(writer__5288__auto__,"is.simm.partial-cps.runtime/Thunk");
|
|
49
|
+
}));
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Positional factory function for is.simm.partial-cps.runtime/Thunk.
|
|
53
|
+
*/
|
|
54
|
+
is.simm.partial_cps.runtime.__GT_Thunk = (function is$simm$partial_cps$runtime$__GT_Thunk(f){
|
|
55
|
+
return (new is.simm.partial_cps.runtime.Thunk(f));
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Create a thunk for trampolining
|
|
60
|
+
*/
|
|
61
|
+
is.simm.partial_cps.runtime.__GT_thunk = (function is$simm$partial_cps$runtime$__GT_thunk(f){
|
|
62
|
+
return (new is.simm.partial_cps.runtime.Thunk(f));
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
//# sourceMappingURL=is.simm.partial_cps.runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["is/simm/partial_cps/runtime.cljc"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,uCAAA,vCAAeA,sFACZC;AADH,AAYWC;;AAEX,AAAA;;;;;;;AAAA;AAAA,CAAA,6CAAA,7CAASK;AAAT,AAAA,AAAA;;;AAAA,CAAA,mDAAA,nDAASA;;AAAT,CAAA,sDAAA,tDAASA;;AAAT,CAAA,2DAAA,WAAAJ,mBAAAC,qBAAAC,9GAASE;AAAT,AAAA,OAAAD,iBAAAF,qBAAA;;;AAAA;;;yCAAA,zCAASI,0FAAOP;AAAhB,AAAA,YAAAM,kCAAgBN;;;AAAPM,AAET;;;yCAAA,zCAAME,0FAEHR;AAFH,AAGE,YAAAM,kCAAQN","names":["is.simm.partial-cps.runtime/bound-fn","f","cljs.core/identity","this__5287__auto__","writer__5288__auto__","opt__5289__auto__","cljs.core/-write","is.simm.partial-cps.runtime/Thunk","is.simm.partial-cps.runtime/->Thunk","is.simm.partial-cps.runtime/->thunk"],"sourcesContent":["(ns is.simm.partial-cps.runtime\n (:refer-clojure :exclude [bound-fn]))\n\n(defn ^:no-doc bound-fn\n [f]\n #?(:clj\n (let [bound-frame (clojure.lang.Var/getThreadBindingFrame)]\n (fn [& args]\n (let [call-site-frame (clojure.lang.Var/getThreadBindingFrame)]\n (clojure.lang.Var/resetThreadBindingFrame bound-frame)\n (try\n (apply f args)\n (finally\n (clojure.lang.Var/resetThreadBindingFrame call-site-frame))))))\n ;; no dynamic binding support for async code in cljs (same for core.async)\n :cljs identity))\n\n(deftype Thunk [f])\n\n(defn ->thunk\n \"Create a thunk for trampolining\"\n [f]\n (Thunk. f))\n"],"x_google_ignoreList":[0]}
|