Liking cljdoc? Tell your friends :D

com.rpl.specter


AFTER-ELEMclj/s

(AFTER-ELEM)

Navigate to 'void' element after the sequence. For transformations – if result is not NONE, then append that value.

Navigate to 'void' element after the sequence.
For transformations – if result is not `NONE`,
then append that value.
sourceraw docstring

ALLclj/s

(ALL)

Navigate to every element of the collection. For maps navigates to a vector of [key value].

Navigate to every element of the collection. For maps navigates to
a vector of `[key value]`.
sourceraw docstring

ALL-WITH-METAclj/s

(ALL-WITH-META)

Same as ALL, except maintains metadata on the structure.

Same as ALL, except maintains metadata on the structure.
sourceraw docstring

ATOMclj/s

(ATOM)

Navigates to atom value.

Navigates to atom value.
sourceraw docstring

BEFORE-ELEMclj/s

(BEFORE-ELEM)

Navigate to 'void' element before the sequence. For transformations – if result is not NONE, then prepend that value.

Navigate to 'void' element before the sequence.
For transformations – if result is not `NONE`,
then prepend that value.
sourceraw docstring

before-indexclj/s

(before-index index)

Navigates to the empty space between the index and the prior index. For select navigates to NONE, and transforms to non-NONE insert at that position.

Navigates to the empty space between the index and the prior index. For select
navigates to NONE, and transforms to non-NONE insert at that position.
sourceraw docstring

BEGINNINGclj/s

(BEGINNING)

Navigate to the empty subsequence before the first element of the collection.

Navigate to the empty subsequence before the first element of the collection.
sourceraw docstring

codewalkerclj/s

Like walker but maintains metadata of any forms traversed.

Like `walker` but maintains metadata of any forms traversed.
sourceraw docstring

collectclj/s

(collect & path)
source

collect-oneclj/s

(collect-one & path)
source

collected?clj/smacro

(collected? params & body)

Creates a filter function navigator that takes in all the collected values as input. For arguments, can use (collected? [a b] ...) syntax to look at each collected value as individual arguments, or (collected? v ...) syntax to capture all the collected values as a single vector.

Creates a filter function navigator that takes in all the collected values
as input. For arguments, can use `(collected? [a b] ...)` syntax to look
at each collected value as individual arguments, or `(collected? v ...)` syntax
to capture all the collected values as a single vector.
sourceraw docstring

collectorclj/smacro

(collector params [_ [_ structure-sym] & body])
source

comp-pathsclj/s

(comp-paths & apath)

Returns a compiled version of the given path for use with compiled-{select/transform/setval/etc.} functions.

Returns a compiled version of the given path for use with
compiled-{select/transform/setval/etc.} functions.
sourceraw docstring

compactclj/s

(compact & path)

During transforms, after each step of navigation in subpath check if the value is empty. If so, remove that value by setting it to NONE.

During transforms, after each step of navigation in subpath check if the
value is empty. If so, remove that value by setting it to NONE.
sourceraw docstring

compiled-multi-transformclj/s

Version of multi-transform that takes in a path precompiled with comp-paths

Version of `multi-transform` that takes in a path precompiled with `comp-paths`
sourceraw docstring

compiled-replace-inclj/s

Version of replace-in that takes in a path precompiled with comp-paths

Version of replace-in that takes in a path precompiled with comp-paths
sourceraw docstring

compiled-selectclj/s

Version of select that takes in a path precompiled with comp-paths

Version of select that takes in a path precompiled with comp-paths
sourceraw docstring

compiled-select-anyclj/s

Version of select-any that takes in a path precompiled with comp-paths

Version of select-any that takes in a path precompiled with comp-paths
sourceraw docstring

compiled-select-firstclj/s

Version of select-first that takes in a path precompiled with comp-paths

Version of select-first that takes in a path precompiled with comp-paths
sourceraw docstring

compiled-select-oneclj/s

Version of select-one that takes in a path precompiled with comp-paths

Version of select-one that takes in a path precompiled with comp-paths
sourceraw docstring

compiled-select-one!clj/s

Version of select-one! that takes in a path precompiled with comp-paths

Version of select-one! that takes in a path precompiled with comp-paths
sourceraw docstring

compiled-selected-any?clj/s

Version of selected-any? that takes in a path precompiled with comp-paths

Version of selected-any? that takes in a path precompiled with comp-paths
sourceraw docstring

compiled-setvalclj/s

Version of setval that takes in a path precompiled with comp-paths

Version of setval that takes in a path precompiled with comp-paths
sourceraw docstring

compiled-transformclj/s

Version of transform that takes in a path precompiled with comp-paths

Version of transform that takes in a path precompiled with comp-paths
sourceraw docstring

compiled-traverseclj/s

Version of traverse that takes in a path precompiled with comp-paths

Version of traverse that takes in a path precompiled with comp-paths
sourceraw docstring

compiled-traverse-allclj/s

Version of traverse-all that takes in a path precompiled with comp-paths

Version of traverse-all that takes in a path precompiled with comp-paths
sourceraw docstring

compiled-vtransformclj/s

Version of vtransform that takes in a path precompiled with comp-paths

Version of vtransform that takes in a path precompiled with comp-paths
sourceraw docstring

cond-pathclj/s

(cond-path & conds)

Takes in alternating cond-path path cond-path path... Tests the structure if selecting with cond-path returns anything. If so, it uses the following path for this portion of the navigation. Otherwise, it tries the next cond-path. If nothing matches, then the structure is not selected.

Takes in alternating cond-path path cond-path path...
Tests the structure if selecting with cond-path returns anything.
If so, it uses the following path for this portion of the navigation.
Otherwise, it tries the next cond-path. If nothing matches, then the structure
is not selected.
sourceraw docstring

continue-then-stayclj/s

(continue-then-stay & path)

Navigates to the provided path and then to the current element. This can be used to implement post-order traversal.

Navigates to the provided path and then to the current element. This can be used
to implement post-order traversal.
sourceraw docstring

continuous-subseqsclj/s

(continuous-subseqs pred)

Navigates to every continuous subsequence of elements matching pred

Navigates to every continuous subsequence of elements matching `pred`
sourceraw docstring

declarepathclj/smacro

(declarepath name)
source

defcollectorclj/smacro

(defcollector name & body)
source

defdynamicnavclj/smacro

(defdynamicnav name & args)

Defines a function that can choose what navigator to use at runtime based on the dynamic context. The arguments will either be static values or objects satisfying dynamic-param?. Use late-bound-nav to produce a runtime navigator that uses the values of the dynamic params. See selected? for an illustrative example of dynamic navs.

Defines a function that can choose what navigator to use at runtime based on
the dynamic context. The arguments will either be static values or
objects satisfying `dynamic-param?`. Use `late-bound-nav` to produce a runtime
navigator that uses the values of the dynamic params. See `selected?` for
an illustrative example of dynamic navs.
sourceraw docstring

defmacroaliasclj/smacro

(defmacroalias name target)
source

defnavclj/smacro

source

defprotocolpathclj/smacro

(defprotocolpath name)
(defprotocolpath name params)

Defines a navigator that chooses the path to take based on the type of the value at the current point. May be specified with parameters to specify that all extensions must require that number of parameters.

Currently not available for ClojureScript.

Example of usage: (defrecord SingleAccount [funds]) (defrecord FamilyAccount [single-accounts])

(defprotocolpath FundsPath) (extend-protocolpath FundsPath SingleAccount :funds FamilyAccount [ALL FundsPath] )

Defines a navigator that chooses the path to take based on the type
of the value at the current point. May be specified with parameters to
specify that all extensions must require that number of parameters.

Currently not available for ClojureScript.

Example of usage:
(defrecord SingleAccount [funds])
(defrecord FamilyAccount [single-accounts])

(defprotocolpath FundsPath)
(extend-protocolpath FundsPath
  SingleAccount :funds
  FamilyAccount [ALL FundsPath]
  )
sourceraw docstring

defrichnavclj/smacro

source

DISPENSEclj/s

(DISPENSE)

Drops all collected values for subsequent navigation.

Drops all collected values for subsequent navigation.
sourceraw docstring

dynamic-param?clj/s

source

dynamicnavclj/smacro

(dynamicnav & args)
source

eachnavclj/s

(eachnav navfn)
source

ENDclj/s

(END)

Navigate to the empty subsequence after the last element of the collection.

Navigate to the empty subsequence after the last element of the collection.
sourceraw docstring

end-fnclj/smacro

(end-fn & args)
source

extend-protocolpathclj/smacro

(extend-protocolpath protpath & extensions)

Used in conjunction with defprotocolpath. See defprotocolpath.

Used in conjunction with `defprotocolpath`. See [[defprotocolpath]].
sourceraw docstring

extend-protocolpath*clj

(extend-protocolpath* protpath-prot extensions)
source

filtererclj/s

(filterer & path)

Navigates to a view of the current sequence that only contains elements that match the given path. An element matches the selector path if calling select on that element with the path yields anything other than an empty sequence.

For transformation: NONE entries in the result sequence cause corresponding entries in input to be removed. A result sequence smaller than the input sequence is equivalent to padding the result sequence with NONE at the end until the same size as the input.

Navigates to a view of the current sequence that only contains elements that
match the given path. An element matches the selector path if calling select
on that element with the path yields anything other than an empty sequence.

For transformation: `NONE` entries in the result sequence cause corresponding entries in
input to be removed. A result sequence smaller than the input sequence is equivalent to
padding the result sequence with `NONE` at the end until the same size as the input.
sourceraw docstring

FIRSTclj/s

Navigate to the first element of the collection. If the collection is empty navigation is stopped at this point.

Navigate to the first element of the collection. If the collection is
empty navigation is stopped at this point.
sourceraw docstring

if-pathclj/s

(if-path cond-p then-path)
(if-path cond-p then-path else-path)

Like cond-path, but with if semantics.

Like cond-path, but with if semantics.
sourceraw docstring

index-navclj/s

(index-nav i)

Navigates to the index of the sequence if within 0 and size. Transforms move element at that index to the new index, shifting other elements in the sequence.

Navigates to the index of the sequence if within 0 and size. Transforms move element
at that index to the new index, shifting other elements in the sequence.
sourceraw docstring

INDEXED-VALSclj/s

indexed-vals with a starting index of 0.

`indexed-vals` with a starting index of 0.
sourceraw docstring

indexed-valsclj/s

(indexed-vals start)

Navigate to [index elem] pairs for each element in a sequence. The sequence will be indexed starting from start. Changing index in transform has same effect as index-nav. Indices seen during transform take into account any shifting from prior sequence elements changing indices.

Navigate to [index elem] pairs for each element in a sequence. The sequence will be indexed
starting from `start`. Changing index in transform has same effect as `index-nav`. Indices seen
during transform take into account any shifting from prior sequence elements changing indices.
sourceraw docstring

keypathclj/s

Navigate to the specified keys one after another. If navigate to NONE, that element is removed from the map or vector.

Navigate to the specified keys one after another. If navigate to NONE,
that element is removed from the map or vector.
sourceraw docstring

LASTclj/s

Navigate to the last element of the collection. If the collection is empty navigation is stopped at this point.

Navigate to the last element of the collection. If the collection is
empty navigation is stopped at this point.
sourceraw docstring

late-bound-collectorclj/smacro

(late-bound-collector bindings impl)
source

late-bound-navclj/smacro

(late-bound-nav bindings & impls)
source

late-bound-richnavclj/smacro

(late-bound-richnav bindings & impls)
source

late-pathclj/s

source

late-resolved-fnclj/s

source

local-declarepathclj/s

source

map-keyclj/s

(map-key key)

Navigates to the given key in the map (not to the value). Navigates only if the key currently exists in the map. Can transform to NONE to remove the key/value pair from the map.

Navigates to the given key in the map (not to the value). Navigates only if the
key currently exists in the map. Can transform to NONE to remove the key/value
pair from the map.
sourceraw docstring

MAP-KEYSclj/s

(MAP-KEYS)

Navigate to each key of the map. This is more efficient than navigating via [ALL FIRST]

Navigate to each key of the map. This is more efficient than
navigating via [ALL FIRST]
sourceraw docstring

MAP-VALSclj/s

(MAP-VALS)

Navigate to each value of the map. This is more efficient than navigating via [ALL LAST]

Navigate to each value of the map. This is more efficient than
navigating via [ALL LAST]
sourceraw docstring

METAclj/s

(META)

Navigates to the metadata of the structure, or nil if the structure has no metadata or may not contain metadata.

Navigates to the metadata of the structure, or nil if
the structure has no metadata or may not contain metadata.
sourceraw docstring

multi-pathclj/s

(multi-path)
(multi-path path)
(multi-path path1 path2)
(multi-path path1 path2 & paths)

A path that branches on multiple paths. For updates, applies updates to the paths in order.

A path that branches on multiple paths. For updates,
applies updates to the paths in order.
sourceraw docstring

multi-transformclj/smacro

(multi-transform apath structure)

Just like transform but expects transform functions to be specified inline in the path using terminal or vterminal. Error is thrown if navigation finishes at a non-terminal navigator. terminal-val is a wrapper around terminal and is the multi-transform equivalent of setval. This macro will do inline caching of the path.

Just like `transform` but expects transform functions to be specified
inline in the path using `terminal` or `vterminal`. Error is thrown if navigation finishes
at a non-terminal navigator. `terminal-val` is a wrapper around `terminal` and is
the `multi-transform` equivalent of `setval`.
This macro will do inline caching of the path.
sourceraw docstring

multi-transform*clj/s

(multi-transform* path structure)

Just like transform but expects transform functions to be specified inline in the path using terminal or vterminal. Error is thrown if navigation finishes at a non-terminal navigator. terminal-val is a wrapper around terminal and is the multi-transform equivalent of setval.

Just like `transform` but expects transform functions to be specified
inline in the path using `terminal` or `vterminal`. Error is thrown if navigation finishes
at a non-terminal navigator. `terminal-val` is a wrapper around `terminal` and is
the `multi-transform` equivalent of `setval`.
sourceraw docstring

mustclj/s

Navigate to the specified keys one after another, only if they exist in the data structure. If navigate to NONE, that element is removed from the map or vector.

Navigate to the specified keys one after another, only if they exist
in the data structure. If navigate to NONE, that element is removed
from the map or vector.
sourceraw docstring

NAMEclj/s

(NAME)

Navigates to the name portion of the keyword or symbol

Navigates to the name portion of the keyword or symbol
sourceraw docstring

NAMESPACEclj/s

(NAMESPACE)

Navigates to the namespace portion of the keyword or symbol

Navigates to the namespace portion of the keyword or symbol
sourceraw docstring

source

NIL->LISTclj/s

Navigates to '() if the value is nil. Otherwise it stays navigated at the current value.

Navigates to '() if the value is nil. Otherwise it stays
navigated at the current value.
sourceraw docstring

NIL->SETclj/s

Navigates to #{} if the value is nil. Otherwise it stays navigated at the current value.

Navigates to #{} if the value is nil. Otherwise it stays
navigated at the current value.
sourceraw docstring

nil->valclj/s

(nil->val v)

Navigates to the provided val if the structure is nil. Otherwise it stays navigated at the structure.

Navigates to the provided val if the structure is nil. Otherwise it stays
navigated at the structure.
sourceraw docstring

NIL->VECTORclj/s

Navigates to [] if the value is nil. Otherwise it stays navigated at the current value.

Navigates to [] if the value is nil. Otherwise it stays
navigated at the current value.
sourceraw docstring

NONEclj/s

Global value used to indicate no elements selected during select-any.

Global value used to indicate no elements selected during
[[select-any]].
sourceraw docstring

NONE-ELEMclj/s

(NONE-ELEM)

Navigate to 'void' elem in the set. For transformations - if result is not NONE, then add that value to the set.

Navigate to 'void' elem in the set.
For transformations - if result is not `NONE`,
then add that value to the set.
sourceraw docstring

not-selected?clj/s

(not-selected? & path)
source

nthpathclj/s

Navigate to the specified indices one after another. If navigate to NONE, that element is removed from the sequence.

Navigate to the specified indices one after another. If navigate to
NONE, that element is removed from the sequence.
sourceraw docstring

parserclj/s

(parser parse-fn unparse-fn)

Navigate to the result of running parse-fn on the value. For transforms, the transformed value then has unparse-fn run on it to get the final value at this point.

Navigate to the result of running `parse-fn` on the value. For
transforms, the transformed value then has `unparse-fn` run on
it to get the final value at this point.
sourceraw docstring

pathclj/smacro

(path & path)

Same as calling comp-paths, except it caches the composition of the static parts of the path for later re-use (when possible). For almost all idiomatic uses of Specter provides huge speedup. This macro is automatically used by the select/transform/setval/replace-in/etc. macros.

Same as calling comp-paths, except it caches the composition of the static parts
of the path for later re-use (when possible). For almost all idiomatic uses
of Specter provides huge speedup. This macro is automatically used by the
select/transform/setval/replace-in/etc. macros.
sourceraw docstring

predclj/s

Keeps the element only if it matches the supplied predicate. Functions in paths implicitly convert to this navigator.

Keeps the element only if it matches the supplied predicate. Functions in paths
implicitly convert to this navigator.
sourceraw docstring

pred<clj/s

(pred< v)
source

pred<=clj/s

(pred<= v)
source

pred=clj/s

(pred= v)
source

pred>clj/s

(pred> v)
source

pred>=clj/s

(pred>= v)
source

providepathclj/smacro

(providepath name apath)
source

putvalclj/s

Adds an external value to the collected vals. Useful when additional arguments are required to the transform function that would otherwise require partial application or a wrapper function.

e.g., incrementing val at path [:a :b] by 3: (transform [:a :b (putval 3)] + some-map)

Adds an external value to the collected vals. Useful when additional arguments
are required to the transform function that would otherwise require partial
application or a wrapper function.

e.g., incrementing val at path [:a :b] by 3:
(transform [:a :b (putval 3)] + some-map)
sourceraw docstring

recursive-pathclj/smacro

(recursive-path params self-sym path)
source

regex-navclj/s

(regex-nav re)
source

replace-inclj/smacro

(replace-in apath transform-fn structure & args)

Similar to transform, except returns a pair of [transformed-structure sequence-of-user-ret]. The transform-fn in this case is expected to return [ret user-ret]. ret is what's used to transform the data structure, while user-ret will be added to the user-ret sequence in the final return. replace-in is useful for situations where you need to know the specific values of what was transformed in the data structure. This macro will do inline caching of the path.

Similar to transform, except returns a pair of [transformed-structure sequence-of-user-ret].
The transform-fn in this case is expected to return [ret user-ret]. ret is
what's used to transform the data structure, while user-ret will be added to the user-ret sequence
in the final return. replace-in is useful for situations where you need to know the specific values
of what was transformed in the data structure.
This macro will do inline caching of the path.
sourceraw docstring

replace-in*clj/s

(replace-in* path
             transform-fn
             structure
             &
             {:keys [merge-fn] :or {merge-fn concat}})

Similar to transform, except returns a pair of [transformed-structure sequence-of-user-ret]. The transform-fn in this case is expected to return [ret user-ret]. ret is what's used to transform the data structure, while user-ret will be added to the user-ret sequence in the final return. replace-in is useful for situations where you need to know the specific values of what was transformed in the data structure.

Similar to transform, except returns a pair of [transformed-structure sequence-of-user-ret].
The transform-fn in this case is expected to return [ret user-ret]. ret is
what's used to transform the data structure, while user-ret will be added to the user-ret sequence
in the final return. replace-in is useful for situations where you need to know the specific values
of what was transformed in the data structure.
sourceraw docstring

richnavclj/smacro

source

satisfies-protpath?clj/smacro

(satisfies-protpath? protpath o)
source

selectclj/smacro

(select apath structure)

Navigates to and returns a sequence of all the elements specified by the path. This macro will do inline caching of the path.

Navigates to and returns a sequence of all the elements specified by the path.
This macro will do inline caching of the path.
sourceraw docstring

select*clj/s

(select* path structure)

Navigates to and returns a sequence of all the elements specified by the path.

Navigates to and returns a sequence of all the elements specified by the path.
sourceraw docstring

select-anyclj/smacro

(select-any apath structure)

Returns any element found or NONE if nothing selected. This is the most efficient of the various selection operations. This macro will do inline caching of the path.

Returns any element found or [[NONE]] if nothing selected. This is the most
efficient of the various selection operations.
This macro will do inline caching of the path.
sourceraw docstring

select-any*clj/s

(select-any* path structure)

Returns any element found or NONE if nothing selected. This is the most efficient of the various selection operations.

Returns any element found or [[NONE]] if nothing selected. This is the most
efficient of the various selection operations.
sourceraw docstring

select-firstclj/smacro

(select-first apath structure)

Returns first element found. This macro will do inline caching of the path.

Returns first element found.
This macro will do inline caching of the path.
sourceraw docstring

select-first*clj/s

(select-first* path structure)

Returns first element found.

Returns first element found.
sourceraw docstring

select-oneclj/smacro

(select-one apath structure)

Like select, but returns either one element or nil. Throws exception if multiple elements found. This macro will do inline caching of the path.

Like select, but returns either one element or nil. Throws exception if multiple elements found.
This macro will do inline caching of the path.
sourceraw docstring

select-one!clj/smacro

(select-one! apath structure)

Returns exactly one element, throws exception if zero or multiple elements found. This macro will do inline caching of the path.

Returns exactly one element, throws exception if zero or multiple elements found.
This macro will do inline caching of the path.
sourceraw docstring

select-one!*clj/s

(select-one!* path structure)

Returns exactly one element, throws exception if zero or multiple elements found

Returns exactly one element, throws exception if zero or multiple elements found
sourceraw docstring

select-one*clj/s

(select-one* path structure)

Like select, but returns either one element or nil. Throws exception if multiple elements found

Like select, but returns either one element or nil. Throws exception if multiple elements found
sourceraw docstring

selected-any?clj/smacro

(selected-any? apath structure)

Returns true if any element was selected, false otherwise. This macro will do inline caching of the path.

Returns true if any element was selected, false otherwise.
This macro will do inline caching of the path.
sourceraw docstring

selected-any?*clj/s

(selected-any?* path structure)

Returns true if any element was selected, false otherwise.

Returns true if any element was selected, false otherwise.
sourceraw docstring

selected?clj/s

(selected? & path)

Filters the current value based on whether a path finds anything. e.g. (selected? :vals ALL even?) keeps the current element only if an even number exists for the :vals key.

Filters the current value based on whether a path finds anything.
e.g. (selected? :vals ALL even?) keeps the current element only if an
even number exists for the :vals key.
sourceraw docstring

set-elemclj/s

(set-elem elem)

Navigates to the given element in the set only if it exists in the set. Can transform to NONE to remove the element from the set.

Navigates to the given element in the set only if it exists in the set.
Can transform to NONE to remove the element from the set.
sourceraw docstring

setvalclj/smacro

(setval apath aval structure)

Navigates to each value specified by the path and replaces it by aval. This macro will do inline caching of the path.

Navigates to each value specified by the path and replaces it by `aval`.
This macro will do inline caching of the path.
sourceraw docstring

setval*clj/s

(setval* path val structure)

Navigates to each value specified by the path and replaces it by val

Navigates to each value specified by the path and replaces it by val
sourceraw docstring

srangeclj/s

(srange start end)

Navigates to the subsequence bound by the indexes start (inclusive) and end (exclusive)

Navigates to the subsequence bound by the indexes start (inclusive)
and end (exclusive)
sourceraw docstring

srange-dynamicclj/s

(srange-dynamic start-index-fn end-index-fn)

Uses start-index-fn and end-index-fn to determine the bounds of the subsequence to select when navigating. start-index-fn takes in the structure as input. end-index-fn can be one of two forms. If a regular function (e.g. defined with fn), it takes in only the structure as input. If a function defined using special end-fn macro, it takes in the structure and the result of start-index-fn.

Uses start-index-fn and end-index-fn to determine the bounds of the subsequence
to select when navigating. `start-index-fn` takes in the structure as input. `end-index-fn`
can be one of two forms. If a regular function (e.g. defined with `fn`), it takes in only the structure as input. If a function defined using special `end-fn` macro, it takes in the structure and the result of `start-index-fn`.
sourceraw docstring

STAYclj/s

Stays navigated at the current point. Essentially a no-op navigator.

Stays navigated at the current point. Essentially a no-op navigator.
sourceraw docstring

stay-then-continueclj/s

(stay-then-continue & path)

Navigates to the current element and then navigates via the provided path. This can be used to implement pre-order traversal.

Navigates to the current element and then navigates via the provided path.
This can be used to implement pre-order traversal.
sourceraw docstring

STOPclj/s

(STOP)

Stops navigation at this point. For selection returns nothing and for transformation returns the structure unchanged

Stops navigation at this point. For selection returns nothing and for
transformation returns the structure unchanged
sourceraw docstring

submapclj/s

(submap m-keys)

Navigates to the specified submap (using select-keys). In a transform, that submap in the original map is changed to the new value of the submap.

Navigates to the specified submap (using select-keys).
In a transform, that submap in the original map is changed to the new
value of the submap.
sourceraw docstring

subselectclj/s

(subselect & path)

Navigates to a sequence that contains the results of (select ...), but is a view to the original structure that can be transformed.

Requires that the input navigators will walk the structure's children in the same order when executed on "select" and then "transform".

If transformed sequence is smaller than input sequence, missing entries will be filled in with NONE, triggering removal if supported by that navigator.

Value collection (e.g. collect, collect-one) may not be used in the subpath.

Navigates to a sequence that contains the results of (select ...),
but is a view to the original structure that can be transformed.

Requires that the input navigators will walk the structure's
children in the same order when executed on "select" and then
"transform".

If transformed sequence is smaller than input sequence, missing entries
will be filled in with NONE, triggering removal if supported by that navigator.

Value collection (e.g. collect, collect-one) may not be used in the subpath.
sourceraw docstring

subsetclj/s

(subset aset)

Navigates to the specified subset (by taking an intersection). In a transform, that subset in the original set is changed to the new value of the subset.

Navigates to the specified subset (by taking an intersection).
In a transform, that subset in the original set is changed to the
new value of the subset.
sourceraw docstring

terminalclj/s

Defines an endpoint in the navigation the transform function run. The transform function works just like it does in transform, with collected values given as the first arguments

Defines an endpoint in the navigation the transform function run. The transform
function works just like it does in `transform`, with collected values
given as the first arguments
sourceraw docstring

terminal-valclj/s

(terminal-val v)

Like terminal but specifies a val to set at the location regardless of the collected values or the value at the location.

Like `terminal` but specifies a val to set at the location regardless of
the collected values or the value at the location.
sourceraw docstring

transformclj/smacro

(transform apath transform-fn structure)

Navigates to each value specified by the path and replaces it by the result of running the transform-fn on it. This macro will do inline caching of the path.

Navigates to each value specified by the path and replaces it by the result of running
the transform-fn on it.
This macro will do inline caching of the path.
sourceraw docstring

transform*clj/s

(transform* path transform-fn structure)

Navigates to each value specified by the path and replaces it by the result of running the transform-fn on it

Navigates to each value specified by the path and replaces it by the result of running
the transform-fn on it
sourceraw docstring

transformedclj/s

(transformed path update-fn)

Navigates to a view of the current value by transforming it with the specified path and update-fn.

Navigates to a view of the current value by transforming it with the
specified path and update-fn.
sourceraw docstring

traverseclj/smacro

(traverse apath structure)

Return a reducible object that traverses over structure to every element specified by the path. This macro will do inline caching of the path.

Return a reducible object that traverses over `structure` to every element
specified by the path.
This macro will do inline caching of the path.
sourceraw docstring

traverse*clj/s

(traverse* apath structure)

Return a reducible object that traverses over structure to every element specified by the path

Return a reducible object that traverses over `structure` to every element
specified by the path
sourceraw docstring

traverse-allclj/smacro

(traverse-all apath)

Returns a transducer that traverses over each element with the given path.

Returns a transducer that traverses over each element with the given path.
sourceraw docstring

traverse-all*clj/s

(traverse-all* apath)

Returns a transducer that traverses over each element with the given path.

Returns a transducer that traverses over each element with the given path.
sourceraw docstring

traversedclj/s

(traversed path reduce-fn)

Navigates to a view of the current value by transforming with a reduction over the specified traversal.

Navigates to a view of the current value by transforming with a reduction over
the specified traversal.
sourceraw docstring

VALclj/s

source

viewclj/s

(view afn)

Navigates to result of running afn on the currently navigated value.

Navigates to result of running `afn` on the currently navigated value.
sourceraw docstring

vterminalclj/s

Defines an endpoint in the navigation the transform function run.The transform function works differently than it does in transform. Rather than receive collected vals spliced in as the first arguments to the function, this function always takes two arguemnts. The first is all collected vals in a vector, and the second is the navigated value.

Defines an endpoint in the navigation the transform function run.The transform
function works differently than it does in `transform`. Rather than receive
collected vals spliced in as the first arguments to the function, this function
always takes two arguemnts. The first is all collected vals in a vector, and
the second is the navigated value.
sourceraw docstring

vtransformclj/smacro

(vtransform apath transform-fn structure)

Navigates to each value specified by the path and replaces it by the result of running the transform-fn on two arguments: the collected values as a vector, and the navigated value.

Navigates to each value specified by the path and replaces it by the result of running
the transform-fn on two arguments: the collected values as a vector, and the navigated value.
sourceraw docstring

walkerclj/s

Navigate the data structure until reaching a value for which afn returns truthy. Has same semantics as clojure.walk.

Navigate the data structure until reaching
a value for which `afn` returns truthy. Has
same semantics as clojure.walk.
sourceraw docstring

with-fresh-collectedclj/s

(with-fresh-collected & path)
source

with-inline-debugclj/smacro

(with-inline-debug & body)
source

wrap-dynamic-navclj/s

(wrap-dynamic-nav f)
source

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

× close