(aggr f)
Wraps an aggregate function of the form (fn [acc val]) for application to a table
Wraps an aggregate function of the form (fn [acc val]) for application to a table
(aggregate f table)
Apply an aggregate function to a table. Only applies to tables, not unions or products.
Apply an aggregate function to a table. Only applies to tables, not unions or products.
(difference & tables)
Create a lazy difference of tables.
Create a lazy difference of tables.
Vacuously false predicate.
@(select FF tab) === []
Vacuously false predicate. @(select FF tab) === []
(in equiv & projs)
Create a selection over a projection for use on a lazy-table.
Selects matching values equivalence function equiv after projecting the lazy-tables using the projection conditions. Encodes an equijoin.
=> @(select (in identity :a :b) (product (table [{:a 3 :b 2} {:a 0 :b 0}]) (table [{:a 4 :b 3} {:a 1 :b 1}])))
[({:a 3 :b 2} {:a 4 :b 3})]
Create a selection over a projection for use on a lazy-table. Selects matching values equivalence function equiv after projecting the lazy-tables using the projection conditions. Encodes an equijoin. => @(select (in identity :a :b) (product (table [{:a 3 :b 2} {:a 0 :b 0}]) (table [{:a 4 :b 3} {:a 1 :b 1}]))) [({:a 3 :b 2} {:a 4 :b 3})]
(p-and & preds)
Wrap a number of predicates for parallel selection on products. Distributes over union.
(select (par p q) (product xs ys)) ;; equivalent to (product (select p xs) (select q ys))
(select (par p q) (union (product ws xs) (product ys zs)) ;; equivalent to (union (select (par p q) (product ws xs)) (select (par p q) (product ys zs)))
Wrap a number of predicates for parallel selection on products. Distributes over union. (select (par p q) (product xs ys)) ;; equivalent to (product (select p xs) (select q ys)) (select (par p q) (union (product ws xs) (product ys zs)) ;; equivalent to (union (select (par p q) (product ws xs)) (select (par p q) (product ys zs)))
(par & fs)
Wrap a number of functions for parallel application to products. Distributes over union.
(project (par f g) (product xs ys)) ;; equivalent to (product (project f xs) (project g ys)
(project (par f g) (union (product ws xs) (product ys zs))) ;; equivalent to (union (project (par f g) (product ws xs)) (project (par f g) (product ys za)))
Wrap a number of functions for parallel application to products. Distributes over union. (project (par f g) (product xs ys)) ;; equivalent to (product (project f xs) (project g ys) (project (par f g) (union (product ws xs) (product ys zs))) ;; equivalent to (union (project (par f g) (product ws xs)) (project (par f g) (product ys za)))
(pred f)
Wrap a clojure function in a predicate type -- not typically necessary as the apis all accept Clojure IFns
Wrap a clojure function in a predicate type -- not typically necessary as the apis all accept Clojure IFns
(product & tables)
Create a lazy product of tables.
Create a lazy product of tables.
(proj f)
Wrap a clojure function in a projection type -- not typically necessary as the apis all accept Clojure IFns.
Wrap a clojure function in a projection type -- not typically necessary as the apis all accept Clojure IFns.
(project projection table)
Lazily apply a projection to a table.
Lazily apply a projection to a table.
(s-and & preds)
Wrap a number of predicates for consecutive selection.
(select (s-and p q) (product xs ys)) ;; equivalent to (select q (select p (product xs ys))
Note that this will force the product before selection.
(select (s-and p q) (union xs ys)) ;; equivalent to (select q (select p (union xs ys))
Wrap a number of predicates for consecutive selection. (select (s-and p q) (product xs ys)) ;; equivalent to (select q (select p (product xs ys)) Note that this will force the product before selection. (select (s-and p q) (union xs ys)) ;; equivalent to (select q (select p (union xs ys))
(select predicate table)
Lazily apply a selection to a table.
Lazily apply a selection to a table.
(table)
(table xs)
Create a lazy-tables table from a clojure sequence
Create a lazy-tables table from a clojure sequence
Returns true if the table would evaluate to empty; false if it cannot be determined without evaluation.
Returns true if the table would evaluate to empty; false if it cannot be determined without evaluation.
Vacuously true predicate.
@(select TT table) === @table
Vacuously true predicate. @(select TT table) === @table
(union & tables)
Create a lazy union of tables
Create a lazy union of tables
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close