(compile-processed-form {:keys [query datom-pred rule-expressions sym->pred-gens
sym->evals]
:as processed-query-form})
(datom-filler terms)
Fills in implicit vars.
Fills in implicit vars.
(input-binder-gen inputs-list)
Given the :in clause of a query, this returns a function that will take the corresponding runtime inputs and generate an initial set of bindings for the QSQR algorithm.
Given the :in clause of a query, this returns a function that will take the corresponding runtime inputs and generate an initial set of bindings for the QSQR algorithm.
(lazy-results-gen find-terms)
Shapes the raw output of the Datalog query as appropriate for the find clause. This is lazy upon lazy, because in the case of scalar or tuple outputs, the full processing of query results would be a waste of time.
Shapes the raw output of the Datalog query as appropriate for the find clause. This is lazy upon lazy, because in the case of scalar or tuple outputs, the full processing of query results would be a waste of time.
(output-gen init-query find-spec)
Given the :find and :with clauses of a query, this returns a function that will take the result of the QSQR query and shape it appropriately for return to the user.
Given the :find and :with clauses of a query, this returns a function that will take the result of the QSQR query and shape it appropriately for return to the user.
(predicate-expression->datalog sym->pred-gens pred-expr)
Given the map produced by predinfo->pred-gens and a particular predicate expression, this produces a Predicate object for use by the datalog engine.
Given the map produced by predinfo->pred-gens and a particular predicate expression, this produces a Predicate object for use by the datalog engine.
(projector-gen find-terms)
Query results are grouped by the variables that do not occur in aggregate expressions. This produces a function that pulls out exactly those variables from each raw result of the Datalog query.
Query results are grouped by the variables that do not occur in aggregate expressions. This produces a function that pulls out exactly those variables from each raw result of the Datalog query.
(rule-expressions->datalog rule-expressions sym->pred-gens)
Given the simplified rule-expressions (as returned by process-ast) and the map from predicate name/symbol to query.datalog. Predicate constructors (as returned by process-ast), this returns a collection of rules compatible with eva.query.datalog.
Given the simplified rule-expressions (as returned by process-ast) and the map from predicate name/symbol to query.datalog. Predicate constructors (as returned by process-ast), this returns a collection of rules compatible with eva.query.datalog.
(shape-results-gen init-query find-spec)
Produces a function that takes a table of named databases and the raw results of the datalog query, and turns them into the shape specified by the query. syms->db table is required so that pull expressions can be resolved.
Produces a function that takes a table of named databases and the raw results of the datalog query, and turns them into the shape specified by the query. syms->db table is required so that pull expressions can be resolved.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close