@anysoftinc/anydb-sdk 0.1.2 → 0.4.0

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 (48) hide show
  1. package/README.md +100 -163
  2. package/dist/anydb.datascript.core.js +336 -0
  3. package/dist/anydb.datascript.rules.js +29 -0
  4. package/dist/anydb.datascript.schema.js +35 -0
  5. package/dist/client.d.ts +46 -96
  6. package/dist/client.d.ts.map +1 -1
  7. package/dist/client.js +332 -305
  8. package/dist/cljs.core.js +38752 -0
  9. package/dist/cljs.reader.js +450 -0
  10. package/dist/cljs.tools.reader.edn.js +945 -0
  11. package/dist/cljs.tools.reader.impl.commons.js +205 -0
  12. package/dist/cljs.tools.reader.impl.errors.js +429 -0
  13. package/dist/cljs.tools.reader.impl.inspect.js +170 -0
  14. package/dist/cljs.tools.reader.impl.utils.js +413 -0
  15. package/dist/cljs.tools.reader.js +1815 -0
  16. package/dist/cljs.tools.reader.reader_types.js +826 -0
  17. package/dist/cljs_env.js +7672 -0
  18. package/dist/clojure.data.js +307 -0
  19. package/dist/clojure.edn.js +107 -0
  20. package/dist/clojure.set.js +394 -0
  21. package/dist/clojure.string.js +490 -0
  22. package/dist/clojure.walk.js +144 -0
  23. package/dist/datascript-backend.d.ts +26 -0
  24. package/dist/datascript-backend.d.ts.map +1 -0
  25. package/dist/datascript-backend.js +113 -0
  26. package/dist/datascript.built_ins.js +680 -0
  27. package/dist/datascript.conn.js +814 -0
  28. package/dist/datascript.core.js +1285 -0
  29. package/dist/datascript.db.js +4058 -0
  30. package/dist/datascript.impl.entity.js +588 -0
  31. package/dist/datascript.lru.js +213 -0
  32. package/dist/datascript.parser.js +8598 -0
  33. package/dist/datascript.pull_api.js +2287 -0
  34. package/dist/datascript.pull_parser.js +865 -0
  35. package/dist/datascript.query.js +2785 -0
  36. package/dist/datascript.serialize.js +352 -0
  37. package/dist/datascript.storage.js +50 -0
  38. package/dist/datascript.util.js +82 -0
  39. package/dist/extend_clj.core.js +134 -0
  40. package/dist/me.tonsky.persistent_sorted_set.arrays.js +54 -0
  41. package/dist/me.tonsky.persistent_sorted_set.js +2485 -0
  42. package/dist/nextauth-adapter.d.ts +7 -2
  43. package/dist/nextauth-adapter.d.ts.map +1 -1
  44. package/dist/nextauth-adapter.js +251 -149
  45. package/package.json +9 -5
  46. package/dist/query-builder.d.ts +0 -126
  47. package/dist/query-builder.d.ts.map +0 -1
  48. package/dist/query-builder.js +0 -207
@@ -0,0 +1,2287 @@
1
+ var $CLJS = require("./cljs_env");
2
+ var $jscomp = $CLJS.$jscomp;
3
+ var COMPILED = false;
4
+ require("./cljs.core.js");
5
+ require("./clojure.string.js");
6
+ require("./datascript.pull_parser.js");
7
+ require("./datascript.db.js");
8
+ require("./datascript.lru.js");
9
+ require("./me.tonsky.persistent_sorted_set.js");
10
+ var anydb=$CLJS.anydb || ($CLJS.anydb = {});
11
+ var clojure=$CLJS.clojure || ($CLJS.clojure = {});
12
+ var cljs=$CLJS.cljs || ($CLJS.cljs = {});
13
+ var goog=$CLJS.goog || ($CLJS.goog = {});
14
+ var datascript=$CLJS.datascript || ($CLJS.datascript = {});
15
+ var me=$CLJS.me || ($CLJS.me = {});
16
+ var extend_clj=$CLJS.extend_clj || ($CLJS.extend_clj = {});
17
+
18
+ $CLJS.SHADOW_ENV.setLoaded("datascript.pull_api.js");
19
+
20
+ goog.provide('datascript.pull_api');
21
+
22
+
23
+
24
+ datascript.pull_api.first_seq = (function datascript$pull_api$first_seq(xs){
25
+ if((xs == null)){
26
+ return null;
27
+ } else {
28
+ return cljs.core._first(xs);
29
+ }
30
+ });
31
+ datascript.pull_api.next_seq = (function datascript$pull_api$next_seq(xs){
32
+ if((xs == null)){
33
+ return null;
34
+ } else {
35
+ return cljs.core._next(xs);
36
+ }
37
+ });
38
+ datascript.pull_api.conj_seq = (function datascript$pull_api$conj_seq(xs,x){
39
+ if((xs == null)){
40
+ return (new cljs.core.List(null,x,null,(1),null));
41
+ } else {
42
+ return cljs.core._conj(xs,x);
43
+ }
44
+ });
45
+ datascript.pull_api.assoc_some_BANG_ = (function datascript$pull_api$assoc_some_BANG_(m,k,v){
46
+ if((v == null)){
47
+ return m;
48
+ } else {
49
+ return cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(m,k,v);
50
+ }
51
+ });
52
+ datascript.pull_api.conj_some_BANG_ = (function datascript$pull_api$conj_some_BANG_(xs,v){
53
+ if((v == null)){
54
+ return xs;
55
+ } else {
56
+ return cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(xs,v);
57
+ }
58
+ });
59
+
60
+ /**
61
+ * @constructor
62
+ * @implements {cljs.core.IRecord}
63
+ * @implements {cljs.core.IKVReduce}
64
+ * @implements {cljs.core.IEquiv}
65
+ * @implements {cljs.core.IHash}
66
+ * @implements {cljs.core.ICollection}
67
+ * @implements {cljs.core.ICounted}
68
+ * @implements {cljs.core.ISeqable}
69
+ * @implements {cljs.core.IMeta}
70
+ * @implements {cljs.core.ICloneable}
71
+ * @implements {cljs.core.IPrintWithWriter}
72
+ * @implements {cljs.core.IIterable}
73
+ * @implements {cljs.core.IWithMeta}
74
+ * @implements {cljs.core.IAssociative}
75
+ * @implements {cljs.core.IMap}
76
+ * @implements {cljs.core.ILookup}
77
+ */
78
+ datascript.pull_api.Context = (function (db,visitor,__meta,__extmap,__hash){
79
+ this.db = db;
80
+ this.visitor = visitor;
81
+ this.__meta = __meta;
82
+ this.__extmap = __extmap;
83
+ this.__hash = __hash;
84
+ this.cljs$lang$protocol_mask$partition0$ = 2230716170;
85
+ this.cljs$lang$protocol_mask$partition1$ = 139264;
86
+ });
87
+ (datascript.pull_api.Context.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__5300__auto__,k__5301__auto__){
88
+ var self__ = this;
89
+ var this__5300__auto____$1 = this;
90
+ return this__5300__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__5301__auto__,null);
91
+ }));
92
+
93
+ (datascript.pull_api.Context.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__5302__auto__,k13901,else__5303__auto__){
94
+ var self__ = this;
95
+ var this__5302__auto____$1 = this;
96
+ var G__13909 = k13901;
97
+ var G__13909__$1 = (((G__13909 instanceof cljs.core.Keyword))?G__13909.fqn:null);
98
+ switch (G__13909__$1) {
99
+ case "db":
100
+ return self__.db;
101
+
102
+ break;
103
+ case "visitor":
104
+ return self__.visitor;
105
+
106
+ break;
107
+ default:
108
+ return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k13901,else__5303__auto__);
109
+
110
+ }
111
+ }));
112
+
113
+ (datascript.pull_api.Context.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__5320__auto__,f__5321__auto__,init__5322__auto__){
114
+ var self__ = this;
115
+ var this__5320__auto____$1 = this;
116
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__5323__auto__,p__13910){
117
+ var vec__13911 = p__13910;
118
+ var k__5324__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13911,(0),null);
119
+ var v__5325__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13911,(1),null);
120
+ return (f__5321__auto__.cljs$core$IFn$_invoke$arity$3 ? f__5321__auto__.cljs$core$IFn$_invoke$arity$3(ret__5323__auto__,k__5324__auto__,v__5325__auto__) : f__5321__auto__.call(null,ret__5323__auto__,k__5324__auto__,v__5325__auto__));
121
+ }),init__5322__auto__,this__5320__auto____$1);
122
+ }));
123
+
124
+ (datascript.pull_api.Context.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__5315__auto__,writer__5316__auto__,opts__5317__auto__){
125
+ var self__ = this;
126
+ var this__5315__auto____$1 = this;
127
+ var pr_pair__5318__auto__ = (function (keyval__5319__auto__){
128
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,cljs.core.pr_writer,""," ","",opts__5317__auto__,keyval__5319__auto__);
129
+ });
130
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,pr_pair__5318__auto__,"#datascript.pull-api.Context{",", ","}",opts__5317__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"db","db",993250759),self__.db],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"visitor","visitor",-1026865865),self__.visitor],null))], null),self__.__extmap));
131
+ }));
132
+
133
+ (datascript.pull_api.Context.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__13900){
134
+ var self__ = this;
135
+ var G__13900__$1 = this;
136
+ return (new cljs.core.RecordIter((0),G__13900__$1,2,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"db","db",993250759),new cljs.core.Keyword(null,"visitor","visitor",-1026865865)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
137
+ }));
138
+
139
+ (datascript.pull_api.Context.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__5298__auto__){
140
+ var self__ = this;
141
+ var this__5298__auto____$1 = this;
142
+ return self__.__meta;
143
+ }));
144
+
145
+ (datascript.pull_api.Context.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__5295__auto__){
146
+ var self__ = this;
147
+ var this__5295__auto____$1 = this;
148
+ return (new datascript.pull_api.Context(self__.db,self__.visitor,self__.__meta,self__.__extmap,self__.__hash));
149
+ }));
150
+
151
+ (datascript.pull_api.Context.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__5304__auto__){
152
+ var self__ = this;
153
+ var this__5304__auto____$1 = this;
154
+ return (2 + cljs.core.count(self__.__extmap));
155
+ }));
156
+
157
+ (datascript.pull_api.Context.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__5296__auto__){
158
+ var self__ = this;
159
+ var this__5296__auto____$1 = this;
160
+ var h__5111__auto__ = self__.__hash;
161
+ if((!((h__5111__auto__ == null)))){
162
+ return h__5111__auto__;
163
+ } else {
164
+ var h__5111__auto____$1 = (function (coll__5297__auto__){
165
+ return (1727735959 ^ cljs.core.hash_unordered_coll(coll__5297__auto__));
166
+ })(this__5296__auto____$1);
167
+ (self__.__hash = h__5111__auto____$1);
168
+
169
+ return h__5111__auto____$1;
170
+ }
171
+ }));
172
+
173
+ (datascript.pull_api.Context.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this13902,other13903){
174
+ var self__ = this;
175
+ var this13902__$1 = this;
176
+ return (((!((other13903 == null)))) && ((((this13902__$1.constructor === other13903.constructor)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13902__$1.db,other13903.db)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13902__$1.visitor,other13903.visitor)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13902__$1.__extmap,other13903.__extmap)))))))));
177
+ }));
178
+
179
+ (datascript.pull_api.Context.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__5310__auto__,k__5311__auto__){
180
+ var self__ = this;
181
+ var this__5310__auto____$1 = this;
182
+ if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"db","db",993250759),null,new cljs.core.Keyword(null,"visitor","visitor",-1026865865),null], null), null),k__5311__auto__)){
183
+ return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__5310__auto____$1),self__.__meta),k__5311__auto__);
184
+ } else {
185
+ return (new datascript.pull_api.Context(self__.db,self__.visitor,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__5311__auto__)),null));
186
+ }
187
+ }));
188
+
189
+ (datascript.pull_api.Context.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 = (function (this__5307__auto__,k13901){
190
+ var self__ = this;
191
+ var this__5307__auto____$1 = this;
192
+ var G__13918 = k13901;
193
+ var G__13918__$1 = (((G__13918 instanceof cljs.core.Keyword))?G__13918.fqn:null);
194
+ switch (G__13918__$1) {
195
+ case "db":
196
+ case "visitor":
197
+ return true;
198
+
199
+ break;
200
+ default:
201
+ return cljs.core.contains_QMARK_(self__.__extmap,k13901);
202
+
203
+ }
204
+ }));
205
+
206
+ (datascript.pull_api.Context.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__5308__auto__,k__5309__auto__,G__13900){
207
+ var self__ = this;
208
+ var this__5308__auto____$1 = this;
209
+ var pred__13920 = cljs.core.keyword_identical_QMARK_;
210
+ var expr__13921 = k__5309__auto__;
211
+ if(cljs.core.truth_((pred__13920.cljs$core$IFn$_invoke$arity$2 ? pred__13920.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"db","db",993250759),expr__13921) : pred__13920.call(null,new cljs.core.Keyword(null,"db","db",993250759),expr__13921)))){
212
+ return (new datascript.pull_api.Context(G__13900,self__.visitor,self__.__meta,self__.__extmap,null));
213
+ } else {
214
+ if(cljs.core.truth_((pred__13920.cljs$core$IFn$_invoke$arity$2 ? pred__13920.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"visitor","visitor",-1026865865),expr__13921) : pred__13920.call(null,new cljs.core.Keyword(null,"visitor","visitor",-1026865865),expr__13921)))){
215
+ return (new datascript.pull_api.Context(self__.db,G__13900,self__.__meta,self__.__extmap,null));
216
+ } else {
217
+ return (new datascript.pull_api.Context(self__.db,self__.visitor,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__5309__auto__,G__13900),null));
218
+ }
219
+ }
220
+ }));
221
+
222
+ (datascript.pull_api.Context.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__5313__auto__){
223
+ var self__ = this;
224
+ var this__5313__auto____$1 = this;
225
+ return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,"db","db",993250759),self__.db,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"visitor","visitor",-1026865865),self__.visitor,null))], null),self__.__extmap));
226
+ }));
227
+
228
+ (datascript.pull_api.Context.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__5299__auto__,G__13900){
229
+ var self__ = this;
230
+ var this__5299__auto____$1 = this;
231
+ return (new datascript.pull_api.Context(self__.db,self__.visitor,G__13900,self__.__extmap,self__.__hash));
232
+ }));
233
+
234
+ (datascript.pull_api.Context.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__5305__auto__,entry__5306__auto__){
235
+ var self__ = this;
236
+ var this__5305__auto____$1 = this;
237
+ if(cljs.core.vector_QMARK_(entry__5306__auto__)){
238
+ return this__5305__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__5306__auto__,(0)),cljs.core._nth(entry__5306__auto__,(1)));
239
+ } else {
240
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__5305__auto____$1,entry__5306__auto__);
241
+ }
242
+ }));
243
+
244
+ (datascript.pull_api.Context.getBasis = (function (){
245
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"db","db",-1661185010,null),new cljs.core.Symbol(null,"visitor","visitor",613665662,null)], null);
246
+ }));
247
+
248
+ (datascript.pull_api.Context.cljs$lang$type = true);
249
+
250
+ (datascript.pull_api.Context.cljs$lang$ctorPrSeq = (function (this__5346__auto__){
251
+ return (new cljs.core.List(null,"datascript.pull-api/Context",null,(1),null));
252
+ }));
253
+
254
+ (datascript.pull_api.Context.cljs$lang$ctorPrWriter = (function (this__5346__auto__,writer__5347__auto__){
255
+ return cljs.core._write(writer__5347__auto__,"datascript.pull-api/Context");
256
+ }));
257
+
258
+ /**
259
+ * Positional factory function for datascript.pull-api/Context.
260
+ */
261
+ datascript.pull_api.__GT_Context = (function datascript$pull_api$__GT_Context(db,visitor){
262
+ return (new datascript.pull_api.Context(db,visitor,null,null,null));
263
+ });
264
+
265
+ /**
266
+ * Factory function for datascript.pull-api/Context, taking a map of keywords to field values.
267
+ */
268
+ datascript.pull_api.map__GT_Context = (function datascript$pull_api$map__GT_Context(G__13908){
269
+ var extmap__5342__auto__ = (function (){var G__13923 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__13908,new cljs.core.Keyword(null,"db","db",993250759),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,"visitor","visitor",-1026865865)], 0));
270
+ if(cljs.core.record_QMARK_(G__13908)){
271
+ return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__13923);
272
+ } else {
273
+ return G__13923;
274
+ }
275
+ })();
276
+ return (new datascript.pull_api.Context(new cljs.core.Keyword(null,"db","db",993250759).cljs$core$IFn$_invoke$arity$1(G__13908),new cljs.core.Keyword(null,"visitor","visitor",-1026865865).cljs$core$IFn$_invoke$arity$1(G__13908),null,cljs.core.not_empty(extmap__5342__auto__),null));
277
+ });
278
+
279
+ datascript.pull_api.visit = (function datascript$pull_api$visit(context,pattern,e,a,v){
280
+ var temp__5808__auto__ = context.visitor;
281
+ if((temp__5808__auto__ == null)){
282
+ return null;
283
+ } else {
284
+ var visitor = temp__5808__auto__;
285
+ return (visitor.cljs$core$IFn$_invoke$arity$4 ? visitor.cljs$core$IFn$_invoke$arity$4(pattern,e,a,v) : visitor.call(null,pattern,e,a,v));
286
+ }
287
+ });
288
+
289
+ /**
290
+ * @interface
291
+ */
292
+ datascript.pull_api.IFrame = function(){};
293
+
294
+ var datascript$pull_api$IFrame$_merge$dyn_14233 = (function (this$,result){
295
+ var x__5350__auto__ = (((this$ == null))?null:this$);
296
+ var m__5351__auto__ = (datascript.pull_api._merge[goog.typeOf(x__5350__auto__)]);
297
+ if((!((m__5351__auto__ == null)))){
298
+ return (m__5351__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5351__auto__.cljs$core$IFn$_invoke$arity$2(this$,result) : m__5351__auto__.call(null,this$,result));
299
+ } else {
300
+ var m__5349__auto__ = (datascript.pull_api._merge["_"]);
301
+ if((!((m__5349__auto__ == null)))){
302
+ return (m__5349__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5349__auto__.cljs$core$IFn$_invoke$arity$2(this$,result) : m__5349__auto__.call(null,this$,result));
303
+ } else {
304
+ throw cljs.core.missing_protocol("IFrame.-merge",this$);
305
+ }
306
+ }
307
+ });
308
+ datascript.pull_api._merge = (function datascript$pull_api$_merge(this$,result){
309
+ if((((!((this$ == null)))) && ((!((this$.datascript$pull_api$IFrame$_merge$arity$2 == null)))))){
310
+ return this$.datascript$pull_api$IFrame$_merge$arity$2(this$,result);
311
+ } else {
312
+ return datascript$pull_api$IFrame$_merge$dyn_14233(this$,result);
313
+ }
314
+ });
315
+
316
+ var datascript$pull_api$IFrame$_run$dyn_14235 = (function (this$,context){
317
+ var x__5350__auto__ = (((this$ == null))?null:this$);
318
+ var m__5351__auto__ = (datascript.pull_api._run[goog.typeOf(x__5350__auto__)]);
319
+ if((!((m__5351__auto__ == null)))){
320
+ return (m__5351__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5351__auto__.cljs$core$IFn$_invoke$arity$2(this$,context) : m__5351__auto__.call(null,this$,context));
321
+ } else {
322
+ var m__5349__auto__ = (datascript.pull_api._run["_"]);
323
+ if((!((m__5349__auto__ == null)))){
324
+ return (m__5349__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5349__auto__.cljs$core$IFn$_invoke$arity$2(this$,context) : m__5349__auto__.call(null,this$,context));
325
+ } else {
326
+ throw cljs.core.missing_protocol("IFrame.-run",this$);
327
+ }
328
+ }
329
+ });
330
+ datascript.pull_api._run = (function datascript$pull_api$_run(this$,context){
331
+ if((((!((this$ == null)))) && ((!((this$.datascript$pull_api$IFrame$_run$arity$2 == null)))))){
332
+ return this$.datascript$pull_api$IFrame$_run$arity$2(this$,context);
333
+ } else {
334
+ return datascript$pull_api$IFrame$_run$dyn_14235(this$,context);
335
+ }
336
+ });
337
+
338
+ var datascript$pull_api$IFrame$_str$dyn_14236 = (function (this$){
339
+ var x__5350__auto__ = (((this$ == null))?null:this$);
340
+ var m__5351__auto__ = (datascript.pull_api._str[goog.typeOf(x__5350__auto__)]);
341
+ if((!((m__5351__auto__ == null)))){
342
+ return (m__5351__auto__.cljs$core$IFn$_invoke$arity$1 ? m__5351__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__5351__auto__.call(null,this$));
343
+ } else {
344
+ var m__5349__auto__ = (datascript.pull_api._str["_"]);
345
+ if((!((m__5349__auto__ == null)))){
346
+ return (m__5349__auto__.cljs$core$IFn$_invoke$arity$1 ? m__5349__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__5349__auto__.call(null,this$));
347
+ } else {
348
+ throw cljs.core.missing_protocol("IFrame.-str",this$);
349
+ }
350
+ }
351
+ });
352
+ datascript.pull_api._str = (function datascript$pull_api$_str(this$){
353
+ if((((!((this$ == null)))) && ((!((this$.datascript$pull_api$IFrame$_str$arity$1 == null)))))){
354
+ return this$.datascript$pull_api$IFrame$_str$arity$1(this$);
355
+ } else {
356
+ return datascript$pull_api$IFrame$_str$dyn_14236(this$);
357
+ }
358
+ });
359
+
360
+ datascript.pull_api.attr_str = (function datascript$pull_api$attr_str(attr){
361
+ var or__5002__auto__ = new cljs.core.Keyword(null,"as","as",1148689641).cljs$core$IFn$_invoke$arity$1(attr);
362
+ if(cljs.core.truth_(or__5002__auto__)){
363
+ return or__5002__auto__;
364
+ } else {
365
+ return new cljs.core.Keyword(null,"name","name",1843675177).cljs$core$IFn$_invoke$arity$1(attr);
366
+ }
367
+ });
368
+
369
+ /**
370
+ * @constructor
371
+ * @implements {cljs.core.IRecord}
372
+ * @implements {datascript.pull_api.IFrame}
373
+ * @implements {cljs.core.IKVReduce}
374
+ * @implements {cljs.core.IEquiv}
375
+ * @implements {cljs.core.IHash}
376
+ * @implements {cljs.core.ICollection}
377
+ * @implements {cljs.core.ICounted}
378
+ * @implements {cljs.core.ISeqable}
379
+ * @implements {cljs.core.IMeta}
380
+ * @implements {cljs.core.ICloneable}
381
+ * @implements {cljs.core.IPrintWithWriter}
382
+ * @implements {cljs.core.IIterable}
383
+ * @implements {cljs.core.IWithMeta}
384
+ * @implements {cljs.core.IAssociative}
385
+ * @implements {cljs.core.IMap}
386
+ * @implements {cljs.core.ILookup}
387
+ */
388
+ datascript.pull_api.ResultFrame = (function (value,datoms,__meta,__extmap,__hash){
389
+ this.value = value;
390
+ this.datoms = datoms;
391
+ this.__meta = __meta;
392
+ this.__extmap = __extmap;
393
+ this.__hash = __hash;
394
+ this.cljs$lang$protocol_mask$partition0$ = 2230716170;
395
+ this.cljs$lang$protocol_mask$partition1$ = 139264;
396
+ });
397
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__5300__auto__,k__5301__auto__){
398
+ var self__ = this;
399
+ var this__5300__auto____$1 = this;
400
+ return this__5300__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__5301__auto__,null);
401
+ }));
402
+
403
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__5302__auto__,k13938,else__5303__auto__){
404
+ var self__ = this;
405
+ var this__5302__auto____$1 = this;
406
+ var G__13942 = k13938;
407
+ var G__13942__$1 = (((G__13942 instanceof cljs.core.Keyword))?G__13942.fqn:null);
408
+ switch (G__13942__$1) {
409
+ case "value":
410
+ return self__.value;
411
+
412
+ break;
413
+ case "datoms":
414
+ return self__.datoms;
415
+
416
+ break;
417
+ default:
418
+ return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k13938,else__5303__auto__);
419
+
420
+ }
421
+ }));
422
+
423
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__5320__auto__,f__5321__auto__,init__5322__auto__){
424
+ var self__ = this;
425
+ var this__5320__auto____$1 = this;
426
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__5323__auto__,p__13943){
427
+ var vec__13944 = p__13943;
428
+ var k__5324__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13944,(0),null);
429
+ var v__5325__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13944,(1),null);
430
+ return (f__5321__auto__.cljs$core$IFn$_invoke$arity$3 ? f__5321__auto__.cljs$core$IFn$_invoke$arity$3(ret__5323__auto__,k__5324__auto__,v__5325__auto__) : f__5321__auto__.call(null,ret__5323__auto__,k__5324__auto__,v__5325__auto__));
431
+ }),init__5322__auto__,this__5320__auto____$1);
432
+ }));
433
+
434
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__5315__auto__,writer__5316__auto__,opts__5317__auto__){
435
+ var self__ = this;
436
+ var this__5315__auto____$1 = this;
437
+ var pr_pair__5318__auto__ = (function (keyval__5319__auto__){
438
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,cljs.core.pr_writer,""," ","",opts__5317__auto__,keyval__5319__auto__);
439
+ });
440
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,pr_pair__5318__auto__,"#datascript.pull-api.ResultFrame{",", ","}",opts__5317__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"value","value",305978217),self__.value],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"datoms","datoms",-290874434),self__.datoms],null))], null),self__.__extmap));
441
+ }));
442
+
443
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__13937){
444
+ var self__ = this;
445
+ var G__13937__$1 = this;
446
+ return (new cljs.core.RecordIter((0),G__13937__$1,2,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"value","value",305978217),new cljs.core.Keyword(null,"datoms","datoms",-290874434)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
447
+ }));
448
+
449
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__5298__auto__){
450
+ var self__ = this;
451
+ var this__5298__auto____$1 = this;
452
+ return self__.__meta;
453
+ }));
454
+
455
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__5295__auto__){
456
+ var self__ = this;
457
+ var this__5295__auto____$1 = this;
458
+ return (new datascript.pull_api.ResultFrame(self__.value,self__.datoms,self__.__meta,self__.__extmap,self__.__hash));
459
+ }));
460
+
461
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__5304__auto__){
462
+ var self__ = this;
463
+ var this__5304__auto____$1 = this;
464
+ return (2 + cljs.core.count(self__.__extmap));
465
+ }));
466
+
467
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__5296__auto__){
468
+ var self__ = this;
469
+ var this__5296__auto____$1 = this;
470
+ var h__5111__auto__ = self__.__hash;
471
+ if((!((h__5111__auto__ == null)))){
472
+ return h__5111__auto__;
473
+ } else {
474
+ var h__5111__auto____$1 = (function (coll__5297__auto__){
475
+ return (836381841 ^ cljs.core.hash_unordered_coll(coll__5297__auto__));
476
+ })(this__5296__auto____$1);
477
+ (self__.__hash = h__5111__auto____$1);
478
+
479
+ return h__5111__auto____$1;
480
+ }
481
+ }));
482
+
483
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this13939,other13940){
484
+ var self__ = this;
485
+ var this13939__$1 = this;
486
+ return (((!((other13940 == null)))) && ((((this13939__$1.constructor === other13940.constructor)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13939__$1.value,other13940.value)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13939__$1.datoms,other13940.datoms)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13939__$1.__extmap,other13940.__extmap)))))))));
487
+ }));
488
+
489
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__5310__auto__,k__5311__auto__){
490
+ var self__ = this;
491
+ var this__5310__auto____$1 = this;
492
+ if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"value","value",305978217),null,new cljs.core.Keyword(null,"datoms","datoms",-290874434),null], null), null),k__5311__auto__)){
493
+ return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__5310__auto____$1),self__.__meta),k__5311__auto__);
494
+ } else {
495
+ return (new datascript.pull_api.ResultFrame(self__.value,self__.datoms,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__5311__auto__)),null));
496
+ }
497
+ }));
498
+
499
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 = (function (this__5307__auto__,k13938){
500
+ var self__ = this;
501
+ var this__5307__auto____$1 = this;
502
+ var G__13953 = k13938;
503
+ var G__13953__$1 = (((G__13953 instanceof cljs.core.Keyword))?G__13953.fqn:null);
504
+ switch (G__13953__$1) {
505
+ case "value":
506
+ case "datoms":
507
+ return true;
508
+
509
+ break;
510
+ default:
511
+ return cljs.core.contains_QMARK_(self__.__extmap,k13938);
512
+
513
+ }
514
+ }));
515
+
516
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__5308__auto__,k__5309__auto__,G__13937){
517
+ var self__ = this;
518
+ var this__5308__auto____$1 = this;
519
+ var pred__13954 = cljs.core.keyword_identical_QMARK_;
520
+ var expr__13955 = k__5309__auto__;
521
+ if(cljs.core.truth_((pred__13954.cljs$core$IFn$_invoke$arity$2 ? pred__13954.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"value","value",305978217),expr__13955) : pred__13954.call(null,new cljs.core.Keyword(null,"value","value",305978217),expr__13955)))){
522
+ return (new datascript.pull_api.ResultFrame(G__13937,self__.datoms,self__.__meta,self__.__extmap,null));
523
+ } else {
524
+ if(cljs.core.truth_((pred__13954.cljs$core$IFn$_invoke$arity$2 ? pred__13954.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"datoms","datoms",-290874434),expr__13955) : pred__13954.call(null,new cljs.core.Keyword(null,"datoms","datoms",-290874434),expr__13955)))){
525
+ return (new datascript.pull_api.ResultFrame(self__.value,G__13937,self__.__meta,self__.__extmap,null));
526
+ } else {
527
+ return (new datascript.pull_api.ResultFrame(self__.value,self__.datoms,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__5309__auto__,G__13937),null));
528
+ }
529
+ }
530
+ }));
531
+
532
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__5313__auto__){
533
+ var self__ = this;
534
+ var this__5313__auto____$1 = this;
535
+ return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,"value","value",305978217),self__.value,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"datoms","datoms",-290874434),self__.datoms,null))], null),self__.__extmap));
536
+ }));
537
+
538
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__5299__auto__,G__13937){
539
+ var self__ = this;
540
+ var this__5299__auto____$1 = this;
541
+ return (new datascript.pull_api.ResultFrame(self__.value,self__.datoms,G__13937,self__.__extmap,self__.__hash));
542
+ }));
543
+
544
+ (datascript.pull_api.ResultFrame.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__5305__auto__,entry__5306__auto__){
545
+ var self__ = this;
546
+ var this__5305__auto____$1 = this;
547
+ if(cljs.core.vector_QMARK_(entry__5306__auto__)){
548
+ return this__5305__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__5306__auto__,(0)),cljs.core._nth(entry__5306__auto__,(1)));
549
+ } else {
550
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__5305__auto____$1,entry__5306__auto__);
551
+ }
552
+ }));
553
+
554
+ (datascript.pull_api.ResultFrame.prototype.datascript$pull_api$IFrame$ = cljs.core.PROTOCOL_SENTINEL);
555
+
556
+ (datascript.pull_api.ResultFrame.prototype.datascript$pull_api$IFrame$_str$arity$1 = (function (this$){
557
+ var self__ = this;
558
+ var this$__$1 = this;
559
+ return ["ResultFrame<value=",cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.value),">"].join('');
560
+ }));
561
+
562
+ (datascript.pull_api.ResultFrame.getBasis = (function (){
563
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"value","value",1946509744,null),new cljs.core.Symbol(null,"datoms","datoms",1349657093,null)], null);
564
+ }));
565
+
566
+ (datascript.pull_api.ResultFrame.cljs$lang$type = true);
567
+
568
+ (datascript.pull_api.ResultFrame.cljs$lang$ctorPrSeq = (function (this__5346__auto__){
569
+ return (new cljs.core.List(null,"datascript.pull-api/ResultFrame",null,(1),null));
570
+ }));
571
+
572
+ (datascript.pull_api.ResultFrame.cljs$lang$ctorPrWriter = (function (this__5346__auto__,writer__5347__auto__){
573
+ return cljs.core._write(writer__5347__auto__,"datascript.pull-api/ResultFrame");
574
+ }));
575
+
576
+ /**
577
+ * Positional factory function for datascript.pull-api/ResultFrame.
578
+ */
579
+ datascript.pull_api.__GT_ResultFrame = (function datascript$pull_api$__GT_ResultFrame(value,datoms){
580
+ return (new datascript.pull_api.ResultFrame(value,datoms,null,null,null));
581
+ });
582
+
583
+ /**
584
+ * Factory function for datascript.pull-api/ResultFrame, taking a map of keywords to field values.
585
+ */
586
+ datascript.pull_api.map__GT_ResultFrame = (function datascript$pull_api$map__GT_ResultFrame(G__13941){
587
+ var extmap__5342__auto__ = (function (){var G__13961 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__13941,new cljs.core.Keyword(null,"value","value",305978217),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,"datoms","datoms",-290874434)], 0));
588
+ if(cljs.core.record_QMARK_(G__13941)){
589
+ return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__13961);
590
+ } else {
591
+ return G__13961;
592
+ }
593
+ })();
594
+ return (new datascript.pull_api.ResultFrame(new cljs.core.Keyword(null,"value","value",305978217).cljs$core$IFn$_invoke$arity$1(G__13941),new cljs.core.Keyword(null,"datoms","datoms",-290874434).cljs$core$IFn$_invoke$arity$1(G__13941),null,cljs.core.not_empty(extmap__5342__auto__),null));
595
+ });
596
+
597
+
598
+ /**
599
+ * @constructor
600
+ * @implements {cljs.core.IRecord}
601
+ * @implements {datascript.pull_api.IFrame}
602
+ * @implements {cljs.core.IKVReduce}
603
+ * @implements {cljs.core.IEquiv}
604
+ * @implements {cljs.core.IHash}
605
+ * @implements {cljs.core.ICollection}
606
+ * @implements {cljs.core.ICounted}
607
+ * @implements {cljs.core.ISeqable}
608
+ * @implements {cljs.core.IMeta}
609
+ * @implements {cljs.core.ICloneable}
610
+ * @implements {cljs.core.IPrintWithWriter}
611
+ * @implements {cljs.core.IIterable}
612
+ * @implements {cljs.core.IWithMeta}
613
+ * @implements {cljs.core.IAssociative}
614
+ * @implements {cljs.core.IMap}
615
+ * @implements {cljs.core.ILookup}
616
+ */
617
+ datascript.pull_api.MultivalAttrFrame = (function (acc,attr,datoms,__meta,__extmap,__hash){
618
+ this.acc = acc;
619
+ this.attr = attr;
620
+ this.datoms = datoms;
621
+ this.__meta = __meta;
622
+ this.__extmap = __extmap;
623
+ this.__hash = __hash;
624
+ this.cljs$lang$protocol_mask$partition0$ = 2230716170;
625
+ this.cljs$lang$protocol_mask$partition1$ = 139264;
626
+ });
627
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__5300__auto__,k__5301__auto__){
628
+ var self__ = this;
629
+ var this__5300__auto____$1 = this;
630
+ return this__5300__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__5301__auto__,null);
631
+ }));
632
+
633
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__5302__auto__,k13963,else__5303__auto__){
634
+ var self__ = this;
635
+ var this__5302__auto____$1 = this;
636
+ var G__13975 = k13963;
637
+ var G__13975__$1 = (((G__13975 instanceof cljs.core.Keyword))?G__13975.fqn:null);
638
+ switch (G__13975__$1) {
639
+ case "acc":
640
+ return self__.acc;
641
+
642
+ break;
643
+ case "attr":
644
+ return self__.attr;
645
+
646
+ break;
647
+ case "datoms":
648
+ return self__.datoms;
649
+
650
+ break;
651
+ default:
652
+ return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k13963,else__5303__auto__);
653
+
654
+ }
655
+ }));
656
+
657
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__5320__auto__,f__5321__auto__,init__5322__auto__){
658
+ var self__ = this;
659
+ var this__5320__auto____$1 = this;
660
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__5323__auto__,p__13977){
661
+ var vec__13978 = p__13977;
662
+ var k__5324__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13978,(0),null);
663
+ var v__5325__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13978,(1),null);
664
+ return (f__5321__auto__.cljs$core$IFn$_invoke$arity$3 ? f__5321__auto__.cljs$core$IFn$_invoke$arity$3(ret__5323__auto__,k__5324__auto__,v__5325__auto__) : f__5321__auto__.call(null,ret__5323__auto__,k__5324__auto__,v__5325__auto__));
665
+ }),init__5322__auto__,this__5320__auto____$1);
666
+ }));
667
+
668
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__5315__auto__,writer__5316__auto__,opts__5317__auto__){
669
+ var self__ = this;
670
+ var this__5315__auto____$1 = this;
671
+ var pr_pair__5318__auto__ = (function (keyval__5319__auto__){
672
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,cljs.core.pr_writer,""," ","",opts__5317__auto__,keyval__5319__auto__);
673
+ });
674
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,pr_pair__5318__auto__,"#datascript.pull-api.MultivalAttrFrame{",", ","}",opts__5317__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"acc","acc",838566312),self__.acc],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"attr","attr",-604132353),self__.attr],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"datoms","datoms",-290874434),self__.datoms],null))], null),self__.__extmap));
675
+ }));
676
+
677
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__13962){
678
+ var self__ = this;
679
+ var G__13962__$1 = this;
680
+ return (new cljs.core.RecordIter((0),G__13962__$1,3,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"acc","acc",838566312),new cljs.core.Keyword(null,"attr","attr",-604132353),new cljs.core.Keyword(null,"datoms","datoms",-290874434)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
681
+ }));
682
+
683
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__5298__auto__){
684
+ var self__ = this;
685
+ var this__5298__auto____$1 = this;
686
+ return self__.__meta;
687
+ }));
688
+
689
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__5295__auto__){
690
+ var self__ = this;
691
+ var this__5295__auto____$1 = this;
692
+ return (new datascript.pull_api.MultivalAttrFrame(self__.acc,self__.attr,self__.datoms,self__.__meta,self__.__extmap,self__.__hash));
693
+ }));
694
+
695
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__5304__auto__){
696
+ var self__ = this;
697
+ var this__5304__auto____$1 = this;
698
+ return (3 + cljs.core.count(self__.__extmap));
699
+ }));
700
+
701
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__5296__auto__){
702
+ var self__ = this;
703
+ var this__5296__auto____$1 = this;
704
+ var h__5111__auto__ = self__.__hash;
705
+ if((!((h__5111__auto__ == null)))){
706
+ return h__5111__auto__;
707
+ } else {
708
+ var h__5111__auto____$1 = (function (coll__5297__auto__){
709
+ return (1829867699 ^ cljs.core.hash_unordered_coll(coll__5297__auto__));
710
+ })(this__5296__auto____$1);
711
+ (self__.__hash = h__5111__auto____$1);
712
+
713
+ return h__5111__auto____$1;
714
+ }
715
+ }));
716
+
717
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this13964,other13965){
718
+ var self__ = this;
719
+ var this13964__$1 = this;
720
+ return (((!((other13965 == null)))) && ((((this13964__$1.constructor === other13965.constructor)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13964__$1.acc,other13965.acc)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13964__$1.attr,other13965.attr)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13964__$1.datoms,other13965.datoms)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13964__$1.__extmap,other13965.__extmap)))))))))));
721
+ }));
722
+
723
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__5310__auto__,k__5311__auto__){
724
+ var self__ = this;
725
+ var this__5310__auto____$1 = this;
726
+ if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"acc","acc",838566312),null,new cljs.core.Keyword(null,"datoms","datoms",-290874434),null,new cljs.core.Keyword(null,"attr","attr",-604132353),null], null), null),k__5311__auto__)){
727
+ return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__5310__auto____$1),self__.__meta),k__5311__auto__);
728
+ } else {
729
+ return (new datascript.pull_api.MultivalAttrFrame(self__.acc,self__.attr,self__.datoms,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__5311__auto__)),null));
730
+ }
731
+ }));
732
+
733
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 = (function (this__5307__auto__,k13963){
734
+ var self__ = this;
735
+ var this__5307__auto____$1 = this;
736
+ var G__13988 = k13963;
737
+ var G__13988__$1 = (((G__13988 instanceof cljs.core.Keyword))?G__13988.fqn:null);
738
+ switch (G__13988__$1) {
739
+ case "acc":
740
+ case "attr":
741
+ case "datoms":
742
+ return true;
743
+
744
+ break;
745
+ default:
746
+ return cljs.core.contains_QMARK_(self__.__extmap,k13963);
747
+
748
+ }
749
+ }));
750
+
751
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__5308__auto__,k__5309__auto__,G__13962){
752
+ var self__ = this;
753
+ var this__5308__auto____$1 = this;
754
+ var pred__13989 = cljs.core.keyword_identical_QMARK_;
755
+ var expr__13990 = k__5309__auto__;
756
+ if(cljs.core.truth_((pred__13989.cljs$core$IFn$_invoke$arity$2 ? pred__13989.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"acc","acc",838566312),expr__13990) : pred__13989.call(null,new cljs.core.Keyword(null,"acc","acc",838566312),expr__13990)))){
757
+ return (new datascript.pull_api.MultivalAttrFrame(G__13962,self__.attr,self__.datoms,self__.__meta,self__.__extmap,null));
758
+ } else {
759
+ if(cljs.core.truth_((pred__13989.cljs$core$IFn$_invoke$arity$2 ? pred__13989.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"attr","attr",-604132353),expr__13990) : pred__13989.call(null,new cljs.core.Keyword(null,"attr","attr",-604132353),expr__13990)))){
760
+ return (new datascript.pull_api.MultivalAttrFrame(self__.acc,G__13962,self__.datoms,self__.__meta,self__.__extmap,null));
761
+ } else {
762
+ if(cljs.core.truth_((pred__13989.cljs$core$IFn$_invoke$arity$2 ? pred__13989.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"datoms","datoms",-290874434),expr__13990) : pred__13989.call(null,new cljs.core.Keyword(null,"datoms","datoms",-290874434),expr__13990)))){
763
+ return (new datascript.pull_api.MultivalAttrFrame(self__.acc,self__.attr,G__13962,self__.__meta,self__.__extmap,null));
764
+ } else {
765
+ return (new datascript.pull_api.MultivalAttrFrame(self__.acc,self__.attr,self__.datoms,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__5309__auto__,G__13962),null));
766
+ }
767
+ }
768
+ }
769
+ }));
770
+
771
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__5313__auto__){
772
+ var self__ = this;
773
+ var this__5313__auto____$1 = this;
774
+ return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,"acc","acc",838566312),self__.acc,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"attr","attr",-604132353),self__.attr,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"datoms","datoms",-290874434),self__.datoms,null))], null),self__.__extmap));
775
+ }));
776
+
777
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__5299__auto__,G__13962){
778
+ var self__ = this;
779
+ var this__5299__auto____$1 = this;
780
+ return (new datascript.pull_api.MultivalAttrFrame(self__.acc,self__.attr,self__.datoms,G__13962,self__.__extmap,self__.__hash));
781
+ }));
782
+
783
+ (datascript.pull_api.MultivalAttrFrame.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__5305__auto__,entry__5306__auto__){
784
+ var self__ = this;
785
+ var this__5305__auto____$1 = this;
786
+ if(cljs.core.vector_QMARK_(entry__5306__auto__)){
787
+ return this__5305__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__5306__auto__,(0)),cljs.core._nth(entry__5306__auto__,(1)));
788
+ } else {
789
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__5305__auto____$1,entry__5306__auto__);
790
+ }
791
+ }));
792
+
793
+ (datascript.pull_api.MultivalAttrFrame.prototype.datascript$pull_api$IFrame$ = cljs.core.PROTOCOL_SENTINEL);
794
+
795
+ (datascript.pull_api.MultivalAttrFrame.prototype.datascript$pull_api$IFrame$_run$arity$2 = (function (this$,context){
796
+ var self__ = this;
797
+ var this$__$1 = this;
798
+ var acc__$1 = self__.acc;
799
+ var datoms__$1 = self__.datoms;
800
+ while(true){
801
+ var datom = datascript.pull_api.first_seq(datoms__$1);
802
+ if((((datom == null)) || (cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(datom.a,self__.attr.name)))){
803
+ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new datascript.pull_api.ResultFrame(cljs.core.not_empty(cljs.core.persistent_BANG_(acc__$1)),(function (){var or__5002__auto__ = datoms__$1;
804
+ if(cljs.core.truth_(or__5002__auto__)){
805
+ return or__5002__auto__;
806
+ } else {
807
+ return cljs.core.List.EMPTY;
808
+ }
809
+ })(),null,null,null))], null);
810
+ } else {
811
+ if(cljs.core.truth_((function (){var and__5000__auto__ = self__.attr.limit;
812
+ if(cljs.core.truth_(and__5000__auto__)){
813
+ return (cljs.core.count(acc__$1) >= self__.attr.limit);
814
+ } else {
815
+ return and__5000__auto__;
816
+ }
817
+ })())){
818
+ var datoms__$2 = datoms__$1;
819
+ while(true){
820
+ var datom__$1 = datascript.pull_api.first_seq(datoms__$2);
821
+ if((((datom__$1 == null)) || (cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(datom__$1.a,self__.attr.name)))){
822
+ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new datascript.pull_api.ResultFrame(cljs.core.persistent_BANG_(acc__$1),(function (){var or__5002__auto__ = datoms__$2;
823
+ if(cljs.core.truth_(or__5002__auto__)){
824
+ return or__5002__auto__;
825
+ } else {
826
+ return cljs.core.List.EMPTY;
827
+ }
828
+ })(),null,null,null))], null);
829
+ } else {
830
+ var G__14250 = datascript.pull_api.next_seq(datoms__$2);
831
+ datoms__$2 = G__14250;
832
+ continue;
833
+ }
834
+ break;
835
+ }
836
+ } else {
837
+ var G__14251 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(acc__$1,datom.v);
838
+ var G__14252 = datascript.pull_api.next_seq(datoms__$1);
839
+ acc__$1 = G__14251;
840
+ datoms__$1 = G__14252;
841
+ continue;
842
+
843
+ }
844
+ }
845
+ break;
846
+ }
847
+ }));
848
+
849
+ (datascript.pull_api.MultivalAttrFrame.prototype.datascript$pull_api$IFrame$_str$arity$1 = (function (this$){
850
+ var self__ = this;
851
+ var this$__$1 = this;
852
+ return ["MultivalAttrFrame<attr=",cljs.core.str.cljs$core$IFn$_invoke$arity$1(datascript.pull_api.attr_str(self__.attr)),">"].join('');
853
+ }));
854
+
855
+ (datascript.pull_api.MultivalAttrFrame.getBasis = (function (){
856
+ return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"acc","acc",-1815869457,null),cljs.core.with_meta(new cljs.core.Symbol(null,"attr","attr",1036399174,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"tag","tag",-1290361223),new cljs.core.Symbol(null,"PullAttr","PullAttr",1557473458,null)], null)),new cljs.core.Symbol(null,"datoms","datoms",1349657093,null)], null);
857
+ }));
858
+
859
+ (datascript.pull_api.MultivalAttrFrame.cljs$lang$type = true);
860
+
861
+ (datascript.pull_api.MultivalAttrFrame.cljs$lang$ctorPrSeq = (function (this__5346__auto__){
862
+ return (new cljs.core.List(null,"datascript.pull-api/MultivalAttrFrame",null,(1),null));
863
+ }));
864
+
865
+ (datascript.pull_api.MultivalAttrFrame.cljs$lang$ctorPrWriter = (function (this__5346__auto__,writer__5347__auto__){
866
+ return cljs.core._write(writer__5347__auto__,"datascript.pull-api/MultivalAttrFrame");
867
+ }));
868
+
869
+ /**
870
+ * Positional factory function for datascript.pull-api/MultivalAttrFrame.
871
+ */
872
+ datascript.pull_api.__GT_MultivalAttrFrame = (function datascript$pull_api$__GT_MultivalAttrFrame(acc,attr,datoms){
873
+ return (new datascript.pull_api.MultivalAttrFrame(acc,attr,datoms,null,null,null));
874
+ });
875
+
876
+ /**
877
+ * Factory function for datascript.pull-api/MultivalAttrFrame, taking a map of keywords to field values.
878
+ */
879
+ datascript.pull_api.map__GT_MultivalAttrFrame = (function datascript$pull_api$map__GT_MultivalAttrFrame(G__13973){
880
+ var extmap__5342__auto__ = (function (){var G__14002 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__13973,new cljs.core.Keyword(null,"acc","acc",838566312),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,"attr","attr",-604132353),new cljs.core.Keyword(null,"datoms","datoms",-290874434)], 0));
881
+ if(cljs.core.record_QMARK_(G__13973)){
882
+ return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__14002);
883
+ } else {
884
+ return G__14002;
885
+ }
886
+ })();
887
+ return (new datascript.pull_api.MultivalAttrFrame(new cljs.core.Keyword(null,"acc","acc",838566312).cljs$core$IFn$_invoke$arity$1(G__13973),new cljs.core.Keyword(null,"attr","attr",-604132353).cljs$core$IFn$_invoke$arity$1(G__13973),new cljs.core.Keyword(null,"datoms","datoms",-290874434).cljs$core$IFn$_invoke$arity$1(G__13973),null,cljs.core.not_empty(extmap__5342__auto__),null));
888
+ });
889
+
890
+
891
+ /**
892
+ * @constructor
893
+ * @implements {cljs.core.IRecord}
894
+ * @implements {datascript.pull_api.IFrame}
895
+ * @implements {cljs.core.IKVReduce}
896
+ * @implements {cljs.core.IEquiv}
897
+ * @implements {cljs.core.IHash}
898
+ * @implements {cljs.core.ICollection}
899
+ * @implements {cljs.core.ICounted}
900
+ * @implements {cljs.core.ISeqable}
901
+ * @implements {cljs.core.IMeta}
902
+ * @implements {cljs.core.ICloneable}
903
+ * @implements {cljs.core.IPrintWithWriter}
904
+ * @implements {cljs.core.IIterable}
905
+ * @implements {cljs.core.IWithMeta}
906
+ * @implements {cljs.core.IAssociative}
907
+ * @implements {cljs.core.IMap}
908
+ * @implements {cljs.core.ILookup}
909
+ */
910
+ datascript.pull_api.MultivalRefAttrFrame = (function (seen,recursion_limits,acc,pattern,attr,datoms,__meta,__extmap,__hash){
911
+ this.seen = seen;
912
+ this.recursion_limits = recursion_limits;
913
+ this.acc = acc;
914
+ this.pattern = pattern;
915
+ this.attr = attr;
916
+ this.datoms = datoms;
917
+ this.__meta = __meta;
918
+ this.__extmap = __extmap;
919
+ this.__hash = __hash;
920
+ this.cljs$lang$protocol_mask$partition0$ = 2230716170;
921
+ this.cljs$lang$protocol_mask$partition1$ = 139264;
922
+ });
923
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__5300__auto__,k__5301__auto__){
924
+ var self__ = this;
925
+ var this__5300__auto____$1 = this;
926
+ return this__5300__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__5301__auto__,null);
927
+ }));
928
+
929
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__5302__auto__,k14005,else__5303__auto__){
930
+ var self__ = this;
931
+ var this__5302__auto____$1 = this;
932
+ var G__14012 = k14005;
933
+ var G__14012__$1 = (((G__14012 instanceof cljs.core.Keyword))?G__14012.fqn:null);
934
+ switch (G__14012__$1) {
935
+ case "seen":
936
+ return self__.seen;
937
+
938
+ break;
939
+ case "recursion-limits":
940
+ return self__.recursion_limits;
941
+
942
+ break;
943
+ case "acc":
944
+ return self__.acc;
945
+
946
+ break;
947
+ case "pattern":
948
+ return self__.pattern;
949
+
950
+ break;
951
+ case "attr":
952
+ return self__.attr;
953
+
954
+ break;
955
+ case "datoms":
956
+ return self__.datoms;
957
+
958
+ break;
959
+ default:
960
+ return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k14005,else__5303__auto__);
961
+
962
+ }
963
+ }));
964
+
965
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__5320__auto__,f__5321__auto__,init__5322__auto__){
966
+ var self__ = this;
967
+ var this__5320__auto____$1 = this;
968
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__5323__auto__,p__14013){
969
+ var vec__14014 = p__14013;
970
+ var k__5324__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14014,(0),null);
971
+ var v__5325__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14014,(1),null);
972
+ return (f__5321__auto__.cljs$core$IFn$_invoke$arity$3 ? f__5321__auto__.cljs$core$IFn$_invoke$arity$3(ret__5323__auto__,k__5324__auto__,v__5325__auto__) : f__5321__auto__.call(null,ret__5323__auto__,k__5324__auto__,v__5325__auto__));
973
+ }),init__5322__auto__,this__5320__auto____$1);
974
+ }));
975
+
976
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__5315__auto__,writer__5316__auto__,opts__5317__auto__){
977
+ var self__ = this;
978
+ var this__5315__auto____$1 = this;
979
+ var pr_pair__5318__auto__ = (function (keyval__5319__auto__){
980
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,cljs.core.pr_writer,""," ","",opts__5317__auto__,keyval__5319__auto__);
981
+ });
982
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,pr_pair__5318__auto__,"#datascript.pull-api.MultivalRefAttrFrame{",", ","}",opts__5317__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"seen","seen",-518999789),self__.seen],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),self__.recursion_limits],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"acc","acc",838566312),self__.acc],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"pattern","pattern",242135423),self__.pattern],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"attr","attr",-604132353),self__.attr],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"datoms","datoms",-290874434),self__.datoms],null))], null),self__.__extmap));
983
+ }));
984
+
985
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__14004){
986
+ var self__ = this;
987
+ var G__14004__$1 = this;
988
+ return (new cljs.core.RecordIter((0),G__14004__$1,6,new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"seen","seen",-518999789),new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),new cljs.core.Keyword(null,"acc","acc",838566312),new cljs.core.Keyword(null,"pattern","pattern",242135423),new cljs.core.Keyword(null,"attr","attr",-604132353),new cljs.core.Keyword(null,"datoms","datoms",-290874434)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
989
+ }));
990
+
991
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__5298__auto__){
992
+ var self__ = this;
993
+ var this__5298__auto____$1 = this;
994
+ return self__.__meta;
995
+ }));
996
+
997
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__5295__auto__){
998
+ var self__ = this;
999
+ var this__5295__auto____$1 = this;
1000
+ return (new datascript.pull_api.MultivalRefAttrFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.datoms,self__.__meta,self__.__extmap,self__.__hash));
1001
+ }));
1002
+
1003
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__5304__auto__){
1004
+ var self__ = this;
1005
+ var this__5304__auto____$1 = this;
1006
+ return (6 + cljs.core.count(self__.__extmap));
1007
+ }));
1008
+
1009
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__5296__auto__){
1010
+ var self__ = this;
1011
+ var this__5296__auto____$1 = this;
1012
+ var h__5111__auto__ = self__.__hash;
1013
+ if((!((h__5111__auto__ == null)))){
1014
+ return h__5111__auto__;
1015
+ } else {
1016
+ var h__5111__auto____$1 = (function (coll__5297__auto__){
1017
+ return (1769511936 ^ cljs.core.hash_unordered_coll(coll__5297__auto__));
1018
+ })(this__5296__auto____$1);
1019
+ (self__.__hash = h__5111__auto____$1);
1020
+
1021
+ return h__5111__auto____$1;
1022
+ }
1023
+ }));
1024
+
1025
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this14006,other14007){
1026
+ var self__ = this;
1027
+ var this14006__$1 = this;
1028
+ return (((!((other14007 == null)))) && ((((this14006__$1.constructor === other14007.constructor)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14006__$1.seen,other14007.seen)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14006__$1.recursion_limits,other14007.recursion_limits)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14006__$1.acc,other14007.acc)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14006__$1.pattern,other14007.pattern)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14006__$1.attr,other14007.attr)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14006__$1.datoms,other14007.datoms)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14006__$1.__extmap,other14007.__extmap)))))))))))))))));
1029
+ }));
1030
+
1031
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__5310__auto__,k__5311__auto__){
1032
+ var self__ = this;
1033
+ var this__5310__auto____$1 = this;
1034
+ if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"acc","acc",838566312),null,new cljs.core.Keyword(null,"seen","seen",-518999789),null,new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),null,new cljs.core.Keyword(null,"datoms","datoms",-290874434),null,new cljs.core.Keyword(null,"pattern","pattern",242135423),null,new cljs.core.Keyword(null,"attr","attr",-604132353),null], null), null),k__5311__auto__)){
1035
+ return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__5310__auto____$1),self__.__meta),k__5311__auto__);
1036
+ } else {
1037
+ return (new datascript.pull_api.MultivalRefAttrFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.datoms,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__5311__auto__)),null));
1038
+ }
1039
+ }));
1040
+
1041
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 = (function (this__5307__auto__,k14005){
1042
+ var self__ = this;
1043
+ var this__5307__auto____$1 = this;
1044
+ var G__14021 = k14005;
1045
+ var G__14021__$1 = (((G__14021 instanceof cljs.core.Keyword))?G__14021.fqn:null);
1046
+ switch (G__14021__$1) {
1047
+ case "seen":
1048
+ case "recursion-limits":
1049
+ case "acc":
1050
+ case "pattern":
1051
+ case "attr":
1052
+ case "datoms":
1053
+ return true;
1054
+
1055
+ break;
1056
+ default:
1057
+ return cljs.core.contains_QMARK_(self__.__extmap,k14005);
1058
+
1059
+ }
1060
+ }));
1061
+
1062
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__5308__auto__,k__5309__auto__,G__14004){
1063
+ var self__ = this;
1064
+ var this__5308__auto____$1 = this;
1065
+ var pred__14023 = cljs.core.keyword_identical_QMARK_;
1066
+ var expr__14024 = k__5309__auto__;
1067
+ if(cljs.core.truth_((pred__14023.cljs$core$IFn$_invoke$arity$2 ? pred__14023.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"seen","seen",-518999789),expr__14024) : pred__14023.call(null,new cljs.core.Keyword(null,"seen","seen",-518999789),expr__14024)))){
1068
+ return (new datascript.pull_api.MultivalRefAttrFrame(G__14004,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.datoms,self__.__meta,self__.__extmap,null));
1069
+ } else {
1070
+ if(cljs.core.truth_((pred__14023.cljs$core$IFn$_invoke$arity$2 ? pred__14023.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),expr__14024) : pred__14023.call(null,new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),expr__14024)))){
1071
+ return (new datascript.pull_api.MultivalRefAttrFrame(self__.seen,G__14004,self__.acc,self__.pattern,self__.attr,self__.datoms,self__.__meta,self__.__extmap,null));
1072
+ } else {
1073
+ if(cljs.core.truth_((pred__14023.cljs$core$IFn$_invoke$arity$2 ? pred__14023.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"acc","acc",838566312),expr__14024) : pred__14023.call(null,new cljs.core.Keyword(null,"acc","acc",838566312),expr__14024)))){
1074
+ return (new datascript.pull_api.MultivalRefAttrFrame(self__.seen,self__.recursion_limits,G__14004,self__.pattern,self__.attr,self__.datoms,self__.__meta,self__.__extmap,null));
1075
+ } else {
1076
+ if(cljs.core.truth_((pred__14023.cljs$core$IFn$_invoke$arity$2 ? pred__14023.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"pattern","pattern",242135423),expr__14024) : pred__14023.call(null,new cljs.core.Keyword(null,"pattern","pattern",242135423),expr__14024)))){
1077
+ return (new datascript.pull_api.MultivalRefAttrFrame(self__.seen,self__.recursion_limits,self__.acc,G__14004,self__.attr,self__.datoms,self__.__meta,self__.__extmap,null));
1078
+ } else {
1079
+ if(cljs.core.truth_((pred__14023.cljs$core$IFn$_invoke$arity$2 ? pred__14023.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"attr","attr",-604132353),expr__14024) : pred__14023.call(null,new cljs.core.Keyword(null,"attr","attr",-604132353),expr__14024)))){
1080
+ return (new datascript.pull_api.MultivalRefAttrFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,G__14004,self__.datoms,self__.__meta,self__.__extmap,null));
1081
+ } else {
1082
+ if(cljs.core.truth_((pred__14023.cljs$core$IFn$_invoke$arity$2 ? pred__14023.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"datoms","datoms",-290874434),expr__14024) : pred__14023.call(null,new cljs.core.Keyword(null,"datoms","datoms",-290874434),expr__14024)))){
1083
+ return (new datascript.pull_api.MultivalRefAttrFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,G__14004,self__.__meta,self__.__extmap,null));
1084
+ } else {
1085
+ return (new datascript.pull_api.MultivalRefAttrFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.datoms,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__5309__auto__,G__14004),null));
1086
+ }
1087
+ }
1088
+ }
1089
+ }
1090
+ }
1091
+ }
1092
+ }));
1093
+
1094
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__5313__auto__){
1095
+ var self__ = this;
1096
+ var this__5313__auto____$1 = this;
1097
+ return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,"seen","seen",-518999789),self__.seen,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),self__.recursion_limits,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"acc","acc",838566312),self__.acc,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"pattern","pattern",242135423),self__.pattern,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"attr","attr",-604132353),self__.attr,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"datoms","datoms",-290874434),self__.datoms,null))], null),self__.__extmap));
1098
+ }));
1099
+
1100
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__5299__auto__,G__14004){
1101
+ var self__ = this;
1102
+ var this__5299__auto____$1 = this;
1103
+ return (new datascript.pull_api.MultivalRefAttrFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.datoms,G__14004,self__.__extmap,self__.__hash));
1104
+ }));
1105
+
1106
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__5305__auto__,entry__5306__auto__){
1107
+ var self__ = this;
1108
+ var this__5305__auto____$1 = this;
1109
+ if(cljs.core.vector_QMARK_(entry__5306__auto__)){
1110
+ return this__5305__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__5306__auto__,(0)),cljs.core._nth(entry__5306__auto__,(1)));
1111
+ } else {
1112
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__5305__auto____$1,entry__5306__auto__);
1113
+ }
1114
+ }));
1115
+
1116
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.datascript$pull_api$IFrame$ = cljs.core.PROTOCOL_SENTINEL);
1117
+
1118
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.datascript$pull_api$IFrame$_merge$arity$2 = (function (this$,result){
1119
+ var self__ = this;
1120
+ var this$__$1 = this;
1121
+ return (new datascript.pull_api.MultivalRefAttrFrame(self__.seen,self__.recursion_limits,datascript.pull_api.conj_some_BANG_(self__.acc,result.value),self__.pattern,self__.attr,datascript.pull_api.next_seq(self__.datoms),null,null,null));
1122
+ }));
1123
+
1124
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.datascript$pull_api$IFrame$_run$arity$2 = (function (this$,context){
1125
+ var self__ = this;
1126
+ var this$__$1 = this;
1127
+ var datom = datascript.pull_api.first_seq(self__.datoms);
1128
+ if((((datom == null)) || (cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(datom.a,self__.attr.name)))){
1129
+ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new datascript.pull_api.ResultFrame(cljs.core.not_empty(cljs.core.persistent_BANG_(self__.acc)),(function (){var or__5002__auto__ = self__.datoms;
1130
+ if(cljs.core.truth_(or__5002__auto__)){
1131
+ return or__5002__auto__;
1132
+ } else {
1133
+ return cljs.core.List.EMPTY;
1134
+ }
1135
+ })(),null,null,null))], null);
1136
+ } else {
1137
+ if(cljs.core.truth_((function (){var and__5000__auto__ = self__.attr.limit;
1138
+ if(cljs.core.truth_(and__5000__auto__)){
1139
+ return (cljs.core.count(self__.acc) >= self__.attr.limit);
1140
+ } else {
1141
+ return and__5000__auto__;
1142
+ }
1143
+ })())){
1144
+ var datoms__$1 = self__.datoms;
1145
+ while(true){
1146
+ var datom__$1 = datascript.pull_api.first_seq(datoms__$1);
1147
+ if((((datom__$1 == null)) || (cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(datom__$1.a,self__.attr.name)))){
1148
+ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new datascript.pull_api.ResultFrame(cljs.core.persistent_BANG_(self__.acc),(function (){var or__5002__auto__ = datoms__$1;
1149
+ if(cljs.core.truth_(or__5002__auto__)){
1150
+ return or__5002__auto__;
1151
+ } else {
1152
+ return cljs.core.List.EMPTY;
1153
+ }
1154
+ })(),null,null,null))], null);
1155
+ } else {
1156
+ var G__14269 = datascript.pull_api.next_seq(datoms__$1);
1157
+ datoms__$1 = G__14269;
1158
+ continue;
1159
+ }
1160
+ break;
1161
+ }
1162
+ } else {
1163
+ var id = (cljs.core.truth_(self__.attr.reverse_QMARK_)?datom.e:datom.v);
1164
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [this$__$1,(datascript.pull_api.ref_frame.cljs$core$IFn$_invoke$arity$6 ? datascript.pull_api.ref_frame.cljs$core$IFn$_invoke$arity$6(context,self__.seen,self__.recursion_limits,self__.pattern,self__.attr,id) : datascript.pull_api.ref_frame.call(null,context,self__.seen,self__.recursion_limits,self__.pattern,self__.attr,id))], null);
1165
+
1166
+ }
1167
+ }
1168
+ }));
1169
+
1170
+ (datascript.pull_api.MultivalRefAttrFrame.prototype.datascript$pull_api$IFrame$_str$arity$1 = (function (this$){
1171
+ var self__ = this;
1172
+ var this$__$1 = this;
1173
+ return ["MultivalAttrFrame<attr=",cljs.core.str.cljs$core$IFn$_invoke$arity$1(datascript.pull_api.attr_str(self__.attr)),">"].join('');
1174
+ }));
1175
+
1176
+ (datascript.pull_api.MultivalRefAttrFrame.getBasis = (function (){
1177
+ return new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"seen","seen",1121531738,null),new cljs.core.Symbol(null,"recursion-limits","recursion-limits",-891577955,null),new cljs.core.Symbol(null,"acc","acc",-1815869457,null),new cljs.core.Symbol(null,"pattern","pattern",1882666950,null),cljs.core.with_meta(new cljs.core.Symbol(null,"attr","attr",1036399174,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"tag","tag",-1290361223),new cljs.core.Symbol(null,"PullAttr","PullAttr",1557473458,null)], null)),new cljs.core.Symbol(null,"datoms","datoms",1349657093,null)], null);
1178
+ }));
1179
+
1180
+ (datascript.pull_api.MultivalRefAttrFrame.cljs$lang$type = true);
1181
+
1182
+ (datascript.pull_api.MultivalRefAttrFrame.cljs$lang$ctorPrSeq = (function (this__5346__auto__){
1183
+ return (new cljs.core.List(null,"datascript.pull-api/MultivalRefAttrFrame",null,(1),null));
1184
+ }));
1185
+
1186
+ (datascript.pull_api.MultivalRefAttrFrame.cljs$lang$ctorPrWriter = (function (this__5346__auto__,writer__5347__auto__){
1187
+ return cljs.core._write(writer__5347__auto__,"datascript.pull-api/MultivalRefAttrFrame");
1188
+ }));
1189
+
1190
+ /**
1191
+ * Positional factory function for datascript.pull-api/MultivalRefAttrFrame.
1192
+ */
1193
+ datascript.pull_api.__GT_MultivalRefAttrFrame = (function datascript$pull_api$__GT_MultivalRefAttrFrame(seen,recursion_limits,acc,pattern,attr,datoms){
1194
+ return (new datascript.pull_api.MultivalRefAttrFrame(seen,recursion_limits,acc,pattern,attr,datoms,null,null,null));
1195
+ });
1196
+
1197
+ /**
1198
+ * Factory function for datascript.pull-api/MultivalRefAttrFrame, taking a map of keywords to field values.
1199
+ */
1200
+ datascript.pull_api.map__GT_MultivalRefAttrFrame = (function datascript$pull_api$map__GT_MultivalRefAttrFrame(G__14011){
1201
+ var extmap__5342__auto__ = (function (){var G__14039 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__14011,new cljs.core.Keyword(null,"seen","seen",-518999789),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),new cljs.core.Keyword(null,"acc","acc",838566312),new cljs.core.Keyword(null,"pattern","pattern",242135423),new cljs.core.Keyword(null,"attr","attr",-604132353),new cljs.core.Keyword(null,"datoms","datoms",-290874434)], 0));
1202
+ if(cljs.core.record_QMARK_(G__14011)){
1203
+ return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__14039);
1204
+ } else {
1205
+ return G__14039;
1206
+ }
1207
+ })();
1208
+ return (new datascript.pull_api.MultivalRefAttrFrame(new cljs.core.Keyword(null,"seen","seen",-518999789).cljs$core$IFn$_invoke$arity$1(G__14011),new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814).cljs$core$IFn$_invoke$arity$1(G__14011),new cljs.core.Keyword(null,"acc","acc",838566312).cljs$core$IFn$_invoke$arity$1(G__14011),new cljs.core.Keyword(null,"pattern","pattern",242135423).cljs$core$IFn$_invoke$arity$1(G__14011),new cljs.core.Keyword(null,"attr","attr",-604132353).cljs$core$IFn$_invoke$arity$1(G__14011),new cljs.core.Keyword(null,"datoms","datoms",-290874434).cljs$core$IFn$_invoke$arity$1(G__14011),null,cljs.core.not_empty(extmap__5342__auto__),null));
1209
+ });
1210
+
1211
+
1212
+ /**
1213
+ * @constructor
1214
+ * @implements {cljs.core.IRecord}
1215
+ * @implements {datascript.pull_api.IFrame}
1216
+ * @implements {cljs.core.IKVReduce}
1217
+ * @implements {cljs.core.IEquiv}
1218
+ * @implements {cljs.core.IHash}
1219
+ * @implements {cljs.core.ICollection}
1220
+ * @implements {cljs.core.ICounted}
1221
+ * @implements {cljs.core.ISeqable}
1222
+ * @implements {cljs.core.IMeta}
1223
+ * @implements {cljs.core.ICloneable}
1224
+ * @implements {cljs.core.IPrintWithWriter}
1225
+ * @implements {cljs.core.IIterable}
1226
+ * @implements {cljs.core.IWithMeta}
1227
+ * @implements {cljs.core.IAssociative}
1228
+ * @implements {cljs.core.IMap}
1229
+ * @implements {cljs.core.ILookup}
1230
+ */
1231
+ datascript.pull_api.AttrsFrame = (function (seen,recursion_limits,acc,pattern,attr,attrs,datoms,id,__meta,__extmap,__hash){
1232
+ this.seen = seen;
1233
+ this.recursion_limits = recursion_limits;
1234
+ this.acc = acc;
1235
+ this.pattern = pattern;
1236
+ this.attr = attr;
1237
+ this.attrs = attrs;
1238
+ this.datoms = datoms;
1239
+ this.id = id;
1240
+ this.__meta = __meta;
1241
+ this.__extmap = __extmap;
1242
+ this.__hash = __hash;
1243
+ this.cljs$lang$protocol_mask$partition0$ = 2230716170;
1244
+ this.cljs$lang$protocol_mask$partition1$ = 139264;
1245
+ });
1246
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__5300__auto__,k__5301__auto__){
1247
+ var self__ = this;
1248
+ var this__5300__auto____$1 = this;
1249
+ return this__5300__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__5301__auto__,null);
1250
+ }));
1251
+
1252
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__5302__auto__,k14042,else__5303__auto__){
1253
+ var self__ = this;
1254
+ var this__5302__auto____$1 = this;
1255
+ var G__14049 = k14042;
1256
+ var G__14049__$1 = (((G__14049 instanceof cljs.core.Keyword))?G__14049.fqn:null);
1257
+ switch (G__14049__$1) {
1258
+ case "seen":
1259
+ return self__.seen;
1260
+
1261
+ break;
1262
+ case "recursion-limits":
1263
+ return self__.recursion_limits;
1264
+
1265
+ break;
1266
+ case "acc":
1267
+ return self__.acc;
1268
+
1269
+ break;
1270
+ case "pattern":
1271
+ return self__.pattern;
1272
+
1273
+ break;
1274
+ case "attr":
1275
+ return self__.attr;
1276
+
1277
+ break;
1278
+ case "attrs":
1279
+ return self__.attrs;
1280
+
1281
+ break;
1282
+ case "datoms":
1283
+ return self__.datoms;
1284
+
1285
+ break;
1286
+ case "id":
1287
+ return self__.id;
1288
+
1289
+ break;
1290
+ default:
1291
+ return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k14042,else__5303__auto__);
1292
+
1293
+ }
1294
+ }));
1295
+
1296
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__5320__auto__,f__5321__auto__,init__5322__auto__){
1297
+ var self__ = this;
1298
+ var this__5320__auto____$1 = this;
1299
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__5323__auto__,p__14050){
1300
+ var vec__14051 = p__14050;
1301
+ var k__5324__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14051,(0),null);
1302
+ var v__5325__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14051,(1),null);
1303
+ return (f__5321__auto__.cljs$core$IFn$_invoke$arity$3 ? f__5321__auto__.cljs$core$IFn$_invoke$arity$3(ret__5323__auto__,k__5324__auto__,v__5325__auto__) : f__5321__auto__.call(null,ret__5323__auto__,k__5324__auto__,v__5325__auto__));
1304
+ }),init__5322__auto__,this__5320__auto____$1);
1305
+ }));
1306
+
1307
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__5315__auto__,writer__5316__auto__,opts__5317__auto__){
1308
+ var self__ = this;
1309
+ var this__5315__auto____$1 = this;
1310
+ var pr_pair__5318__auto__ = (function (keyval__5319__auto__){
1311
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,cljs.core.pr_writer,""," ","",opts__5317__auto__,keyval__5319__auto__);
1312
+ });
1313
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,pr_pair__5318__auto__,"#datascript.pull-api.AttrsFrame{",", ","}",opts__5317__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"seen","seen",-518999789),self__.seen],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),self__.recursion_limits],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"acc","acc",838566312),self__.acc],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"pattern","pattern",242135423),self__.pattern],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"attr","attr",-604132353),self__.attr],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"attrs","attrs",-2090668713),self__.attrs],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"datoms","datoms",-290874434),self__.datoms],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"id","id",-1388402092),self__.id],null))], null),self__.__extmap));
1314
+ }));
1315
+
1316
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__14041){
1317
+ var self__ = this;
1318
+ var G__14041__$1 = this;
1319
+ return (new cljs.core.RecordIter((0),G__14041__$1,8,new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"seen","seen",-518999789),new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),new cljs.core.Keyword(null,"acc","acc",838566312),new cljs.core.Keyword(null,"pattern","pattern",242135423),new cljs.core.Keyword(null,"attr","attr",-604132353),new cljs.core.Keyword(null,"attrs","attrs",-2090668713),new cljs.core.Keyword(null,"datoms","datoms",-290874434),new cljs.core.Keyword(null,"id","id",-1388402092)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
1320
+ }));
1321
+
1322
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__5298__auto__){
1323
+ var self__ = this;
1324
+ var this__5298__auto____$1 = this;
1325
+ return self__.__meta;
1326
+ }));
1327
+
1328
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__5295__auto__){
1329
+ var self__ = this;
1330
+ var this__5295__auto____$1 = this;
1331
+ return (new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.datoms,self__.id,self__.__meta,self__.__extmap,self__.__hash));
1332
+ }));
1333
+
1334
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__5304__auto__){
1335
+ var self__ = this;
1336
+ var this__5304__auto____$1 = this;
1337
+ return (8 + cljs.core.count(self__.__extmap));
1338
+ }));
1339
+
1340
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__5296__auto__){
1341
+ var self__ = this;
1342
+ var this__5296__auto____$1 = this;
1343
+ var h__5111__auto__ = self__.__hash;
1344
+ if((!((h__5111__auto__ == null)))){
1345
+ return h__5111__auto__;
1346
+ } else {
1347
+ var h__5111__auto____$1 = (function (coll__5297__auto__){
1348
+ return (1127179791 ^ cljs.core.hash_unordered_coll(coll__5297__auto__));
1349
+ })(this__5296__auto____$1);
1350
+ (self__.__hash = h__5111__auto____$1);
1351
+
1352
+ return h__5111__auto____$1;
1353
+ }
1354
+ }));
1355
+
1356
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this14043,other14044){
1357
+ var self__ = this;
1358
+ var this14043__$1 = this;
1359
+ return (((!((other14044 == null)))) && ((((this14043__$1.constructor === other14044.constructor)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14043__$1.seen,other14044.seen)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14043__$1.recursion_limits,other14044.recursion_limits)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14043__$1.acc,other14044.acc)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14043__$1.pattern,other14044.pattern)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14043__$1.attr,other14044.attr)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14043__$1.attrs,other14044.attrs)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14043__$1.datoms,other14044.datoms)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14043__$1.id,other14044.id)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14043__$1.__extmap,other14044.__extmap)))))))))))))))))))));
1360
+ }));
1361
+
1362
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__5310__auto__,k__5311__auto__){
1363
+ var self__ = this;
1364
+ var this__5310__auto____$1 = this;
1365
+ if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 8, [new cljs.core.Keyword(null,"acc","acc",838566312),null,new cljs.core.Keyword(null,"seen","seen",-518999789),null,new cljs.core.Keyword(null,"id","id",-1388402092),null,new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),null,new cljs.core.Keyword(null,"attrs","attrs",-2090668713),null,new cljs.core.Keyword(null,"datoms","datoms",-290874434),null,new cljs.core.Keyword(null,"pattern","pattern",242135423),null,new cljs.core.Keyword(null,"attr","attr",-604132353),null], null), null),k__5311__auto__)){
1366
+ return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__5310__auto____$1),self__.__meta),k__5311__auto__);
1367
+ } else {
1368
+ return (new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.datoms,self__.id,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__5311__auto__)),null));
1369
+ }
1370
+ }));
1371
+
1372
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 = (function (this__5307__auto__,k14042){
1373
+ var self__ = this;
1374
+ var this__5307__auto____$1 = this;
1375
+ var G__14068 = k14042;
1376
+ var G__14068__$1 = (((G__14068 instanceof cljs.core.Keyword))?G__14068.fqn:null);
1377
+ switch (G__14068__$1) {
1378
+ case "seen":
1379
+ case "recursion-limits":
1380
+ case "acc":
1381
+ case "pattern":
1382
+ case "attr":
1383
+ case "attrs":
1384
+ case "datoms":
1385
+ case "id":
1386
+ return true;
1387
+
1388
+ break;
1389
+ default:
1390
+ return cljs.core.contains_QMARK_(self__.__extmap,k14042);
1391
+
1392
+ }
1393
+ }));
1394
+
1395
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__5308__auto__,k__5309__auto__,G__14041){
1396
+ var self__ = this;
1397
+ var this__5308__auto____$1 = this;
1398
+ var pred__14069 = cljs.core.keyword_identical_QMARK_;
1399
+ var expr__14070 = k__5309__auto__;
1400
+ if(cljs.core.truth_((pred__14069.cljs$core$IFn$_invoke$arity$2 ? pred__14069.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"seen","seen",-518999789),expr__14070) : pred__14069.call(null,new cljs.core.Keyword(null,"seen","seen",-518999789),expr__14070)))){
1401
+ return (new datascript.pull_api.AttrsFrame(G__14041,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.datoms,self__.id,self__.__meta,self__.__extmap,null));
1402
+ } else {
1403
+ if(cljs.core.truth_((pred__14069.cljs$core$IFn$_invoke$arity$2 ? pred__14069.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),expr__14070) : pred__14069.call(null,new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),expr__14070)))){
1404
+ return (new datascript.pull_api.AttrsFrame(self__.seen,G__14041,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.datoms,self__.id,self__.__meta,self__.__extmap,null));
1405
+ } else {
1406
+ if(cljs.core.truth_((pred__14069.cljs$core$IFn$_invoke$arity$2 ? pred__14069.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"acc","acc",838566312),expr__14070) : pred__14069.call(null,new cljs.core.Keyword(null,"acc","acc",838566312),expr__14070)))){
1407
+ return (new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,G__14041,self__.pattern,self__.attr,self__.attrs,self__.datoms,self__.id,self__.__meta,self__.__extmap,null));
1408
+ } else {
1409
+ if(cljs.core.truth_((pred__14069.cljs$core$IFn$_invoke$arity$2 ? pred__14069.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"pattern","pattern",242135423),expr__14070) : pred__14069.call(null,new cljs.core.Keyword(null,"pattern","pattern",242135423),expr__14070)))){
1410
+ return (new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,self__.acc,G__14041,self__.attr,self__.attrs,self__.datoms,self__.id,self__.__meta,self__.__extmap,null));
1411
+ } else {
1412
+ if(cljs.core.truth_((pred__14069.cljs$core$IFn$_invoke$arity$2 ? pred__14069.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"attr","attr",-604132353),expr__14070) : pred__14069.call(null,new cljs.core.Keyword(null,"attr","attr",-604132353),expr__14070)))){
1413
+ return (new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,G__14041,self__.attrs,self__.datoms,self__.id,self__.__meta,self__.__extmap,null));
1414
+ } else {
1415
+ if(cljs.core.truth_((pred__14069.cljs$core$IFn$_invoke$arity$2 ? pred__14069.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"attrs","attrs",-2090668713),expr__14070) : pred__14069.call(null,new cljs.core.Keyword(null,"attrs","attrs",-2090668713),expr__14070)))){
1416
+ return (new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,G__14041,self__.datoms,self__.id,self__.__meta,self__.__extmap,null));
1417
+ } else {
1418
+ if(cljs.core.truth_((pred__14069.cljs$core$IFn$_invoke$arity$2 ? pred__14069.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"datoms","datoms",-290874434),expr__14070) : pred__14069.call(null,new cljs.core.Keyword(null,"datoms","datoms",-290874434),expr__14070)))){
1419
+ return (new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,G__14041,self__.id,self__.__meta,self__.__extmap,null));
1420
+ } else {
1421
+ if(cljs.core.truth_((pred__14069.cljs$core$IFn$_invoke$arity$2 ? pred__14069.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"id","id",-1388402092),expr__14070) : pred__14069.call(null,new cljs.core.Keyword(null,"id","id",-1388402092),expr__14070)))){
1422
+ return (new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.datoms,G__14041,self__.__meta,self__.__extmap,null));
1423
+ } else {
1424
+ return (new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.datoms,self__.id,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__5309__auto__,G__14041),null));
1425
+ }
1426
+ }
1427
+ }
1428
+ }
1429
+ }
1430
+ }
1431
+ }
1432
+ }
1433
+ }));
1434
+
1435
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__5313__auto__){
1436
+ var self__ = this;
1437
+ var this__5313__auto____$1 = this;
1438
+ return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,"seen","seen",-518999789),self__.seen,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),self__.recursion_limits,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"acc","acc",838566312),self__.acc,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"pattern","pattern",242135423),self__.pattern,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"attr","attr",-604132353),self__.attr,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"attrs","attrs",-2090668713),self__.attrs,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"datoms","datoms",-290874434),self__.datoms,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"id","id",-1388402092),self__.id,null))], null),self__.__extmap));
1439
+ }));
1440
+
1441
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__5299__auto__,G__14041){
1442
+ var self__ = this;
1443
+ var this__5299__auto____$1 = this;
1444
+ return (new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.datoms,self__.id,G__14041,self__.__extmap,self__.__hash));
1445
+ }));
1446
+
1447
+ (datascript.pull_api.AttrsFrame.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__5305__auto__,entry__5306__auto__){
1448
+ var self__ = this;
1449
+ var this__5305__auto____$1 = this;
1450
+ if(cljs.core.vector_QMARK_(entry__5306__auto__)){
1451
+ return this__5305__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__5306__auto__,(0)),cljs.core._nth(entry__5306__auto__,(1)));
1452
+ } else {
1453
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__5305__auto____$1,entry__5306__auto__);
1454
+ }
1455
+ }));
1456
+
1457
+ (datascript.pull_api.AttrsFrame.prototype.datascript$pull_api$IFrame$ = cljs.core.PROTOCOL_SENTINEL);
1458
+
1459
+ (datascript.pull_api.AttrsFrame.prototype.datascript$pull_api$IFrame$_merge$arity$2 = (function (this$,result){
1460
+ var self__ = this;
1461
+ var this$__$1 = this;
1462
+ return (new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,datascript.pull_api.assoc_some_BANG_(self__.acc,self__.attr.as,(function (){var G__14073 = result.value;
1463
+ var fexpr__14072 = self__.attr.xform;
1464
+ return (fexpr__14072.cljs$core$IFn$_invoke$arity$1 ? fexpr__14072.cljs$core$IFn$_invoke$arity$1(G__14073) : fexpr__14072.call(null,G__14073));
1465
+ })()),self__.pattern,datascript.pull_api.first_seq(self__.attrs),datascript.pull_api.next_seq(self__.attrs),cljs.core.not_empty((function (){var or__5002__auto__ = result.datoms;
1466
+ if(cljs.core.truth_(or__5002__auto__)){
1467
+ return or__5002__auto__;
1468
+ } else {
1469
+ return datascript.pull_api.next_seq(self__.datoms);
1470
+ }
1471
+ })()),self__.id,null,null,null));
1472
+ }));
1473
+
1474
+ (datascript.pull_api.AttrsFrame.prototype.datascript$pull_api$IFrame$_run$arity$2 = (function (this$,context){
1475
+ var self__ = this;
1476
+ var this$__$1 = this;
1477
+ var acc__$1 = self__.acc;
1478
+ var attr__$1 = self__.attr;
1479
+ var attrs__$1 = self__.attrs;
1480
+ var datoms__$1 = self__.datoms;
1481
+ while(true){
1482
+ if((((datoms__$1 == null)) && ((attr__$1 == null)))){
1483
+ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [(function (){var G__14096 = self__.seen;
1484
+ var G__14097 = self__.recursion_limits;
1485
+ var G__14098 = acc__$1;
1486
+ var G__14099 = self__.pattern;
1487
+ var G__14100 = datascript.pull_api.first_seq(self__.pattern.reverse_attrs);
1488
+ var G__14101 = datascript.pull_api.next_seq(self__.pattern.reverse_attrs);
1489
+ var G__14102 = self__.id;
1490
+ return (datascript.pull_api.__GT_ReverseAttrsFrame.cljs$core$IFn$_invoke$arity$7 ? datascript.pull_api.__GT_ReverseAttrsFrame.cljs$core$IFn$_invoke$arity$7(G__14096,G__14097,G__14098,G__14099,G__14100,G__14101,G__14102) : datascript.pull_api.__GT_ReverseAttrsFrame.call(null,G__14096,G__14097,G__14098,G__14099,G__14100,G__14101,G__14102));
1491
+ })()], null);
1492
+ } else {
1493
+ if((((!((attr__$1 == null)))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("db","id","db/id",-1388397098),attr__$1.name)))){
1494
+ var G__14290 = cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(acc__$1,attr__$1.as,(function (){var fexpr__14103 = attr__$1.xform;
1495
+ return (fexpr__14103.cljs$core$IFn$_invoke$arity$1 ? fexpr__14103.cljs$core$IFn$_invoke$arity$1(self__.id) : fexpr__14103.call(null,self__.id));
1496
+ })());
1497
+ var G__14291 = datascript.pull_api.first_seq(attrs__$1);
1498
+ var G__14292 = datascript.pull_api.next_seq(attrs__$1);
1499
+ var G__14293 = datoms__$1;
1500
+ acc__$1 = G__14290;
1501
+ attr__$1 = G__14291;
1502
+ attrs__$1 = G__14292;
1503
+ datoms__$1 = G__14293;
1504
+ continue;
1505
+ } else {
1506
+ var datom = datascript.pull_api.first_seq(datoms__$1);
1507
+ var cmp = (cljs.core.truth_((function (){var and__5000__auto__ = datom;
1508
+ if(cljs.core.truth_(and__5000__auto__)){
1509
+ return attr__$1;
1510
+ } else {
1511
+ return and__5000__auto__;
1512
+ }
1513
+ })())?cljs.core.compare(attr__$1.name,datom.a):null);
1514
+ var attr_ahead_QMARK_ = (function (){var or__5002__auto__ = (attr__$1 == null);
1515
+ if(or__5002__auto__){
1516
+ return or__5002__auto__;
1517
+ } else {
1518
+ var and__5000__auto__ = cmp;
1519
+ if(cljs.core.truth_(and__5000__auto__)){
1520
+ return (cmp > (0));
1521
+ } else {
1522
+ return and__5000__auto__;
1523
+ }
1524
+ }
1525
+ })();
1526
+ var datom_ahead_QMARK_ = (function (){var or__5002__auto__ = (datom == null);
1527
+ if(or__5002__auto__){
1528
+ return or__5002__auto__;
1529
+ } else {
1530
+ var and__5000__auto__ = cmp;
1531
+ if(cljs.core.truth_(and__5000__auto__)){
1532
+ return (cmp < (0));
1533
+ } else {
1534
+ return and__5000__auto__;
1535
+ }
1536
+ }
1537
+ })();
1538
+ if(cljs.core.truth_((function (){var and__5000__auto__ = self__.pattern.wildcard_QMARK_;
1539
+ if(cljs.core.truth_(and__5000__auto__)){
1540
+ var and__5000__auto____$1 = (!((datom == null)));
1541
+ if(and__5000__auto____$1){
1542
+ return attr_ahead_QMARK_;
1543
+ } else {
1544
+ return and__5000__auto____$1;
1545
+ }
1546
+ } else {
1547
+ return and__5000__auto__;
1548
+ }
1549
+ })())){
1550
+ var datom_attr = datascript.lru._get(datascript.db.unfiltered_db(context.db).pull_attrs,datom.a,((function (acc__$1,attr__$1,attrs__$1,datoms__$1,datom,cmp,attr_ahead_QMARK_,datom_ahead_QMARK_,this$__$1){
1551
+ return (function (){
1552
+ return datascript.pull_parser.parse_attr_name(context.db,datom.a);
1553
+ });})(acc__$1,attr__$1,attrs__$1,datoms__$1,datom,cmp,attr_ahead_QMARK_,datom_ahead_QMARK_,this$__$1))
1554
+ );
1555
+ var G__14294 = acc__$1;
1556
+ var G__14295 = datom_attr;
1557
+ var G__14296 = (cljs.core.truth_(attr__$1)?datascript.pull_api.conj_seq(attrs__$1,attr__$1):null);
1558
+ var G__14297 = datoms__$1;
1559
+ acc__$1 = G__14294;
1560
+ attr__$1 = G__14295;
1561
+ attrs__$1 = G__14296;
1562
+ datoms__$1 = G__14297;
1563
+ continue;
1564
+ } else {
1565
+ if(cljs.core.truth_(attr_ahead_QMARK_)){
1566
+ var G__14298 = acc__$1;
1567
+ var G__14299 = attr__$1;
1568
+ var G__14300 = attrs__$1;
1569
+ var G__14301 = datascript.pull_api.next_seq(datoms__$1);
1570
+ acc__$1 = G__14298;
1571
+ attr__$1 = G__14299;
1572
+ attrs__$1 = G__14300;
1573
+ datoms__$1 = G__14301;
1574
+ continue;
1575
+ } else {
1576
+ datascript.pull_api.visit(context,new cljs.core.Keyword("db.pull","attr","db.pull/attr",-533298746),self__.id,attr__$1.name,null);
1577
+
1578
+ if(cljs.core.truth_((function (){var and__5000__auto__ = datom_ahead_QMARK_;
1579
+ if(cljs.core.truth_(and__5000__auto__)){
1580
+ return (attr__$1 == null);
1581
+ } else {
1582
+ return and__5000__auto__;
1583
+ }
1584
+ })())){
1585
+ var G__14302 = acc__$1;
1586
+ var G__14303 = datascript.pull_api.first_seq(attrs__$1);
1587
+ var G__14304 = datascript.pull_api.next_seq(attrs__$1);
1588
+ var G__14305 = datoms__$1;
1589
+ acc__$1 = G__14302;
1590
+ attr__$1 = G__14303;
1591
+ attrs__$1 = G__14304;
1592
+ datoms__$1 = G__14305;
1593
+ continue;
1594
+ } else {
1595
+ if(cljs.core.truth_((function (){var and__5000__auto__ = datom_ahead_QMARK_;
1596
+ if(cljs.core.truth_(and__5000__auto__)){
1597
+ return (!((new cljs.core.Keyword(null,"default","default",-1987822328).cljs$core$IFn$_invoke$arity$1(attr__$1) == null)));
1598
+ } else {
1599
+ return and__5000__auto__;
1600
+ }
1601
+ })())){
1602
+ var G__14306 = cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(acc__$1,attr__$1.as,new cljs.core.Keyword(null,"default","default",-1987822328).cljs$core$IFn$_invoke$arity$1(attr__$1));
1603
+ var G__14307 = datascript.pull_api.first_seq(attrs__$1);
1604
+ var G__14308 = datascript.pull_api.next_seq(attrs__$1);
1605
+ var G__14309 = datoms__$1;
1606
+ acc__$1 = G__14306;
1607
+ attr__$1 = G__14307;
1608
+ attrs__$1 = G__14308;
1609
+ datoms__$1 = G__14309;
1610
+ continue;
1611
+ } else {
1612
+ if(cljs.core.truth_(datom_ahead_QMARK_)){
1613
+ var temp__5806__auto__ = (function (){var fexpr__14105 = attr__$1.xform;
1614
+ return (fexpr__14105.cljs$core$IFn$_invoke$arity$1 ? fexpr__14105.cljs$core$IFn$_invoke$arity$1(null) : fexpr__14105.call(null,null));
1615
+ })();
1616
+ if((temp__5806__auto__ == null)){
1617
+ var G__14310 = acc__$1;
1618
+ var G__14311 = datascript.pull_api.first_seq(attrs__$1);
1619
+ var G__14312 = datascript.pull_api.next_seq(attrs__$1);
1620
+ var G__14313 = datoms__$1;
1621
+ acc__$1 = G__14310;
1622
+ attr__$1 = G__14311;
1623
+ attrs__$1 = G__14312;
1624
+ datoms__$1 = G__14313;
1625
+ continue;
1626
+ } else {
1627
+ var value = temp__5806__auto__;
1628
+ var G__14314 = cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(acc__$1,attr__$1.as,value);
1629
+ var G__14315 = datascript.pull_api.first_seq(attrs__$1);
1630
+ var G__14316 = datascript.pull_api.next_seq(attrs__$1);
1631
+ var G__14317 = datoms__$1;
1632
+ acc__$1 = G__14314;
1633
+ attr__$1 = G__14315;
1634
+ attrs__$1 = G__14316;
1635
+ datoms__$1 = G__14317;
1636
+ continue;
1637
+ }
1638
+ } else {
1639
+ if(cljs.core.truth_((function (){var and__5000__auto__ = attr__$1.multival_QMARK_;
1640
+ if(cljs.core.truth_(and__5000__auto__)){
1641
+ return attr__$1.ref_QMARK_;
1642
+ } else {
1643
+ return and__5000__auto__;
1644
+ }
1645
+ })())){
1646
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,acc__$1,self__.pattern,attr__$1,attrs__$1,datoms__$1,self__.id,null,null,null)),(new datascript.pull_api.MultivalRefAttrFrame(self__.seen,self__.recursion_limits,cljs.core.transient$(cljs.core.PersistentVector.EMPTY),self__.pattern,attr__$1,datoms__$1,null,null,null))], null);
1647
+ } else {
1648
+ if(cljs.core.truth_(attr__$1.multival_QMARK_)){
1649
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,acc__$1,self__.pattern,attr__$1,attrs__$1,datoms__$1,self__.id,null,null,null)),(new datascript.pull_api.MultivalAttrFrame(cljs.core.transient$(cljs.core.PersistentVector.EMPTY),attr__$1,datoms__$1,null,null,null))], null);
1650
+ } else {
1651
+ if(cljs.core.truth_(attr__$1.ref_QMARK_)){
1652
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new datascript.pull_api.AttrsFrame(self__.seen,self__.recursion_limits,acc__$1,self__.pattern,attr__$1,attrs__$1,datoms__$1,self__.id,null,null,null)),(function (){var G__14106 = context;
1653
+ var G__14107 = self__.seen;
1654
+ var G__14108 = self__.recursion_limits;
1655
+ var G__14109 = self__.pattern;
1656
+ var G__14110 = attr__$1;
1657
+ var G__14111 = datom.v;
1658
+ return (datascript.pull_api.ref_frame.cljs$core$IFn$_invoke$arity$6 ? datascript.pull_api.ref_frame.cljs$core$IFn$_invoke$arity$6(G__14106,G__14107,G__14108,G__14109,G__14110,G__14111) : datascript.pull_api.ref_frame.call(null,G__14106,G__14107,G__14108,G__14109,G__14110,G__14111));
1659
+ })()], null);
1660
+ } else {
1661
+ var G__14318 = cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(acc__$1,attr__$1.as,(function (){var G__14113 = datom.v;
1662
+ var fexpr__14112 = attr__$1.xform;
1663
+ return (fexpr__14112.cljs$core$IFn$_invoke$arity$1 ? fexpr__14112.cljs$core$IFn$_invoke$arity$1(G__14113) : fexpr__14112.call(null,G__14113));
1664
+ })());
1665
+ var G__14319 = datascript.pull_api.first_seq(attrs__$1);
1666
+ var G__14320 = datascript.pull_api.next_seq(attrs__$1);
1667
+ var G__14321 = datascript.pull_api.next_seq(datoms__$1);
1668
+ acc__$1 = G__14318;
1669
+ attr__$1 = G__14319;
1670
+ attrs__$1 = G__14320;
1671
+ datoms__$1 = G__14321;
1672
+ continue;
1673
+
1674
+ }
1675
+ }
1676
+ }
1677
+ }
1678
+ }
1679
+ }
1680
+ }
1681
+ }
1682
+ }
1683
+ }
1684
+ break;
1685
+ }
1686
+ }));
1687
+
1688
+ (datascript.pull_api.AttrsFrame.prototype.datascript$pull_api$IFrame$_str$arity$1 = (function (this$){
1689
+ var self__ = this;
1690
+ var this$__$1 = this;
1691
+ return ["AttrsFrame<id=",cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.id),", attr=",cljs.core.str.cljs$core$IFn$_invoke$arity$1(datascript.pull_api.attr_str(self__.attr)),", attrs=",clojure.string.join.cljs$core$IFn$_invoke$arity$2(" ",cljs.core.map.cljs$core$IFn$_invoke$arity$2(datascript.pull_api.attr_str,self__.attrs)),">"].join('');
1692
+ }));
1693
+
1694
+ (datascript.pull_api.AttrsFrame.getBasis = (function (){
1695
+ return new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"seen","seen",1121531738,null),new cljs.core.Symbol(null,"recursion-limits","recursion-limits",-891577955,null),new cljs.core.Symbol(null,"acc","acc",-1815869457,null),cljs.core.with_meta(new cljs.core.Symbol(null,"pattern","pattern",1882666950,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"tag","tag",-1290361223),new cljs.core.Symbol(null,"PullPattern","PullPattern",1378528189,null)], null)),cljs.core.with_meta(new cljs.core.Symbol(null,"attr","attr",1036399174,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"tag","tag",-1290361223),new cljs.core.Symbol(null,"PullAttr","PullAttr",1557473458,null)], null)),new cljs.core.Symbol(null,"attrs","attrs",-450137186,null),new cljs.core.Symbol(null,"datoms","datoms",1349657093,null),new cljs.core.Symbol(null,"id","id",252129435,null)], null);
1696
+ }));
1697
+
1698
+ (datascript.pull_api.AttrsFrame.cljs$lang$type = true);
1699
+
1700
+ (datascript.pull_api.AttrsFrame.cljs$lang$ctorPrSeq = (function (this__5346__auto__){
1701
+ return (new cljs.core.List(null,"datascript.pull-api/AttrsFrame",null,(1),null));
1702
+ }));
1703
+
1704
+ (datascript.pull_api.AttrsFrame.cljs$lang$ctorPrWriter = (function (this__5346__auto__,writer__5347__auto__){
1705
+ return cljs.core._write(writer__5347__auto__,"datascript.pull-api/AttrsFrame");
1706
+ }));
1707
+
1708
+ /**
1709
+ * Positional factory function for datascript.pull-api/AttrsFrame.
1710
+ */
1711
+ datascript.pull_api.__GT_AttrsFrame = (function datascript$pull_api$__GT_AttrsFrame(seen,recursion_limits,acc,pattern,attr,attrs,datoms,id){
1712
+ return (new datascript.pull_api.AttrsFrame(seen,recursion_limits,acc,pattern,attr,attrs,datoms,id,null,null,null));
1713
+ });
1714
+
1715
+ /**
1716
+ * Factory function for datascript.pull-api/AttrsFrame, taking a map of keywords to field values.
1717
+ */
1718
+ datascript.pull_api.map__GT_AttrsFrame = (function datascript$pull_api$map__GT_AttrsFrame(G__14048){
1719
+ var extmap__5342__auto__ = (function (){var G__14114 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__14048,new cljs.core.Keyword(null,"seen","seen",-518999789),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),new cljs.core.Keyword(null,"acc","acc",838566312),new cljs.core.Keyword(null,"pattern","pattern",242135423),new cljs.core.Keyword(null,"attr","attr",-604132353),new cljs.core.Keyword(null,"attrs","attrs",-2090668713),new cljs.core.Keyword(null,"datoms","datoms",-290874434),new cljs.core.Keyword(null,"id","id",-1388402092)], 0));
1720
+ if(cljs.core.record_QMARK_(G__14048)){
1721
+ return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__14114);
1722
+ } else {
1723
+ return G__14114;
1724
+ }
1725
+ })();
1726
+ return (new datascript.pull_api.AttrsFrame(new cljs.core.Keyword(null,"seen","seen",-518999789).cljs$core$IFn$_invoke$arity$1(G__14048),new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814).cljs$core$IFn$_invoke$arity$1(G__14048),new cljs.core.Keyword(null,"acc","acc",838566312).cljs$core$IFn$_invoke$arity$1(G__14048),new cljs.core.Keyword(null,"pattern","pattern",242135423).cljs$core$IFn$_invoke$arity$1(G__14048),new cljs.core.Keyword(null,"attr","attr",-604132353).cljs$core$IFn$_invoke$arity$1(G__14048),new cljs.core.Keyword(null,"attrs","attrs",-2090668713).cljs$core$IFn$_invoke$arity$1(G__14048),new cljs.core.Keyword(null,"datoms","datoms",-290874434).cljs$core$IFn$_invoke$arity$1(G__14048),new cljs.core.Keyword(null,"id","id",-1388402092).cljs$core$IFn$_invoke$arity$1(G__14048),null,cljs.core.not_empty(extmap__5342__auto__),null));
1727
+ });
1728
+
1729
+
1730
+ /**
1731
+ * @constructor
1732
+ * @implements {cljs.core.IRecord}
1733
+ * @implements {datascript.pull_api.IFrame}
1734
+ * @implements {cljs.core.IKVReduce}
1735
+ * @implements {cljs.core.IEquiv}
1736
+ * @implements {cljs.core.IHash}
1737
+ * @implements {cljs.core.ICollection}
1738
+ * @implements {cljs.core.ICounted}
1739
+ * @implements {cljs.core.ISeqable}
1740
+ * @implements {cljs.core.IMeta}
1741
+ * @implements {cljs.core.ICloneable}
1742
+ * @implements {cljs.core.IPrintWithWriter}
1743
+ * @implements {cljs.core.IIterable}
1744
+ * @implements {cljs.core.IWithMeta}
1745
+ * @implements {cljs.core.IAssociative}
1746
+ * @implements {cljs.core.IMap}
1747
+ * @implements {cljs.core.ILookup}
1748
+ */
1749
+ datascript.pull_api.ReverseAttrsFrame = (function (seen,recursion_limits,acc,pattern,attr,attrs,id,__meta,__extmap,__hash){
1750
+ this.seen = seen;
1751
+ this.recursion_limits = recursion_limits;
1752
+ this.acc = acc;
1753
+ this.pattern = pattern;
1754
+ this.attr = attr;
1755
+ this.attrs = attrs;
1756
+ this.id = id;
1757
+ this.__meta = __meta;
1758
+ this.__extmap = __extmap;
1759
+ this.__hash = __hash;
1760
+ this.cljs$lang$protocol_mask$partition0$ = 2230716170;
1761
+ this.cljs$lang$protocol_mask$partition1$ = 139264;
1762
+ });
1763
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__5300__auto__,k__5301__auto__){
1764
+ var self__ = this;
1765
+ var this__5300__auto____$1 = this;
1766
+ return this__5300__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__5301__auto__,null);
1767
+ }));
1768
+
1769
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__5302__auto__,k14123,else__5303__auto__){
1770
+ var self__ = this;
1771
+ var this__5302__auto____$1 = this;
1772
+ var G__14129 = k14123;
1773
+ var G__14129__$1 = (((G__14129 instanceof cljs.core.Keyword))?G__14129.fqn:null);
1774
+ switch (G__14129__$1) {
1775
+ case "seen":
1776
+ return self__.seen;
1777
+
1778
+ break;
1779
+ case "recursion-limits":
1780
+ return self__.recursion_limits;
1781
+
1782
+ break;
1783
+ case "acc":
1784
+ return self__.acc;
1785
+
1786
+ break;
1787
+ case "pattern":
1788
+ return self__.pattern;
1789
+
1790
+ break;
1791
+ case "attr":
1792
+ return self__.attr;
1793
+
1794
+ break;
1795
+ case "attrs":
1796
+ return self__.attrs;
1797
+
1798
+ break;
1799
+ case "id":
1800
+ return self__.id;
1801
+
1802
+ break;
1803
+ default:
1804
+ return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k14123,else__5303__auto__);
1805
+
1806
+ }
1807
+ }));
1808
+
1809
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__5320__auto__,f__5321__auto__,init__5322__auto__){
1810
+ var self__ = this;
1811
+ var this__5320__auto____$1 = this;
1812
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__5323__auto__,p__14134){
1813
+ var vec__14135 = p__14134;
1814
+ var k__5324__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14135,(0),null);
1815
+ var v__5325__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14135,(1),null);
1816
+ return (f__5321__auto__.cljs$core$IFn$_invoke$arity$3 ? f__5321__auto__.cljs$core$IFn$_invoke$arity$3(ret__5323__auto__,k__5324__auto__,v__5325__auto__) : f__5321__auto__.call(null,ret__5323__auto__,k__5324__auto__,v__5325__auto__));
1817
+ }),init__5322__auto__,this__5320__auto____$1);
1818
+ }));
1819
+
1820
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__5315__auto__,writer__5316__auto__,opts__5317__auto__){
1821
+ var self__ = this;
1822
+ var this__5315__auto____$1 = this;
1823
+ var pr_pair__5318__auto__ = (function (keyval__5319__auto__){
1824
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,cljs.core.pr_writer,""," ","",opts__5317__auto__,keyval__5319__auto__);
1825
+ });
1826
+ return cljs.core.pr_sequential_writer(writer__5316__auto__,pr_pair__5318__auto__,"#datascript.pull-api.ReverseAttrsFrame{",", ","}",opts__5317__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 7, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"seen","seen",-518999789),self__.seen],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),self__.recursion_limits],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"acc","acc",838566312),self__.acc],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"pattern","pattern",242135423),self__.pattern],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"attr","attr",-604132353),self__.attr],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"attrs","attrs",-2090668713),self__.attrs],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,"id","id",-1388402092),self__.id],null))], null),self__.__extmap));
1827
+ }));
1828
+
1829
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__14122){
1830
+ var self__ = this;
1831
+ var G__14122__$1 = this;
1832
+ return (new cljs.core.RecordIter((0),G__14122__$1,7,new cljs.core.PersistentVector(null, 7, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"seen","seen",-518999789),new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),new cljs.core.Keyword(null,"acc","acc",838566312),new cljs.core.Keyword(null,"pattern","pattern",242135423),new cljs.core.Keyword(null,"attr","attr",-604132353),new cljs.core.Keyword(null,"attrs","attrs",-2090668713),new cljs.core.Keyword(null,"id","id",-1388402092)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
1833
+ }));
1834
+
1835
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__5298__auto__){
1836
+ var self__ = this;
1837
+ var this__5298__auto____$1 = this;
1838
+ return self__.__meta;
1839
+ }));
1840
+
1841
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__5295__auto__){
1842
+ var self__ = this;
1843
+ var this__5295__auto____$1 = this;
1844
+ return (new datascript.pull_api.ReverseAttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.id,self__.__meta,self__.__extmap,self__.__hash));
1845
+ }));
1846
+
1847
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__5304__auto__){
1848
+ var self__ = this;
1849
+ var this__5304__auto____$1 = this;
1850
+ return (7 + cljs.core.count(self__.__extmap));
1851
+ }));
1852
+
1853
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__5296__auto__){
1854
+ var self__ = this;
1855
+ var this__5296__auto____$1 = this;
1856
+ var h__5111__auto__ = self__.__hash;
1857
+ if((!((h__5111__auto__ == null)))){
1858
+ return h__5111__auto__;
1859
+ } else {
1860
+ var h__5111__auto____$1 = (function (coll__5297__auto__){
1861
+ return (470210558 ^ cljs.core.hash_unordered_coll(coll__5297__auto__));
1862
+ })(this__5296__auto____$1);
1863
+ (self__.__hash = h__5111__auto____$1);
1864
+
1865
+ return h__5111__auto____$1;
1866
+ }
1867
+ }));
1868
+
1869
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this14124,other14125){
1870
+ var self__ = this;
1871
+ var this14124__$1 = this;
1872
+ return (((!((other14125 == null)))) && ((((this14124__$1.constructor === other14125.constructor)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14124__$1.seen,other14125.seen)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14124__$1.recursion_limits,other14125.recursion_limits)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14124__$1.acc,other14125.acc)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14124__$1.pattern,other14125.pattern)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14124__$1.attr,other14125.attr)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14124__$1.attrs,other14125.attrs)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14124__$1.id,other14125.id)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this14124__$1.__extmap,other14125.__extmap)))))))))))))))))));
1873
+ }));
1874
+
1875
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__5310__auto__,k__5311__auto__){
1876
+ var self__ = this;
1877
+ var this__5310__auto____$1 = this;
1878
+ if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 7, [new cljs.core.Keyword(null,"acc","acc",838566312),null,new cljs.core.Keyword(null,"seen","seen",-518999789),null,new cljs.core.Keyword(null,"id","id",-1388402092),null,new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),null,new cljs.core.Keyword(null,"attrs","attrs",-2090668713),null,new cljs.core.Keyword(null,"pattern","pattern",242135423),null,new cljs.core.Keyword(null,"attr","attr",-604132353),null], null), null),k__5311__auto__)){
1879
+ return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__5310__auto____$1),self__.__meta),k__5311__auto__);
1880
+ } else {
1881
+ return (new datascript.pull_api.ReverseAttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.id,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__5311__auto__)),null));
1882
+ }
1883
+ }));
1884
+
1885
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 = (function (this__5307__auto__,k14123){
1886
+ var self__ = this;
1887
+ var this__5307__auto____$1 = this;
1888
+ var G__14142 = k14123;
1889
+ var G__14142__$1 = (((G__14142 instanceof cljs.core.Keyword))?G__14142.fqn:null);
1890
+ switch (G__14142__$1) {
1891
+ case "seen":
1892
+ case "recursion-limits":
1893
+ case "acc":
1894
+ case "pattern":
1895
+ case "attr":
1896
+ case "attrs":
1897
+ case "id":
1898
+ return true;
1899
+
1900
+ break;
1901
+ default:
1902
+ return cljs.core.contains_QMARK_(self__.__extmap,k14123);
1903
+
1904
+ }
1905
+ }));
1906
+
1907
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__5308__auto__,k__5309__auto__,G__14122){
1908
+ var self__ = this;
1909
+ var this__5308__auto____$1 = this;
1910
+ var pred__14143 = cljs.core.keyword_identical_QMARK_;
1911
+ var expr__14144 = k__5309__auto__;
1912
+ if(cljs.core.truth_((pred__14143.cljs$core$IFn$_invoke$arity$2 ? pred__14143.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"seen","seen",-518999789),expr__14144) : pred__14143.call(null,new cljs.core.Keyword(null,"seen","seen",-518999789),expr__14144)))){
1913
+ return (new datascript.pull_api.ReverseAttrsFrame(G__14122,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.id,self__.__meta,self__.__extmap,null));
1914
+ } else {
1915
+ if(cljs.core.truth_((pred__14143.cljs$core$IFn$_invoke$arity$2 ? pred__14143.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),expr__14144) : pred__14143.call(null,new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),expr__14144)))){
1916
+ return (new datascript.pull_api.ReverseAttrsFrame(self__.seen,G__14122,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.id,self__.__meta,self__.__extmap,null));
1917
+ } else {
1918
+ if(cljs.core.truth_((pred__14143.cljs$core$IFn$_invoke$arity$2 ? pred__14143.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"acc","acc",838566312),expr__14144) : pred__14143.call(null,new cljs.core.Keyword(null,"acc","acc",838566312),expr__14144)))){
1919
+ return (new datascript.pull_api.ReverseAttrsFrame(self__.seen,self__.recursion_limits,G__14122,self__.pattern,self__.attr,self__.attrs,self__.id,self__.__meta,self__.__extmap,null));
1920
+ } else {
1921
+ if(cljs.core.truth_((pred__14143.cljs$core$IFn$_invoke$arity$2 ? pred__14143.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"pattern","pattern",242135423),expr__14144) : pred__14143.call(null,new cljs.core.Keyword(null,"pattern","pattern",242135423),expr__14144)))){
1922
+ return (new datascript.pull_api.ReverseAttrsFrame(self__.seen,self__.recursion_limits,self__.acc,G__14122,self__.attr,self__.attrs,self__.id,self__.__meta,self__.__extmap,null));
1923
+ } else {
1924
+ if(cljs.core.truth_((pred__14143.cljs$core$IFn$_invoke$arity$2 ? pred__14143.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"attr","attr",-604132353),expr__14144) : pred__14143.call(null,new cljs.core.Keyword(null,"attr","attr",-604132353),expr__14144)))){
1925
+ return (new datascript.pull_api.ReverseAttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,G__14122,self__.attrs,self__.id,self__.__meta,self__.__extmap,null));
1926
+ } else {
1927
+ if(cljs.core.truth_((pred__14143.cljs$core$IFn$_invoke$arity$2 ? pred__14143.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"attrs","attrs",-2090668713),expr__14144) : pred__14143.call(null,new cljs.core.Keyword(null,"attrs","attrs",-2090668713),expr__14144)))){
1928
+ return (new datascript.pull_api.ReverseAttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,G__14122,self__.id,self__.__meta,self__.__extmap,null));
1929
+ } else {
1930
+ if(cljs.core.truth_((pred__14143.cljs$core$IFn$_invoke$arity$2 ? pred__14143.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"id","id",-1388402092),expr__14144) : pred__14143.call(null,new cljs.core.Keyword(null,"id","id",-1388402092),expr__14144)))){
1931
+ return (new datascript.pull_api.ReverseAttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,G__14122,self__.__meta,self__.__extmap,null));
1932
+ } else {
1933
+ return (new datascript.pull_api.ReverseAttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.id,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__5309__auto__,G__14122),null));
1934
+ }
1935
+ }
1936
+ }
1937
+ }
1938
+ }
1939
+ }
1940
+ }
1941
+ }));
1942
+
1943
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__5313__auto__){
1944
+ var self__ = this;
1945
+ var this__5313__auto____$1 = this;
1946
+ return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 7, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,"seen","seen",-518999789),self__.seen,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),self__.recursion_limits,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"acc","acc",838566312),self__.acc,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"pattern","pattern",242135423),self__.pattern,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"attr","attr",-604132353),self__.attr,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"attrs","attrs",-2090668713),self__.attrs,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,"id","id",-1388402092),self__.id,null))], null),self__.__extmap));
1947
+ }));
1948
+
1949
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__5299__auto__,G__14122){
1950
+ var self__ = this;
1951
+ var this__5299__auto____$1 = this;
1952
+ return (new datascript.pull_api.ReverseAttrsFrame(self__.seen,self__.recursion_limits,self__.acc,self__.pattern,self__.attr,self__.attrs,self__.id,G__14122,self__.__extmap,self__.__hash));
1953
+ }));
1954
+
1955
+ (datascript.pull_api.ReverseAttrsFrame.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__5305__auto__,entry__5306__auto__){
1956
+ var self__ = this;
1957
+ var this__5305__auto____$1 = this;
1958
+ if(cljs.core.vector_QMARK_(entry__5306__auto__)){
1959
+ return this__5305__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__5306__auto__,(0)),cljs.core._nth(entry__5306__auto__,(1)));
1960
+ } else {
1961
+ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__5305__auto____$1,entry__5306__auto__);
1962
+ }
1963
+ }));
1964
+
1965
+ (datascript.pull_api.ReverseAttrsFrame.prototype.datascript$pull_api$IFrame$ = cljs.core.PROTOCOL_SENTINEL);
1966
+
1967
+ (datascript.pull_api.ReverseAttrsFrame.prototype.datascript$pull_api$IFrame$_merge$arity$2 = (function (this$,result){
1968
+ var self__ = this;
1969
+ var this$__$1 = this;
1970
+ return (new datascript.pull_api.ReverseAttrsFrame(self__.seen,self__.recursion_limits,datascript.pull_api.assoc_some_BANG_(self__.acc,self__.attr.as,(function (){var G__14149 = result.value;
1971
+ var fexpr__14148 = self__.attr.xform;
1972
+ return (fexpr__14148.cljs$core$IFn$_invoke$arity$1 ? fexpr__14148.cljs$core$IFn$_invoke$arity$1(G__14149) : fexpr__14148.call(null,G__14149));
1973
+ })()),self__.pattern,datascript.pull_api.first_seq(self__.attrs),datascript.pull_api.next_seq(self__.attrs),self__.id,null,null,null));
1974
+ }));
1975
+
1976
+ (datascript.pull_api.ReverseAttrsFrame.prototype.datascript$pull_api$IFrame$_run$arity$2 = (function (this$,context){
1977
+ var self__ = this;
1978
+ var this$__$1 = this;
1979
+ var acc__$1 = self__.acc;
1980
+ var attr__$1 = self__.attr;
1981
+ var attrs__$1 = self__.attrs;
1982
+ while(true){
1983
+ if((attr__$1 == null)){
1984
+ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new datascript.pull_api.ResultFrame(cljs.core.not_empty(cljs.core.persistent_BANG_(acc__$1)),null,null,null,null))], null);
1985
+ } else {
1986
+ var name = attr__$1.name;
1987
+ var db = context.db;
1988
+ var datoms = (((db instanceof datascript.db.DB))?me.tonsky.persistent_sorted_set.slice.cljs$core$IFn$_invoke$arity$3(db.avet,datascript.db.datom.cljs$core$IFn$_invoke$arity$4((0),name,self__.id,(536870912)),datascript.db.datom.cljs$core$IFn$_invoke$arity$4((2147483647),name,self__.id,(2147483647))):datascript.db._search(db,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,name,self__.id], null)));
1989
+ datascript.pull_api.visit(context,new cljs.core.Keyword("db.pull","reverse","db.pull/reverse",1999788297),null,name,self__.id);
1990
+
1991
+ if(((cljs.core.empty_QMARK_(datoms)) && ((!((new cljs.core.Keyword(null,"default","default",-1987822328).cljs$core$IFn$_invoke$arity$1(attr__$1) == null)))))){
1992
+ var G__14332 = cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(acc__$1,attr__$1.as,new cljs.core.Keyword(null,"default","default",-1987822328).cljs$core$IFn$_invoke$arity$1(attr__$1));
1993
+ var G__14333 = datascript.pull_api.first_seq(attrs__$1);
1994
+ var G__14334 = datascript.pull_api.next_seq(attrs__$1);
1995
+ acc__$1 = G__14332;
1996
+ attr__$1 = G__14333;
1997
+ attrs__$1 = G__14334;
1998
+ continue;
1999
+ } else {
2000
+ if(cljs.core.empty_QMARK_(datoms)){
2001
+ var G__14335 = acc__$1;
2002
+ var G__14336 = datascript.pull_api.first_seq(attrs__$1);
2003
+ var G__14337 = datascript.pull_api.next_seq(attrs__$1);
2004
+ acc__$1 = G__14335;
2005
+ attr__$1 = G__14336;
2006
+ attrs__$1 = G__14337;
2007
+ continue;
2008
+ } else {
2009
+ if(cljs.core.truth_(attr__$1.component_QMARK_)){
2010
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new datascript.pull_api.ReverseAttrsFrame(self__.seen,self__.recursion_limits,acc__$1,self__.pattern,attr__$1,attrs__$1,self__.id,null,null,null)),(function (){var G__14165 = context;
2011
+ var G__14166 = self__.seen;
2012
+ var G__14167 = self__.recursion_limits;
2013
+ var G__14168 = self__.pattern;
2014
+ var G__14169 = attr__$1;
2015
+ var G__14170 = datascript.pull_api.first_seq(datoms).e;
2016
+ return (datascript.pull_api.ref_frame.cljs$core$IFn$_invoke$arity$6 ? datascript.pull_api.ref_frame.cljs$core$IFn$_invoke$arity$6(G__14165,G__14166,G__14167,G__14168,G__14169,G__14170) : datascript.pull_api.ref_frame.call(null,G__14165,G__14166,G__14167,G__14168,G__14169,G__14170));
2017
+ })()], null);
2018
+ } else {
2019
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new datascript.pull_api.ReverseAttrsFrame(self__.seen,self__.recursion_limits,acc__$1,self__.pattern,attr__$1,attrs__$1,self__.id,null,null,null)),(new datascript.pull_api.MultivalRefAttrFrame(self__.seen,self__.recursion_limits,cljs.core.transient$(cljs.core.PersistentVector.EMPTY),self__.pattern,attr__$1,datoms,null,null,null))], null);
2020
+
2021
+ }
2022
+ }
2023
+ }
2024
+ }
2025
+ break;
2026
+ }
2027
+ }));
2028
+
2029
+ (datascript.pull_api.ReverseAttrsFrame.prototype.datascript$pull_api$IFrame$_str$arity$1 = (function (this$){
2030
+ var self__ = this;
2031
+ var this$__$1 = this;
2032
+ return ["ReverseAttrsFrame<id=",cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.id),", attr=",cljs.core.str.cljs$core$IFn$_invoke$arity$1(datascript.pull_api.attr_str(self__.attr)),", attrs=",clojure.string.join.cljs$core$IFn$_invoke$arity$2(" ",cljs.core.map.cljs$core$IFn$_invoke$arity$2(datascript.pull_api.attr_str,self__.attrs)),">"].join('');
2033
+ }));
2034
+
2035
+ (datascript.pull_api.ReverseAttrsFrame.getBasis = (function (){
2036
+ return new cljs.core.PersistentVector(null, 7, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"seen","seen",1121531738,null),new cljs.core.Symbol(null,"recursion-limits","recursion-limits",-891577955,null),new cljs.core.Symbol(null,"acc","acc",-1815869457,null),new cljs.core.Symbol(null,"pattern","pattern",1882666950,null),cljs.core.with_meta(new cljs.core.Symbol(null,"attr","attr",1036399174,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"tag","tag",-1290361223),new cljs.core.Symbol(null,"PullAttr","PullAttr",1557473458,null)], null)),new cljs.core.Symbol(null,"attrs","attrs",-450137186,null),new cljs.core.Symbol(null,"id","id",252129435,null)], null);
2037
+ }));
2038
+
2039
+ (datascript.pull_api.ReverseAttrsFrame.cljs$lang$type = true);
2040
+
2041
+ (datascript.pull_api.ReverseAttrsFrame.cljs$lang$ctorPrSeq = (function (this__5346__auto__){
2042
+ return (new cljs.core.List(null,"datascript.pull-api/ReverseAttrsFrame",null,(1),null));
2043
+ }));
2044
+
2045
+ (datascript.pull_api.ReverseAttrsFrame.cljs$lang$ctorPrWriter = (function (this__5346__auto__,writer__5347__auto__){
2046
+ return cljs.core._write(writer__5347__auto__,"datascript.pull-api/ReverseAttrsFrame");
2047
+ }));
2048
+
2049
+ /**
2050
+ * Positional factory function for datascript.pull-api/ReverseAttrsFrame.
2051
+ */
2052
+ datascript.pull_api.__GT_ReverseAttrsFrame = (function datascript$pull_api$__GT_ReverseAttrsFrame(seen,recursion_limits,acc,pattern,attr,attrs,id){
2053
+ return (new datascript.pull_api.ReverseAttrsFrame(seen,recursion_limits,acc,pattern,attr,attrs,id,null,null,null));
2054
+ });
2055
+
2056
+ /**
2057
+ * Factory function for datascript.pull-api/ReverseAttrsFrame, taking a map of keywords to field values.
2058
+ */
2059
+ datascript.pull_api.map__GT_ReverseAttrsFrame = (function datascript$pull_api$map__GT_ReverseAttrsFrame(G__14127){
2060
+ var extmap__5342__auto__ = (function (){var G__14172 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__14127,new cljs.core.Keyword(null,"seen","seen",-518999789),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814),new cljs.core.Keyword(null,"acc","acc",838566312),new cljs.core.Keyword(null,"pattern","pattern",242135423),new cljs.core.Keyword(null,"attr","attr",-604132353),new cljs.core.Keyword(null,"attrs","attrs",-2090668713),new cljs.core.Keyword(null,"id","id",-1388402092)], 0));
2061
+ if(cljs.core.record_QMARK_(G__14127)){
2062
+ return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__14172);
2063
+ } else {
2064
+ return G__14172;
2065
+ }
2066
+ })();
2067
+ return (new datascript.pull_api.ReverseAttrsFrame(new cljs.core.Keyword(null,"seen","seen",-518999789).cljs$core$IFn$_invoke$arity$1(G__14127),new cljs.core.Keyword(null,"recursion-limits","recursion-limits",1762857814).cljs$core$IFn$_invoke$arity$1(G__14127),new cljs.core.Keyword(null,"acc","acc",838566312).cljs$core$IFn$_invoke$arity$1(G__14127),new cljs.core.Keyword(null,"pattern","pattern",242135423).cljs$core$IFn$_invoke$arity$1(G__14127),new cljs.core.Keyword(null,"attr","attr",-604132353).cljs$core$IFn$_invoke$arity$1(G__14127),new cljs.core.Keyword(null,"attrs","attrs",-2090668713).cljs$core$IFn$_invoke$arity$1(G__14127),new cljs.core.Keyword(null,"id","id",-1388402092).cljs$core$IFn$_invoke$arity$1(G__14127),null,cljs.core.not_empty(extmap__5342__auto__),null));
2068
+ });
2069
+
2070
+ datascript.pull_api.auto_expanding_QMARK_ = (function datascript$pull_api$auto_expanding_QMARK_(attr){
2071
+ var or__5002__auto__ = attr.recursive_QMARK_;
2072
+ if(cljs.core.truth_(or__5002__auto__)){
2073
+ return or__5002__auto__;
2074
+ } else {
2075
+ var and__5000__auto__ = attr.component_QMARK_;
2076
+ if(cljs.core.truth_(and__5000__auto__)){
2077
+ return attr.pattern.wildcard_QMARK_;
2078
+ } else {
2079
+ return and__5000__auto__;
2080
+ }
2081
+ }
2082
+ });
2083
+ datascript.pull_api.ref_frame = (function datascript$pull_api$ref_frame(context,seen,recursion_limits,pattern,attr,id){
2084
+ if(cljs.core.not(datascript.pull_api.auto_expanding_QMARK_(attr))){
2085
+ var G__14177 = context;
2086
+ var G__14178 = seen;
2087
+ var G__14179 = recursion_limits;
2088
+ var G__14180 = attr.pattern;
2089
+ var G__14181 = id;
2090
+ return (datascript.pull_api.attrs_frame.cljs$core$IFn$_invoke$arity$5 ? datascript.pull_api.attrs_frame.cljs$core$IFn$_invoke$arity$5(G__14177,G__14178,G__14179,G__14180,G__14181) : datascript.pull_api.attrs_frame.call(null,G__14177,G__14178,G__14179,G__14180,G__14181));
2091
+ } else {
2092
+ if(cljs.core.truth_((seen.cljs$core$IFn$_invoke$arity$1 ? seen.cljs$core$IFn$_invoke$arity$1(id) : seen.call(null,id)))){
2093
+ return (new datascript.pull_api.ResultFrame(new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword("db","id","db/id",-1388397098),id], null),null,null,null,null));
2094
+ } else {
2095
+ var lim = (recursion_limits.cljs$core$IFn$_invoke$arity$1 ? recursion_limits.cljs$core$IFn$_invoke$arity$1(attr) : recursion_limits.call(null,attr));
2096
+ if(cljs.core.truth_((function (){var and__5000__auto__ = lim;
2097
+ if(cljs.core.truth_(and__5000__auto__)){
2098
+ return (lim <= (0));
2099
+ } else {
2100
+ return and__5000__auto__;
2101
+ }
2102
+ })())){
2103
+ return (new datascript.pull_api.ResultFrame(null,null,null,null,null));
2104
+ } else {
2105
+ var seen_SINGLEQUOTE_ = cljs.core.conj.cljs$core$IFn$_invoke$arity$2(seen,id);
2106
+ var recursion_limits_SINGLEQUOTE_ = (cljs.core.truth_(lim)?cljs.core.update.cljs$core$IFn$_invoke$arity$3(recursion_limits,attr,cljs.core.dec):(cljs.core.truth_(attr.recursion_limit)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(recursion_limits,attr,(attr.recursion_limit - (1))):recursion_limits
2107
+ ));
2108
+ var G__14182 = context;
2109
+ var G__14183 = seen_SINGLEQUOTE_;
2110
+ var G__14184 = recursion_limits_SINGLEQUOTE_;
2111
+ var G__14185 = (cljs.core.truth_(attr.recursive_QMARK_)?pattern:attr.pattern);
2112
+ var G__14186 = id;
2113
+ return (datascript.pull_api.attrs_frame.cljs$core$IFn$_invoke$arity$5 ? datascript.pull_api.attrs_frame.cljs$core$IFn$_invoke$arity$5(G__14182,G__14183,G__14184,G__14185,G__14186) : datascript.pull_api.attrs_frame.call(null,G__14182,G__14183,G__14184,G__14185,G__14186));
2114
+
2115
+ }
2116
+ }
2117
+ }
2118
+ });
2119
+ datascript.pull_api.attrs_frame = (function datascript$pull_api$attrs_frame(context,seen,recursion_limits,pattern,id){
2120
+ var db = context.db;
2121
+ var datoms = (cljs.core.truth_((function (){var and__5000__auto__ = pattern.wildcard_QMARK_;
2122
+ if(cljs.core.truth_(and__5000__auto__)){
2123
+ return (db instanceof datascript.db.DB);
2124
+ } else {
2125
+ return and__5000__auto__;
2126
+ }
2127
+ })())?me.tonsky.persistent_sorted_set.slice.cljs$core$IFn$_invoke$arity$3(db.eavt,datascript.db.datom.cljs$core$IFn$_invoke$arity$4(id,null,null,(536870912)),datascript.db.datom.cljs$core$IFn$_invoke$arity$4(id,null,null,(2147483647))):(cljs.core.truth_(pattern.wildcard_QMARK_)?datascript.db._search(db,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [id], null)):(((pattern.first_attr == null))?null:(function (){var from = pattern.first_attr.name;
2128
+ var to = pattern.last_attr.name;
2129
+ if((db instanceof datascript.db.DB)){
2130
+ return me.tonsky.persistent_sorted_set.slice.cljs$core$IFn$_invoke$arity$3(db.eavt,datascript.db.datom.cljs$core$IFn$_invoke$arity$4(id,from,null,(536870912)),datascript.db.datom.cljs$core$IFn$_invoke$arity$4(id,to,null,(2147483647)));
2131
+ } else {
2132
+ return datascript.db._seek_datoms(db,new cljs.core.Keyword(null,"eavt","eavt",-666437073),id,null,null,null);
2133
+
2134
+ }
2135
+ })())));
2136
+ if(cljs.core.truth_(pattern.wildcard_QMARK_)){
2137
+ datascript.pull_api.visit(context,new cljs.core.Keyword("db.pull","wildcard","db.pull/wildcard",116316031),id,null,null);
2138
+ } else {
2139
+ }
2140
+
2141
+ return (new datascript.pull_api.AttrsFrame(seen,recursion_limits,cljs.core.transient$(cljs.core.PersistentArrayMap.EMPTY),pattern,datascript.pull_api.first_seq(pattern.attrs),datascript.pull_api.next_seq(pattern.attrs),datoms,id,null,null,null));
2142
+ });
2143
+ datascript.pull_api.pull_impl = (function datascript$pull_api$pull_impl(parsed_opts,id){
2144
+ var map__14191 = parsed_opts;
2145
+ var map__14191__$1 = cljs.core.__destructure_map(map__14191);
2146
+ var context = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__14191__$1,new cljs.core.Keyword(null,"context","context",-830191113));
2147
+ var pattern = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__14191__$1,new cljs.core.Keyword(null,"pattern","pattern",242135423));
2148
+ var temp__5808__auto__ = datascript.db.entid(context.db,id);
2149
+ if((temp__5808__auto__ == null)){
2150
+ return null;
2151
+ } else {
2152
+ var eid = temp__5808__auto__;
2153
+ var stack = (new cljs.core.List(null,datascript.pull_api.attrs_frame(context,cljs.core.PersistentHashSet.EMPTY,cljs.core.PersistentArrayMap.EMPTY,pattern,eid),null,(1),null));
2154
+ while(true){
2155
+ var last = datascript.pull_api.first_seq(stack);
2156
+ var stack_SINGLEQUOTE_ = datascript.pull_api.next_seq(stack);
2157
+ if((!((last instanceof datascript.pull_api.ResultFrame)))){
2158
+ var G__14344 = cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(datascript.pull_api.conj_seq,stack_SINGLEQUOTE_,datascript.pull_api._run(last,context));
2159
+ stack = G__14344;
2160
+ continue;
2161
+ } else {
2162
+ if((stack_SINGLEQUOTE_ == null)){
2163
+ return last.value;
2164
+ } else {
2165
+ var penultimate = datascript.pull_api.first_seq(stack_SINGLEQUOTE_);
2166
+ var stack_SINGLEQUOTE__SINGLEQUOTE_ = datascript.pull_api.next_seq(stack_SINGLEQUOTE_);
2167
+ var G__14345 = datascript.pull_api.conj_seq(stack_SINGLEQUOTE__SINGLEQUOTE_,datascript.pull_api._merge(penultimate,last));
2168
+ stack = G__14345;
2169
+ continue;
2170
+
2171
+ }
2172
+ }
2173
+ break;
2174
+ }
2175
+ }
2176
+ });
2177
+ datascript.pull_api.parse_opts = (function datascript$pull_api$parse_opts(var_args){
2178
+ var G__14197 = arguments.length;
2179
+ switch (G__14197) {
2180
+ case 2:
2181
+ return datascript.pull_api.parse_opts.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
2182
+
2183
+ break;
2184
+ case 3:
2185
+ return datascript.pull_api.parse_opts.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
2186
+
2187
+ break;
2188
+ default:
2189
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
2190
+
2191
+ }
2192
+ });
2193
+
2194
+ (datascript.pull_api.parse_opts.cljs$core$IFn$_invoke$arity$2 = (function (db,pattern){
2195
+ return datascript.pull_api.parse_opts.cljs$core$IFn$_invoke$arity$3(db,pattern,null);
2196
+ }));
2197
+
2198
+ (datascript.pull_api.parse_opts.cljs$core$IFn$_invoke$arity$3 = (function (db,pattern,p__14198){
2199
+ var map__14199 = p__14198;
2200
+ var map__14199__$1 = cljs.core.__destructure_map(map__14199);
2201
+ var visitor = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__14199__$1,new cljs.core.Keyword(null,"visitor","visitor",-1026865865));
2202
+ return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"pattern","pattern",242135423),datascript.lru._get(datascript.db.unfiltered_db(db).pull_patterns,pattern,(function (){
2203
+ return datascript.pull_parser.parse_pattern(db,pattern);
2204
+ })),new cljs.core.Keyword(null,"context","context",-830191113),(new datascript.pull_api.Context(db,visitor,null,null,null))], null);
2205
+ }));
2206
+
2207
+ (datascript.pull_api.parse_opts.cljs$lang$maxFixedArity = 3);
2208
+
2209
+ /**
2210
+ * Supported opts:
2211
+ *
2212
+ * :visitor a fn of 4 arguments, will be called for every entity/attribute pull touches
2213
+ *
2214
+ * (:db.pull/attr e a nil) - when pulling a normal attribute, no matter if it has value or not
2215
+ * (:db.pull/wildcard e nil nil) - when pulling every attribute on an entity
2216
+ * (:db.pull/reverse nil a v ) - when pulling reverse attribute
2217
+ */
2218
+ datascript.pull_api.pull = (function datascript$pull_api$pull(var_args){
2219
+ var G__14202 = arguments.length;
2220
+ switch (G__14202) {
2221
+ case 3:
2222
+ return datascript.pull_api.pull.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
2223
+
2224
+ break;
2225
+ case 4:
2226
+ return datascript.pull_api.pull.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));
2227
+
2228
+ break;
2229
+ default:
2230
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
2231
+
2232
+ }
2233
+ });
2234
+
2235
+ (datascript.pull_api.pull.cljs$core$IFn$_invoke$arity$3 = (function (db,pattern,id){
2236
+ return datascript.pull_api.pull.cljs$core$IFn$_invoke$arity$4(db,pattern,id,cljs.core.PersistentArrayMap.EMPTY);
2237
+ }));
2238
+
2239
+ (datascript.pull_api.pull.cljs$core$IFn$_invoke$arity$4 = (function (db,pattern,id,opts){
2240
+ if(datascript.db.db_QMARK_(db)){
2241
+ } else {
2242
+ throw (new Error("Assert failed: (db/db? db)"));
2243
+ }
2244
+
2245
+ var parsed_opts = datascript.pull_api.parse_opts.cljs$core$IFn$_invoke$arity$3(db,pattern,opts);
2246
+ return datascript.pull_api.pull_impl(parsed_opts,id);
2247
+ }));
2248
+
2249
+ (datascript.pull_api.pull.cljs$lang$maxFixedArity = 4);
2250
+
2251
+ datascript.pull_api.pull_many = (function datascript$pull_api$pull_many(var_args){
2252
+ var G__14212 = arguments.length;
2253
+ switch (G__14212) {
2254
+ case 3:
2255
+ return datascript.pull_api.pull_many.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
2256
+
2257
+ break;
2258
+ case 4:
2259
+ return datascript.pull_api.pull_many.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));
2260
+
2261
+ break;
2262
+ default:
2263
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
2264
+
2265
+ }
2266
+ });
2267
+
2268
+ (datascript.pull_api.pull_many.cljs$core$IFn$_invoke$arity$3 = (function (db,pattern,ids){
2269
+ return datascript.pull_api.pull_many.cljs$core$IFn$_invoke$arity$4(db,pattern,ids,cljs.core.PersistentArrayMap.EMPTY);
2270
+ }));
2271
+
2272
+ (datascript.pull_api.pull_many.cljs$core$IFn$_invoke$arity$4 = (function (db,pattern,ids,opts){
2273
+ if(datascript.db.db_QMARK_(db)){
2274
+ } else {
2275
+ throw (new Error("Assert failed: (db/db? db)"));
2276
+ }
2277
+
2278
+ var parsed_opts = datascript.pull_api.parse_opts.cljs$core$IFn$_invoke$arity$3(db,pattern,opts);
2279
+ return cljs.core.mapv.cljs$core$IFn$_invoke$arity$2((function (p1__14203_SHARP_){
2280
+ return datascript.pull_api.pull_impl(parsed_opts,p1__14203_SHARP_);
2281
+ }),ids);
2282
+ }));
2283
+
2284
+ (datascript.pull_api.pull_many.cljs$lang$maxFixedArity = 4);
2285
+
2286
+
2287
+ //# sourceMappingURL=datascript.pull_api.js.map