Liking cljdoc? Tell your friends :D

com.nomistech.clj-utils


deep-mergeclj

(deep-merge & vals)

Recursively merges maps. If vals are not maps, the last value wins.

Recursively merges maps. If vals are not maps, the last value wins.
sourceraw docstring

do1clj/smacro

(do1 form-1 & other-forms)

Evaluates all the forms and returns the result of the first form.

Evaluates all the forms and returns the result of the first form.
sourceraw docstring

do2clj/smacro

(do2 form-1 form-2 & other-forms)

Evaluates all the forms and returns the result of the second form.

Evaluates all the forms and returns the result of the second form.
sourceraw docstring

econdclj/smacro

(econd & clauses)

Like cond, except throws a RuntimeException if no clause matches.

Like `cond`, except throws a RuntimeException if no clause matches.
sourceraw docstring

indexedclj

(indexed s)

Returns a lazy sequence of [index, item] pairs, where items come from 's' and indexes count up from zero. eg: (indexed '(a b c d)) => ([0 a] [1 b] [2 c] [3 d])

Returns a lazy sequence of [index, item] pairs, where items come
from 's' and indexes count up from zero.
eg:
    (indexed '(a b c d))  =>  ([0 a] [1 b] [2 c] [3 d])
sourceraw docstring

invert-functionclj

(invert-function f domain-subset)
source

invert-relationclj

(invert-relation rel domain-subset)
source

last-index-of-char-in-stringclj

(last-index-of-char-in-string char string)
source

map-keysclj

(map-keys f m)
source

map-valsclj

(map-vals f m)
source

member?clj

(member? item coll)
source

positionclj

(position pred coll)
source

positionsclj

(positions pred coll)

Returns a lazy sequence containing the positions at which pred is true for items in coll.

Returns a lazy sequence containing the positions at which pred
is true for items in coll.
sourceraw docstring

select-keys-recursivelyclj

(select-keys-recursively m key-paths)

Similar to select-keys, but with key paths digging in to a nested map. key-paths is a sequence. Each element of key-paths begins with a key, k, to be selected and is followed by a vector of key paths that specify the things to be selected from the value corresponding to k. Example: (select-keys-recursively {:k-1 "v-1" :k-2 {:k-2-1 "v-2-1" :k-2-2 {:k-2-2-1 "v-2-2-1" :k-2-2-2 "v-2-2-2" :k-2-2-3 "v-2-2-3"}} :k-3 "v-3"} [[:k-1] [:k-2 [:k-2-2 [:k-2-2-1] [:k-2-2-3]]]]) => {:k-1 "v-1" :k-2 {:k-2-2 {:k-2-2-1 "v-2-2-1" :k-2-2-3 "v-2-2-3"}}}

Similar to `select-keys`, but with key paths digging in to a nested map.
`key-paths` is a sequence. Each element of `key-paths` begins with a key, k,
to be selected and is followed by a vector of key paths that specify the
things to be selected from the value corresponding to k.
Example:
    (select-keys-recursively {:k-1 "v-1"
                              :k-2 {:k-2-1 "v-2-1"
                                    :k-2-2 {:k-2-2-1 "v-2-2-1"
                                            :k-2-2-2 "v-2-2-2"
                                            :k-2-2-3 "v-2-2-3"}}
                              :k-3 "v-3"}
                             [[:k-1]
                              [:k-2 [:k-2-2
                                      [:k-2-2-1]
                                      [:k-2-2-3]]]])
    => {:k-1 "v-1"
        :k-2 {:k-2-2 {:k-2-2-1 "v-2-2-1"
                      :k-2-2-3 "v-2-2-3"}}}
sourceraw docstring

submap?clj

(submap? m1 m2)
source

submap?-v2clj

(submap?-v2 m1 m2)
source

transitive-closureclj

(transitive-closure f v)

The set of values obtained by starting with v, then applying f to v, then applying f to each of the results, and so on. v and all intermediate values are included in the result.

The set of values obtained by starting with v, then applying f to v,
then applying f to each of the results, and so on. v and all
intermediate values are included in the result.
sourceraw docstring

transitive-closure-excluding-selfclj

(transitive-closure-excluding-self f v)

The set of values obtained by applying f to v, then applying f to each of the results, and so on. All intermediate values are included in the result.

The set of values obtained by applying f to v,
then applying f to each of the results, and so on. All
intermediate values are included in the result.
sourceraw docstring

unchunkclj

(unchunk s)

Produce a fully-lazy sequence from s. Sometimes Clojure sequences are not fully lazy. See http://blog.fogus.me/2010/01/22/de-chunkifying-sequences-in-clojure/ for details. See also Stuart Sierra comment at https://stackoverflow.com/questions/3407876/how-do-i-avoid-clojures-chunking-behavior-for-lazy-seqs-that-i-want-to-short-ci

Produce a fully-lazy sequence from `s`.
Sometimes Clojure sequences are not fully lazy.
See http://blog.fogus.me/2010/01/22/de-chunkifying-sequences-in-clojure/
for details.
See also Stuart Sierra comment at https://stackoverflow.com/questions/3407876/how-do-i-avoid-clojures-chunking-behavior-for-lazy-seqs-that-i-want-to-short-ci
sourceraw docstring

with-extrasclj/smacro

(with-extras [& {:keys [before after]}] & body)
source

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close