(fetch-datoms db index-name query)
query is a sequence like [[entity-id-to-query full-spec]] where full-spec is a tuple [attr-key attr-spec] where attr-spec is a map containing at least the normalized attribute ident under the keyword :attr
query is a sequence like [[entity-id-to-query full-spec]] where full-spec is a tuple [attr-key attr-spec] where attr-spec is a map containing at least the normalized attribute ident under the keyword :attr
(multi-select-datoms-ordered* db [index-name & comp-colls])
A variant of multi-select-datoms-ordered that will only execute the search on the criteria that have attributes which we can resolve.
A variant of multi-select-datoms-ordered that will only execute the search on the criteria that have attributes which we can resolve.
(ascend state db)
Ascend during the collapse of a pull frame tree, merging a child onto a parent.
Ascend during the collapse of a pull frame tree, merging a child onto a parent.
(collapse-complete? state)
(descend state)
Descend during the collapse of a pull frame tree, traversing from a parent to a child
Descend during the collapse of a pull frame tree, traversing from a parent to a child
(realize-spec! this db eid spec datoms)
The primary workhorse of the expansion process. Given the eid, spec, and datoms realized therefor, 'evaluate' the spec and merge the results into the state of the frame.
The primary workhorse of the expansion process. Given the eid, spec, and datoms realized therefor, 'evaluate' the spec and merge the results into the state of the frame.
(consume-child! this db child-frame)
Merge the data from the child frame into this frame and remove the child from subframes.
Merge the data from the child frame into this frame and remove the child from subframes.
(merge-info frame)
Retrieve the information for merging this frame onto its parent
Retrieve the information for merging this frame onto its parent
(data->final-map frame)
Take the data stored in the frame and finalize it for collapse
Take the data stored in the frame and finalize it for collapse
(add-recursion! this
multi?
rec-depths
join-spec
parent-eid
rec-comp?
child-eids)
Add a recursive frame per child eid.
Add a recursive frame per child eid.
(assoc-subframe! frame k subframe)
Adds a subframe to this pull frame under the key 'k'
Adds a subframe to this pull frame under the key 'k'
(frame->flattened-specs frame)
(set-subframe-map! frame subframes)
(update-data! frame eid attr-key data)
Adds 'data' to the frames internal data under eid and attr-key
Adds 'data' to the frames internal data under eid and attr-key
(subframe-map frame)
(set-data! frame data)
Sets the pull-frames data as a whole.
Sets the pull-frames data as a whole.
(seqify-subframes! frame)
Replaces the subframe map with a seq of itself. Pretty gross.
Replaces the subframe map with a seq of itself. Pretty gross.
(subframes frame)
(collapse! frame db)
Collapses a frame to its final pull-result state.
Collapses a frame to its final pull-result state.
(specs frame)
Return the sequence of specs from this frame's pattern
Return the sequence of specs from this frame's pattern
(realize! frame db data)
Given a map of data selected across all entity ids and specs, realize the frame
Given a map of data selected across all entity ids and specs, realize the frame
(realize-frontier db frontier)
Gathers data for the requisite queries across the pull's frontier
Gathers data for the requisite queries across the pull's frontier
(select db query)
Given a query as [[eid spec]], yields a map of: {[eid spec] --> multi-select-result-on-eid+spec}
Given a query as [[eid spec]], yields a map of: {[eid spec] --> multi-select-result-on-eid+spec}
(subpattern-frame eids
pattern
multi?
merge-info
seen-eids
recursion-depths
rec-comp?)
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close