datahike 0.7.1630
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +226 -0
- package/cljs.analyzer.api.js +427 -0
- package/cljs.analyzer.api.js.map +1 -0
- package/cljs.analyzer.impl.js +86 -0
- package/cljs.analyzer.impl.js.map +1 -0
- package/cljs.analyzer.impl.namespaces.js +219 -0
- package/cljs.analyzer.impl.namespaces.js.map +1 -0
- package/cljs.analyzer.js +7186 -0
- package/cljs.analyzer.js.map +1 -0
- package/cljs.analyzer.passes.and_or.js +141 -0
- package/cljs.analyzer.passes.and_or.js.map +1 -0
- package/cljs.analyzer.passes.js +104 -0
- package/cljs.analyzer.passes.js.map +1 -0
- package/cljs.cache.js +1145 -0
- package/cljs.cache.js.map +1 -0
- package/cljs.cache.wrapped.js +352 -0
- package/cljs.cache.wrapped.js.map +1 -0
- package/cljs.core.async.impl.buffers.js +489 -0
- package/cljs.core.async.impl.buffers.js.map +1 -0
- package/cljs.core.async.impl.channels.js +711 -0
- package/cljs.core.async.impl.channels.js.map +1 -0
- package/cljs.core.async.impl.dispatch.js +81 -0
- package/cljs.core.async.impl.dispatch.js.map +1 -0
- package/cljs.core.async.impl.ioc_helpers.js +192 -0
- package/cljs.core.async.impl.ioc_helpers.js.map +1 -0
- package/cljs.core.async.impl.protocols.js +368 -0
- package/cljs.core.async.impl.protocols.js.map +1 -0
- package/cljs.core.async.impl.timers.js +510 -0
- package/cljs.core.async.impl.timers.js.map +1 -0
- package/cljs.core.async.js +8813 -0
- package/cljs.core.async.js.map +1 -0
- package/cljs.core.js +38764 -0
- package/cljs.core.js.map +1 -0
- package/cljs.env.js +60 -0
- package/cljs.env.js.map +1 -0
- package/cljs.nodejs.js +80 -0
- package/cljs.nodejs.js.map +1 -0
- package/cljs.reader.js +462 -0
- package/cljs.reader.js.map +1 -0
- package/cljs.spec.alpha.js +5312 -0
- package/cljs.spec.alpha.js.map +1 -0
- package/cljs.spec.gen.alpha.js +2020 -0
- package/cljs.spec.gen.alpha.js.map +1 -0
- package/cljs.tagged_literals.js +103 -0
- package/cljs.tagged_literals.js.map +1 -0
- package/cljs.tools.reader.edn.js +960 -0
- package/cljs.tools.reader.edn.js.map +1 -0
- package/cljs.tools.reader.impl.commons.js +217 -0
- package/cljs.tools.reader.impl.commons.js.map +1 -0
- package/cljs.tools.reader.impl.errors.js +441 -0
- package/cljs.tools.reader.impl.errors.js.map +1 -0
- package/cljs.tools.reader.impl.inspect.js +182 -0
- package/cljs.tools.reader.impl.inspect.js.map +1 -0
- package/cljs.tools.reader.impl.utils.js +429 -0
- package/cljs.tools.reader.impl.utils.js.map +1 -0
- package/cljs.tools.reader.js +1830 -0
- package/cljs.tools.reader.js.map +1 -0
- package/cljs.tools.reader.reader_types.js +838 -0
- package/cljs.tools.reader.reader_types.js.map +1 -0
- package/cljs_env.js +18192 -0
- package/cljs_node_io.core.js +1278 -0
- package/cljs_node_io.core.js.map +1 -0
- package/cljs_node_io.file.js +918 -0
- package/cljs_node_io.file.js.map +1 -0
- package/cljs_node_io.fs.js +3911 -0
- package/cljs_node_io.fs.js.map +1 -0
- package/clojure.data.js +319 -0
- package/clojure.data.js.map +1 -0
- package/clojure.edn.js +119 -0
- package/clojure.edn.js.map +1 -0
- package/clojure.set.js +406 -0
- package/clojure.set.js.map +1 -0
- package/clojure.string.js +502 -0
- package/clojure.string.js.map +1 -0
- package/clojure.walk.js +156 -0
- package/clojure.walk.js.map +1 -0
- package/datahike.api.impl.js +621 -0
- package/datahike.api.impl.js.map +1 -0
- package/datahike.api.specification.js +85 -0
- package/datahike.api.specification.js.map +1 -0
- package/datahike.array.js +275 -0
- package/datahike.array.js.map +1 -0
- package/datahike.config.js +437 -0
- package/datahike.config.js.map +1 -0
- package/datahike.connections.js +55 -0
- package/datahike.connections.js.map +1 -0
- package/datahike.connector.js +1248 -0
- package/datahike.connector.js.map +1 -0
- package/datahike.constants.js +66 -0
- package/datahike.constants.js.map +1 -0
- package/datahike.core.js +628 -0
- package/datahike.core.js.map +1 -0
- package/datahike.datom.js +963 -0
- package/datahike.datom.js.map +1 -0
- package/datahike.db.interface.js +819 -0
- package/datahike.db.interface.js.map +1 -0
- package/datahike.db.js +3095 -0
- package/datahike.db.js.map +1 -0
- package/datahike.db.search.js +1004 -0
- package/datahike.db.search.js.map +1 -0
- package/datahike.db.transaction.js +1904 -0
- package/datahike.db.transaction.js.map +1 -0
- package/datahike.db.utils.js +642 -0
- package/datahike.db.utils.js.map +1 -0
- package/datahike.gc.js +1618 -0
- package/datahike.gc.js.map +1 -0
- package/datahike.impl.entity.js +604 -0
- package/datahike.impl.entity.js.map +1 -0
- package/datahike.index.interface.js +484 -0
- package/datahike.index.interface.js.map +1 -0
- package/datahike.index.js +50 -0
- package/datahike.index.js.map +1 -0
- package/datahike.index.persistent_set.js +1250 -0
- package/datahike.index.persistent_set.js.map +1 -0
- package/datahike.js.api.js +2211 -0
- package/datahike.js.api.js.map +1 -0
- package/datahike.lru.js +404 -0
- package/datahike.lru.js.map +1 -0
- package/datahike.pull_api.js +533 -0
- package/datahike.pull_api.js.map +1 -0
- package/datahike.query.js +11891 -0
- package/datahike.query.js.map +1 -0
- package/datahike.query_stats.js +152 -0
- package/datahike.query_stats.js.map +1 -0
- package/datahike.readers.js +166 -0
- package/datahike.readers.js.map +1 -0
- package/datahike.schema.js +251 -0
- package/datahike.schema.js.map +1 -0
- package/datahike.schema_cache.js +66 -0
- package/datahike.schema_cache.js.map +1 -0
- package/datahike.spec.js +70 -0
- package/datahike.spec.js.map +1 -0
- package/datahike.store.js +514 -0
- package/datahike.store.js.map +1 -0
- package/datahike.tools.js +436 -0
- package/datahike.tools.js.map +1 -0
- package/datahike.writer.js +3463 -0
- package/datahike.writer.js.map +1 -0
- package/datahike.writing.js +3168 -0
- package/datahike.writing.js.map +1 -0
- package/datalog.parser.impl.js +1421 -0
- package/datalog.parser.impl.js.map +1 -0
- package/datalog.parser.impl.proto.js +213 -0
- package/datalog.parser.impl.proto.js.map +1 -0
- package/datalog.parser.impl.util.js +117 -0
- package/datalog.parser.impl.util.js.map +1 -0
- package/datalog.parser.js +47 -0
- package/datalog.parser.js.map +1 -0
- package/datalog.parser.pull.js +2603 -0
- package/datalog.parser.pull.js.map +1 -0
- package/datalog.parser.type.js +7502 -0
- package/datalog.parser.type.js.map +1 -0
- package/datalog.parser.util.js +60 -0
- package/datalog.parser.util.js.map +1 -0
- package/environ.core.js +263 -0
- package/environ.core.js.map +1 -0
- package/fress.api.js +607 -0
- package/fress.api.js.map +1 -0
- package/fress.impl.adler32.js +435 -0
- package/fress.impl.adler32.js.map +1 -0
- package/fress.impl.bigint.js +185 -0
- package/fress.impl.bigint.js.map +1 -0
- package/fress.impl.buffer.js +1087 -0
- package/fress.impl.buffer.js.map +1 -0
- package/fress.impl.codes.js +105 -0
- package/fress.impl.codes.js.map +1 -0
- package/fress.impl.hopmap.js +603 -0
- package/fress.impl.hopmap.js.map +1 -0
- package/fress.impl.ranges.js +49 -0
- package/fress.impl.ranges.js.map +1 -0
- package/fress.impl.raw_input.js +837 -0
- package/fress.impl.raw_input.js.map +1 -0
- package/fress.impl.raw_output.js +653 -0
- package/fress.impl.raw_output.js.map +1 -0
- package/fress.impl.table.js +133 -0
- package/fress.impl.table.js.map +1 -0
- package/fress.reader.js +2312 -0
- package/fress.reader.js.map +1 -0
- package/fress.util.js +458 -0
- package/fress.util.js.map +1 -0
- package/fress.writer.js +2141 -0
- package/fress.writer.js.map +1 -0
- package/geheimnis.aes.js +132 -0
- package/geheimnis.aes.js.map +1 -0
- package/hasch.base64.js +42 -0
- package/hasch.base64.js.map +1 -0
- package/hasch.benc.js +201 -0
- package/hasch.benc.js.map +1 -0
- package/hasch.core.js +188 -0
- package/hasch.core.js.map +1 -0
- package/hasch.platform.js +221 -0
- package/hasch.platform.js.map +1 -0
- package/incognito.base.js +276 -0
- package/incognito.base.js.map +1 -0
- package/incognito.edn.js +54 -0
- package/incognito.edn.js.map +1 -0
- package/incognito.fressian.js +330 -0
- package/incognito.fressian.js.map +1 -0
- package/index.d.ts +660 -0
- package/is.simm.partial_cps.async.js +142 -0
- package/is.simm.partial_cps.async.js.map +1 -0
- package/is.simm.partial_cps.runtime.js +65 -0
- package/is.simm.partial_cps.runtime.js.map +1 -0
- package/is.simm.partial_cps.sequence.js +1255 -0
- package/is.simm.partial_cps.sequence.js.map +1 -0
- package/konserve.cache.js +2519 -0
- package/konserve.cache.js.map +1 -0
- package/konserve.compressor.js +502 -0
- package/konserve.compressor.js.map +1 -0
- package/konserve.core.js +8052 -0
- package/konserve.core.js.map +1 -0
- package/konserve.encryptor.js +553 -0
- package/konserve.encryptor.js.map +1 -0
- package/konserve.gc.js +541 -0
- package/konserve.gc.js.map +1 -0
- package/konserve.impl.defaults.js +8290 -0
- package/konserve.impl.defaults.js.map +1 -0
- package/konserve.impl.storage_layout.js +849 -0
- package/konserve.impl.storage_layout.js.map +1 -0
- package/konserve.memory.js +2102 -0
- package/konserve.memory.js.map +1 -0
- package/konserve.node_filestore.js +2951 -0
- package/konserve.node_filestore.js.map +1 -0
- package/konserve.protocols.js +590 -0
- package/konserve.protocols.js.map +1 -0
- package/konserve.serializers.js +562 -0
- package/konserve.serializers.js.map +1 -0
- package/konserve.store.js +2245 -0
- package/konserve.store.js.map +1 -0
- package/konserve.tiered.js +9574 -0
- package/konserve.tiered.js.map +1 -0
- package/konserve.utils.js +180 -0
- package/konserve.utils.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.arrays.js +66 -0
- package/me.tonsky.persistent_sorted_set.arrays.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.branch.js +2779 -0
- package/me.tonsky.persistent_sorted_set.branch.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.btset.js +14196 -0
- package/me.tonsky.persistent_sorted_set.btset.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.impl.node.js +324 -0
- package/me.tonsky.persistent_sorted_set.impl.node.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.impl.storage.js +123 -0
- package/me.tonsky.persistent_sorted_set.impl.storage.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.js +890 -0
- package/me.tonsky.persistent_sorted_set.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.leaf.js +561 -0
- package/me.tonsky.persistent_sorted_set.leaf.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.util.js +402 -0
- package/me.tonsky.persistent_sorted_set.util.js.map +1 -0
- package/medley.core.js +1857 -0
- package/medley.core.js.map +1 -0
- package/package.json +38 -0
- package/spec_tools.core.js +1925 -0
- package/spec_tools.core.js.map +1 -0
- package/spec_tools.data_spec.js +1291 -0
- package/spec_tools.data_spec.js.map +1 -0
- package/spec_tools.form.js +185 -0
- package/spec_tools.form.js.map +1 -0
- package/spec_tools.impl.js +362 -0
- package/spec_tools.impl.js.map +1 -0
- package/spec_tools.parse.js +427 -0
- package/spec_tools.parse.js.map +1 -0
- package/spec_tools.transform.js +288 -0
- package/spec_tools.transform.js.map +1 -0
- package/superv.async.js +8617 -0
- package/superv.async.js.map +1 -0
- package/tailrecursion.priority_map.js +994 -0
- package/tailrecursion.priority_map.js.map +1 -0
- package/taoensso.encore.js +12385 -0
- package/taoensso.encore.js.map +1 -0
- package/taoensso.timbre.appenders.core.js +239 -0
- package/taoensso.timbre.appenders.core.js.map +1 -0
- package/taoensso.timbre.js +1264 -0
- package/taoensso.timbre.js.map +1 -0
- package/taoensso.truss.impl.js +442 -0
- package/taoensso.truss.impl.js.map +1 -0
- package/taoensso.truss.js +743 -0
- package/taoensso.truss.js.map +1 -0
- package/test-config-keys.js +33 -0
- package/test-final.js +36 -0
- package/test-key-duplication.js +67 -0
- package/test.js +557 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["datahike/index/persistent_set.cljc"],"mappings":"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","names":["datahike.index.persistent-set/index-type->kwseq","datahike.index.persistent-set/slice-from-to-tree","from-sym","to-sym","index-spec","acc","leaf-fn","cljs.core/empty?","vec__105456","seq__105457","cljs.core/seq","first__105458","cljs.core/first","cljs.core/next","cljs.core.sequence","cljs.core.concat","cljs.core/List","findex","G__105459","G__105460","G__105461","G__105462","G__105463","cljs.core.conj","datahike.index.persistent-set/cmp-for-kwseq-sub","datom0","datom1","kwseq","result","cljs.core.gensym","vec__105464","seq__105465","first__105466","cljs.core/vec","k","datahike.datom/cmp-val-expr","datahike.index.persistent-set/cmp-for-kwseq","datahike.datom/type-hint-datom","datahike.index.persistent-set/slice-comparator-constructor","G__105470","G__105486","G__105487","G__105488","datahike.datom/cmp-nil","G__105489","G__105471","G__105491","G__105492","G__105493","datahike.datom/long-cmp","G__105472","G__105495","G__105496","G__105473","G__105498","G__105499","G__105500","G__105501","G__105502","G__105474","G__105504","G__105505","G__105506","G__105507","G__105475","G__105509","G__105510","G__105511","G__105512","G__105513","G__105514","G__105515","datahike.datom/boolean-cmp","G__105476","G__105517","G__105518","G__105519","G__105520","G__105521","G__105477","G__105523","G__105524","G__105525","G__105526","G__105527","G__105528","G__105478","G__105530","G__105531","G__105532","G__105533","G__105534","G__105535","G__105536","G__105479","G__105538","G__105539","G__105540","G__105541","G__105542","G__105543","G__105544","G__105480","G__105546","G__105547","G__105548","G__105549","G__105550","G__105551","G__105481","G__105553","G__105554","G__105555","G__105556","G__105557","G__105558","G__105482","G__105560","G__105561","G__105562","G__105563","G__105564","G__105483","G__105566","G__105567","G__105568","G__105484","G__105570","G__105571","G__105572","G__105573","G__105467","G__105468","G__105469","G__105589","cljs.core/Keyword","js/Error","datahike.index.persistent-set/remove-datom","pset","datom","index-type","me.tonsky.persistent_sorted_set.disj","datahike.datom.index_type__GT_cmp_quick","datahike.index.persistent-set/insert","me.tonsky.persistent_sorted_set.lookup","datahike.datom/index-type->cmp-prefix","me.tonsky.persistent_sorted_set.conj","datahike.index.persistent-set/temporal-insert","datahike.index.persistent-set/upsert","old-datom","me.tonsky.persistent_sorted_set.replace","p__105590","map__105591","cljs.core/--destructure-map","cljs.core.get","datahike.index.persistent-set/temporal-upsert","old-val","map__105592","e","a","v","tx","added","cljs.core._EQ_","datahike.datom.datom","datahike.index.persistent-set/mark","cljs.core.ex_info","cljs.core/deref","addresses","cljs.core.atom","me.tonsky.persistent_sorted_set.walk_addresses","address","cljs.core.swap_BANG_","cljs.core/conj","cljs.core/PROTOCOL_SENTINEL","me.tonsky.persistent-sorted-set.btset/BTSet","from","to","me.tonsky.persistent_sorted_set.slice","cljs.core/identity","cljs.core/count","_op-count","_","me.tonsky.persistent_sorted_set.store","cljs.core/transient","cljs.core/persistent!","datahike.index.persistent-set/gen-address","node","crypto-hash?","me.tonsky.persistent-sorted-set.branch/Branch","hasch.core/uuid","cljs.core.mapv","cljs.core.comp","hasch.core.squuid","this__5300__auto__","k__5301__auto__","this__5302__auto__","k105615","else__5303__auto__","G__105628","store","config","cache","stats","pending-writes","cost-center-fn","__extmap","this__5320__auto__","f__5321__auto__","init__5322__auto__","cljs.core.reduce","ret__5323__auto__","p__105633","vec__105634","k__5324__auto__","cljs.core.nth","v__5325__auto__","this__5315__auto__","writer__5316__auto__","opts__5317__auto__","pr-pair__5318__auto__","keyval__5319__auto__","cljs.core/pr-sequential-writer","cljs.core/PersistentVector","G__105614","cljs.core/RecordIter","cljs.core/-iterator","cljs.core/nil-iter","this__5298__auto__","__meta","this__5295__auto__","__hash","this__5304__auto__","this__5296__auto__","h__5111__auto__","coll__5297__auto__","cljs.core/hash-unordered-coll","this105616","other105617","this__5310__auto__","k__5311__auto__","cljs.core/contains?","cljs.core.dissoc","cljs.core/-with-meta","cljs.core.into","cljs.core/not-empty","this__5307__auto__","G__105669","this__5308__auto__","k__5309__auto__","pred__105670","cljs.core/keyword-identical?","expr__105671","cljs.core.assoc","this__5313__auto__","cljs.core/MapEntry","this__5299__auto__","this__5305__auto__","entry__5306__auto__","cljs.core/vector?","cljs.core/-nth","cljs.core/-conj","datahike.index.persistent-set/CachedStorage","this__5346__auto__","writer__5347__auto__","cljs.core/-write","G__105618","extmap__5342__auto__","G__105682","cljs.core/record?","datahike.index.persistent-set/->CachedStorage","datahike.index.persistent-set/map->CachedStorage","opts","fexpr__105656","cljs.core/update","cljs.core/inc","taoensso.timbre._log_BANG_","taoensso.timbre/*config*","cljs.core/Delay","cljs.cache.wrapped/miss","fexpr__105657","cljs.cache.wrapped/hit","fexpr__105662","temp__5802__auto__","cached","cljs.cache.wrapped.lookup","konserve.core.get","G__105667","fexpr__105666","datahike.index.persistent-set/init-stats","datahike.index.persistent-set/create-storage","cljs.cache.lru_cache_factory","datahike.index.persistent-set/DEFAULT_BRANCHING_FACTOR","datahike.index.interface/empty-index","_index-name","me.tonsky.persistent-sorted-set/sorted-set*","cljs.core/with-meta","datahike.index.interface/init-index","p__105694","map__105695","datoms","indexed","arr","p1__105693#","cljs.core.filter","cljs.core/to-array","G__105699","me.tonsky.persistent-sorted-set.arrays/array?","me.tonsky.persistent-sorted-set.arrays/into-array","me.tonsky.persistent-sorted-set.arrays/asort","me.tonsky.persistent_sorted_set.from_sorted_array","datahike.index.persistent-set/map->settings","m","datahike.index.interface/add-konserve-handlers","storage-atom","storage","or__5002__auto__","cljs.core/reset!","settings","konserve.core/assoc-serializers","konserve.serializers.fressian_serializer","reader","_tag","_component-count","map__105703","meta","count","fress.api/read-object","cmp","map__105706","keys","_level","me.tonsky.persistent-sorted-set.leaf/Leaf","cljs.core/clj->js","map__105707","level","datahike.datom/datom-from-reader","writer","G__105709","fexpr__105708","fress.api/write-tag","fress.api.write_object","cljs.core/meta","leaf","datahike.datom/Datom","datahike.index.interface/konserve-backend","datahike.index.interface/default-index-config"],"sourcesContent":["(ns ^:no-doc datahike.index.persistent-set\n (:require [me.tonsky.persistent-sorted-set :as psset]\n #?(:cljs [me.tonsky.persistent-sorted-set.btset :refer [BTSet]])\n #?(:cljs [me.tonsky.persistent-sorted-set.branch :refer [Branch]])\n #?(:cljs [me.tonsky.persistent-sorted-set.leaf :refer [Leaf]])\n #?(:cljs [me.tonsky.persistent-sorted-set.impl.storage :refer [IStorage]])\n [me.tonsky.persistent-sorted-set.arrays :as arrays]\n #?@(:clj [[clojure.core.cache :as cache]\n [clojure.core.cache.wrapped :as wrapped]]\n :cljs [[cljs.cache :as cache]\n [cljs.cache.wrapped :as wrapped]])\n [datahike.datom :as dd :refer [index-type->cmp-quick]]\n [datahike.constants :refer [tx0 txmax]]\n [datahike.index.interface :as di :refer [IIndex]]\n [datahike.tools :as dt]\n [konserve.core :as k]\n [konserve.serializers :refer [fressian-serializer]]\n #?(:cljs [fress.api :as fress])\n [hasch.core :refer [uuid squuid]]\n [taoensso.timbre :refer [trace]])\n #?(:cljs (:require-macros [datahike.index.persistent-set :refer [generate-slice-comparator-constructor]]))\n #?(:clj (:import [datahike.datom Datom]\n [org.fressian.handlers WriteHandler ReadHandler]\n [me.tonsky.persistent_sorted_set PersistentSortedSet IStorage Leaf Branch ANode Settings]\n [java.util List])))\n\n(def index-type->kwseq\n {:eavt [:e :a :v :tx :added]\n :aevt [:a :e :v :tx :added]\n :avet [:a :v :e :tx :added]})\n\n(defn slice-from-to-tree\n \"This function generates code for deciding which datom elements that need to be compared based on which elements in the slice bounds are nil, as well as the index. Once all datom elements have been considered, `leaf-fn` is called with a vector containing the keywords of the actual elements to compare.\"\n [from-sym to-sym index-spec acc leaf-fn]\n (if (empty? index-spec)\n\n ;; When there is nothing left to compare,\n ;; return the correct comparator.\n (leaf-fn acc)\n\n (let [[findex & index-spec] index-spec]\n `(if (and (nil? (~findex ~from-sym))\n (nil? (~findex ~to-sym)))\n\n ;; Whenever both slice bounds are nil, there is nothing more to compare\n ;; and we know what comparator to return.\n ~(leaf-fn acc)\n\n ;; Otherwise, if at least one slie bound is non-nil, we need a comparator for\n ;; the remaining datom elements.\n ~(slice-from-to-tree from-sym to-sym index-spec (conj acc findex) leaf-fn)))))\n\n(defn cmp-for-kwseq-sub\n \"This function generates the actual body of the comparator\"\n [datom0 datom1 kwseq]\n (let [result (gensym)]\n (if (empty? kwseq)\n 0\n (let [[k & kwseq] kwseq]\n `(let [;; Compare the datoms at the element with key `k`\n ~result ~(dd/cmp-val-expr k datom0 datom1)]\n (cond\n ;; If it is nil, typically return 0\n (nil? ~result) 0\n\n ;; If it is zero, we need to proceed with the next datom element to compare.\n (zero? ~result) ~(cmp-for-kwseq-sub datom0 datom1 kwseq)\n\n ;; If it is non-zero, it means that this is the result of the comparison.\n :else ~result))))))\n\n(defn cmp-for-kwseq\n \"Given a sequence of keywords for datom elements to compare, generate the code for a function that performs the comparison.\"\n [kwseq]\n (let [datom0 (dd/type-hint-datom (gensym))\n datom1 (dd/type-hint-datom (gensym))]\n `(fn [~datom0 ~datom1] ~(cmp-for-kwseq-sub datom0 datom1 kwseq))))\n\n(defmacro generate-slice-comparator-constructor []\n (let [index-sym (gensym)\n from-sym (gensym)\n to-sym (gensym)\n\n ;; List keyword sequences referring to datom elements for\n ;; all combinations of indexes and leftmost slices of the\n ;; corresponding datom elements.\n all-kwseqs (set (for [[_ kwseq] index-type->kwseq\n limit (range 6)]\n (vec (take limit kwseq))))\n kwseq-sym-map (zipmap all-kwseqs (repeatedly gensym))]\n `(let [;; Pre-build comparators for every sequence\n ;; of keywords referring to datom elements.\n ;; A comparator is a function taking two datoms\n ;; as arguments.\n ~@(mapcat (fn [[kwseq sym]]\n [sym (cmp-for-kwseq kwseq)])\n kwseq-sym-map)]\n\n;; This is the function generated by this macro\n ;; and it is called by the `-slice` method.\n (fn [~index-sym ~from-sym ~to-sym]\n\n ;; First branch based on which index to use ...\n (case ~index-sym\n ~@(mapcat\n (fn [[index-key index-spec]]\n [index-key\n\n ;; ... then branch based on what elements\n ;; are non-nil in the slice bound datoms ...\n (slice-from-to-tree\n from-sym to-sym\n index-spec\n []\n\n (fn [acc]\n {:post [(symbol? %)]}\n\n ;; ... and eventually return a precomputed comparator\n ;; that will be used by `psset/slice`. The generated\n ;; code is the symbol that is bound to a comparator.\n (get kwseq-sym-map acc)))])\n index-type->kwseq))))))\n\n(def slice-comparator-constructor (generate-slice-comparator-constructor))\n\n(defn remove-datom [pset ^Datom datom index-type]\n (psset/disj pset datom (index-type->cmp-quick index-type false)))\n\n(defn insert [pset ^Datom datom index-type]\n ;; Use lookup with prefix comparator - O(log n) with zero allocations\n ;; Prefix comparator checks only (e,a,v) to find if ANY datom exists with same triple\n (if #?(:clj (.lookup ^PersistentSortedSet pset datom (dd/index-type->cmp-prefix index-type))\n :cljs (psset/lookup pset datom (dd/index-type->cmp-prefix index-type)))\n pset\n (psset/conj pset datom (index-type->cmp-quick index-type))))\n\n(defn temporal-insert [pset ^Datom datom index-type]\n (psset/conj pset datom (index-type->cmp-quick index-type false)))\n\n(defn upsert [pset ^Datom datom index-type old-datom]\n (if old-datom\n ;; Use single-traversal replace instead of remove + insert (2x faster)\n #?(:clj (.replace ^PersistentSortedSet pset old-datom datom (index-type->cmp-quick index-type))\n :cljs (psset/replace pset old-datom datom (index-type->cmp-quick index-type)))\n (psset/conj pset datom (index-type->cmp-quick index-type))))\n\n(defn temporal-upsert [pset ^Datom datom index-type {old-val :v}]\n (let [{:keys [e a v tx added]} datom]\n (if added\n (if old-val\n (if (= v old-val)\n pset\n (-> pset\n (psset/conj (dd/datom e a old-val tx false)\n (index-type->cmp-quick index-type false))\n (psset/conj datom\n (index-type->cmp-quick index-type false))))\n (psset/conj pset datom (index-type->cmp-quick index-type false)))\n (if old-val\n (psset/conj pset\n (dd/datom e a old-val tx false)\n (index-type->cmp-quick index-type false))\n pset))))\n\n(defn mark [^PersistentSortedSet pset]\n (when-not (.-_address pset)\n (throw (ex-info \"Index needs to be properly flushed before marking.\"\n {:type :flush-before-marking})))\n (let [addresses (atom #{})]\n (psset/walk-addresses pset (fn [address] (swap! addresses conj address)))\n @addresses))\n\n(extend-type #?(:clj PersistentSortedSet :cljs BTSet)\n IIndex\n (-slice [^PersistentSortedSet pset from to index-type]\n (psset/slice pset from to (slice-comparator-constructor index-type from to)))\n (-all [pset]\n (identity pset))\n (-seq [^PersistentSortedSet pset]\n (seq pset))\n (-count [^PersistentSortedSet pset]\n (count pset))\n (-insert [^PersistentSortedSet pset datom index-type _op-count]\n (insert pset datom index-type))\n (-temporal-insert [^PersistentSortedSet pset datom index-type _op-count]\n (psset/conj pset datom (index-type->cmp-quick index-type)))\n (-upsert [^PersistentSortedSet pset datom index-type _op-count old-datom]\n (upsert pset datom index-type old-datom))\n (-temporal-upsert [^PersistentSortedSet pset datom index-type _op-count old-val]\n (temporal-upsert pset datom index-type old-val))\n (-remove [^PersistentSortedSet pset datom index-type _op-count]\n (remove-datom pset datom index-type))\n (-flush [^PersistentSortedSet pset _]\n (psset/store pset)\n pset)\n (-transient [^PersistentSortedSet pset]\n (transient pset))\n (-persistent! [^PersistentSortedSet pset]\n (persistent! pset))\n (-mark [^PersistentSortedSet pset]\n (mark pset)))\n\n(defn- gen-address [^ANode node crypto-hash?]\n (if crypto-hash?\n (if (instance? Branch node)\n (uuid (vec (.addresses ^Branch node)))\n (uuid (mapv (comp vec seq) (.keys node))))\n (squuid))) ;; Sequential UUID for better index locality\n\n(defrecord CachedStorage [store config cache stats pending-writes cost-center-fn]\n IStorage\n (store [_ node #?(:cljs opts)]\n (@cost-center-fn :store)\n (swap! stats update :writes inc)\n (let [address (gen-address node (:crypto-hash? config))\n _ (trace \"writing storage: \" address \" crypto: \" (:crypto-hash? config))]\n (swap! pending-writes conj [address node])\n (wrapped/miss cache address node)\n address))\n (accessed [_ address]\n (@cost-center-fn :accessed)\n (trace \"accessing storage: \" address)\n (swap! stats update :accessed inc)\n (wrapped/hit cache address)\n nil)\n (restore [_ address #?(:cljs opts)]\n (@cost-center-fn :restore)\n (trace \"reading: \" address)\n (if-let [cached (wrapped/lookup cache address)]\n cached\n (let [node (k/get store address nil {:sync? true})]\n (when (nil? node)\n (dt/raise \"Node not found in storage.\" {:type :node-not-found\n :address address\n :store store}))\n (swap! stats update :reads inc)\n (wrapped/miss cache address node)\n node))))\n\n(def init-stats {:writes 0\n :reads 0\n :accessed 0})\n\n(defn create-storage [store config]\n (CachedStorage. store config\n (atom (cache/lru-cache-factory {} :threshold (:store-cache-size config)))\n (atom init-stats)\n (atom [])\n (atom (fn [_] nil))))\n\n(def ^:const DEFAULT_BRANCHING_FACTOR 512)\n\n(defmethod di/empty-index :datahike.index/persistent-set [_index-name store index-type _]\n (let [^PersistentSortedSet pset (psset/sorted-set* {:cmp (index-type->cmp-quick index-type false)\n :storage (:storage store)\n :branching-factor DEFAULT_BRANCHING_FACTOR})]\n (with-meta pset\n {:index-type index-type})))\n\n(defmethod di/init-index :datahike.index/persistent-set [_index-name store datoms index-type _ {:keys [indexed]}]\n (let [arr (if (= index-type :avet)\n (->> datoms\n (filter #(contains? indexed (.-a ^Datom %)))\n to-array)\n (cond-> datoms\n (not (arrays/array? datoms))\n (arrays/into-array)))\n _ (arrays/asort arr (index-type->cmp-quick index-type false))\n ^PersistentSortedSet pset (psset/from-sorted-array (index-type->cmp-quick index-type false)\n arr\n (arrays/alength arr)\n {:branching-factor DEFAULT_BRANCHING_FACTOR})]\n (set! (.-_storage pset) (:storage store))\n (with-meta pset\n {:index-type index-type})))\n\n;; temporary import from psset until public\n(defn- map->settings ^Settings [m]\n #?(:cljs m\n :clj (Settings.\n (int (or (:branching-factor m) 0))\n nil ;; weak ref default\n )))\n\n(defmethod di/add-konserve-handlers :datahike.index/persistent-set [config store]\n ;; Check if store has pre-configured handlers (e.g., LMDB with buffer encoder).\n ;; If so, the store will have :storage-atom that handlers close over.\n (if-let [storage-atom (:storage-atom store)]\n ;; Non-fressian store - handlers already configured, just create storage\n (let [storage (or (:storage store)\n (create-storage store config))]\n (reset! storage-atom storage)\n (assoc store :storage storage))\n\n ;; Standard fressian store - set up serializers\n ;; deal with circular reference between storage and store\n (let [settings (map->settings {:branching-factor DEFAULT_BRANCHING_FACTOR})\n storage (atom nil)\n store\n (k/assoc-serializers\n store\n {:FressianSerializer (fressian-serializer\n\n ;; read handlers\n {\"datahike.index.PersistentSortedSet\"\n #?(:clj\n (reify ReadHandler\n (read [_ reader _tag _component-count]\n (let [{:keys [meta address count]} (.readObject reader)\n cmp (index-type->cmp-quick (:index-type meta) false)]\n ;; The following fields are reset as they cannot be accessed from outside:\n ;; - 'edit' is set to false, i.e. the set is assumed to be persistent, not transient\n ;; - 'version' is set back to 0\n (PersistentSortedSet. meta cmp address @storage nil count settings 0))))\n :cljs\n (fn [reader _tag _component-count]\n (let [{:keys [meta address count]} (fress/read-object reader)\n cmp (index-type->cmp-quick (:index-type meta) false)]\n ;; CLJS BTSet deftype: [root cnt comparator meta _hash storage address settings]\n (BTSet. nil count cmp meta nil @storage address settings))))\n \"datahike.index.PersistentSortedSet.Leaf\"\n #?(:clj\n (reify ReadHandler\n (read [_ reader _tag _component-count]\n (let [{:keys [keys _level]} (.readObject reader)]\n (Leaf. ^List keys settings))))\n :cljs\n (fn [reader _tag _component-count]\n (let [{:keys [keys _level]} (fress/read-object reader)]\n ;; CLJS Leaf deftype: [keys settings]\n (Leaf. (clj->js keys) settings))))\n \"datahike.index.PersistentSortedSet.Branch\"\n #?(:clj\n (reify ReadHandler\n (read [_ reader _tag _component-count]\n (let [{:keys [keys level addresses]} (.readObject reader)]\n (Branch. (int level) ^List keys ^List (seq addresses) settings))))\n :cljs\n (fn [reader _tag _component-count]\n (let [{:keys [keys level addresses]} (fress/read-object reader)]\n ;; CLJS Branch deftype: [level keys children addresses settings]\n (Branch. (int level) (clj->js keys) nil (clj->js addresses) settings))))\n \"datahike.datom.Datom\"\n #?(:clj\n (reify ReadHandler\n (read [_ reader _tag _component-count]\n (dd/datom-from-reader (.readObject reader))))\n :cljs\n (fn [reader _tag _component-count]\n (dd/datom-from-reader (fress/read-object reader))))}\n\n ;; write handlers\n ;; CLJ format: nested {Type {\"tag\" handler}} for clojure.data.fressian\n ;; CLJS format: flat {Type handler-fn} for fress library\n #?(:clj\n {me.tonsky.persistent_sorted_set.PersistentSortedSet\n {\"datahike.index.PersistentSortedSet\"\n (reify WriteHandler\n (write [_ writer pset]\n (when (nil? (.-_address ^PersistentSortedSet pset))\n (dt/raise \"Must be flushed.\" {:type :must-be-flushed\n :pset pset}))\n (.writeTag writer \"datahike.index.PersistentSortedSet\" 1)\n (.writeObject writer {:meta (meta pset)\n :address (.-_address ^PersistentSortedSet pset)\n :count (count pset)})))}\n\n me.tonsky.persistent_sorted_set.Leaf\n {\"datahike.index.PersistentSortedSet.Leaf\"\n (reify WriteHandler\n (write [_ writer leaf]\n (.writeTag writer \"datahike.index.PersistentSortedSet.Leaf\" 1)\n (.writeObject writer {:level (.level ^Leaf leaf)\n :keys (.keys ^Leaf leaf)})))}\n\n me.tonsky.persistent_sorted_set.Branch\n {\"datahike.index.PersistentSortedSet.Branch\"\n (reify WriteHandler\n (write [_ writer node]\n (.writeTag writer \"datahike.index.PersistentSortedSet.Branch\" 1)\n (.writeObject writer {:level (.level ^Branch node)\n :keys (.keys ^Branch node)\n :addresses (.addresses ^Branch node)})))}\n\n datahike.datom.Datom\n {\"datahike.datom.Datom\"\n (reify WriteHandler\n (write [_ writer datom]\n (.writeTag writer \"datahike.datom.Datom\" 1)\n (.writeObject writer (vec (seq ^Datom datom)))))}}\n\n :cljs\n {BTSet\n (fn [writer pset]\n (when (nil? (.-address ^BTSet pset))\n (dt/raise \"Must be flushed.\" {:type :must-be-flushed\n :pset pset}))\n (fress/write-tag writer \"datahike.index.PersistentSortedSet\" 1)\n (fress/write-object writer {:meta (meta pset)\n :address (.-address ^BTSet pset)\n :count (count pset)}))\n\n Leaf\n (fn [writer leaf]\n (fress/write-tag writer \"datahike.index.PersistentSortedSet.Leaf\" 1)\n (fress/write-object writer {:level 0 ;; not supported in cljs\n :keys (vec (.-keys ^Leaf leaf))}))\n\n Branch\n (fn [writer node]\n (fress/write-tag writer \"datahike.index.PersistentSortedSet.Branch\" 1)\n (fress/write-object writer {:level (.-level ^Branch node)\n :keys (vec (.-keys ^Branch node))\n :addresses (vec (.-addresses ^Branch node))}))\n\n datahike.datom.Datom\n (fn [writer datom]\n (fress/write-tag writer \"datahike.datom.Datom\" 1)\n (fress/write-object writer (vec (seq ^Datom datom))))}))})]\n (reset! storage (or (:storage store)\n (create-storage store config)))\n (assoc store :storage @storage))))\n\n(defmethod di/konserve-backend :datahike.index/persistent-set [_index-name store]\n store)\n\n(defmethod di/default-index-config :datahike.index/persistent-set [_index-name]\n {})\n"]}
|