diff --git a/com.rpl.specter.html b/com.rpl.specter.html index 1c41c55..ffd381f 100644 --- a/com.rpl.specter.html +++ b/com.rpl.specter.html @@ -1,42 +1,42 @@ -com.rpl.specter documentation

com.rpl.specter

AFTER-ELEM

Navigate to 'void' element after the sequence.
+com.rpl.specter documentation

com.rpl.specter

AFTER-ELEM

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

ALL

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

ALL-WITH-META

Same as ALL, except maintains metadata on the structure.
-

ATOM

Navigates to atom value.
-

BEFORE-ELEM

Navigate to 'void' element before the sequence.
+then append that value.

ALL

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

ALL-WITH-META

Same as ALL, except maintains metadata on the structure.
+

ATOM

Navigates to atom value.
+

BEFORE-ELEM

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

before-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.

BEGINNING

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

codewalker

Like `walker` but maintains metadata of any forms traversed.
-

collect

Adds the result of running select with the given path on the
-current value to the collected vals.

collect-one

Adds the result of running select-one with the given path on the
-current value to the collected vals.

collected?

macro

(collected? params & body)
Creates a filter function navigator that takes in all the collected values
+then prepend that value.

before-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.

BEGINNING

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

codewalker

Like `walker` but maintains metadata of any forms traversed.
+

collect

Adds the result of running select with the given path on the
+current value to the collected vals.

collect-one

Adds the result of running select-one with the given path on the
+current value to the collected vals.

collected?

macro

(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.

collector

macro

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

comp-paths

(comp-paths & apath)
Returns a compiled version of the given path for use with
-compiled-{select/transform/setval/etc.} functions.

compact

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.

compiled-multi-transform

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

compiled-replace-in

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

compiled-select

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

compiled-select-any

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

compiled-select-first

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

compiled-select-one

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

compiled-select-one!

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

compiled-selected-any?

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

compiled-setval

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

compiled-transform

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

compiled-traverse

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

compiled-traverse-all

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

compiled-vtransform

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

cond-path

Takes in alternating cond-path path cond-path path...
+compiled-{select/transform/setval/etc.} functions.

compact

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.

compiled-multi-transform

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

compiled-replace-in

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

compiled-select

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

compiled-select-any

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

compiled-select-first

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

compiled-select-one

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

compiled-select-one!

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

compiled-selected-any?

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

compiled-setval

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

compiled-transform

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

compiled-traverse

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

compiled-traverse-all

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

compiled-vtransform

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

cond-path

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.

continue-then-stay

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

continuous-subseqs

Navigates to every continuous subsequence of elements matching `pred`
-

declarepath

macro

(declarepath name)

defcollector

macro

(defcollector name & body)

defdynamicnav

macro

(defdynamicnav name & args)
Defines a function that can choose what navigator to use at runtime based on
+is not selected.

continue-then-stay

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

continuous-subseqs

Navigates to every continuous subsequence of elements matching `pred`
+

declarepath

macro

(declarepath name)

defcollector

macro

(defcollector name & body)

defdynamicnav

macro

(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
@@ -56,61 +56,61 @@ Example of usage:
   FamilyAccount [ALL FundsPath]
   )
 

defrichnav

macro

DISPENSE

Drops all collected values for subsequent navigation.
-

dynamic-param?

dynamicnav

macro

(dynamicnav & args)

eachnav

Turns a navigator that takes one argument into a navigator that takes
+

dynamic-param?

dynamicnav

macro

(dynamicnav & args)

eachnav

Turns a navigator that takes one argument into a navigator that takes
 many arguments and uses the same navigator with each argument. There
-is no performance cost to using this. See implementation of `keypath`

END

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

end-fn

macro

(end-fn & args)

extend-protocolpath

macro

(extend-protocolpath protpath & extensions)
Used in conjunction with `defprotocolpath`. See [[defprotocolpath]].
-

extend-protocolpath*

(extend-protocolpath* protpath-prot extensions)

filterer

Navigates to a view of the current sequence that only contains elements that
+is no performance cost to using this. See implementation of `keypath`

END

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

end-fn

macro

(end-fn & args)

extend-protocolpath

macro

(extend-protocolpath protpath & extensions)
Used in conjunction with `defprotocolpath`. See [[defprotocolpath]].
+

extend-protocolpath*

(extend-protocolpath* protpath-prot extensions)

filterer

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.

FIRST

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

if-path

Like cond-path, but with if semantics.
-

index-nav

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.

INDEXED-VALS

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

indexed-vals

Navigate to [index elem] pairs for each element in a sequence. The sequence will be indexed
+padding the result sequence with `NONE` at the end until the same size as the input.

FIRST

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

if-path

Like cond-path, but with if semantics.
+

index-nav

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.

INDEXED-VALS

`indexed-vals` with a starting index of 0.
+

indexed-vals

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.

keypath

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

LAST

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

late-bound-collector

macro

(late-bound-collector bindings impl)

late-bound-nav

macro

(late-bound-nav bindings & impls)

late-bound-richnav

macro

(late-bound-richnav bindings & impls)

late-path

late-resolved-fn

local-declarepath

map-key

Navigates to the given key in the map (not to the value). Navigates only if the
+during transform take into account any shifting from prior sequence elements changing indices.

keypath

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

LAST

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

late-bound-collector

macro

(late-bound-collector bindings impl)

late-bound-nav

macro

(late-bound-nav bindings & impls)

late-bound-richnav

macro

(late-bound-richnav bindings & impls)

late-path

late-resolved-fn

local-declarepath

map-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.

MAP-KEYS

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

MAP-VALS

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

META

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

multi-path

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

multi-transform

macro

(multi-transform apath structure)
Just like `transform` but expects transform functions to be specified
+pair from the map.

MAP-KEYS

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

MAP-VALS

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

META

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

multi-path

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

multi-transform

macro

(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.

multi-transform*

(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`.

must

Navigate to the specified keys one after another, only if they exist
+the `multi-transform` equivalent of `setval`.

must

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.

NAME

Navigates to the name portion of the keyword or symbol
-

NAMESPACE

Navigates to the namespace portion of the keyword or symbol
-

nav

macro

NIL->LIST

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

NIL->SET

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

nil->val

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

NIL->VECTOR

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

NONE

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

NONE-ELEM

Navigate to 'void' elem in the set.
+from the map or vector.

NAME

Navigates to the name portion of the keyword or symbol
+

NAMESPACE

Navigates to the namespace portion of the keyword or symbol
+

nav

macro

NIL->LIST

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

NIL->SET

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

nil->val

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

NIL->VECTOR

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

NONE

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

NONE-ELEM

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

not-selected?

nthpath

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

parser

Navigate to the result of running `parse-fn` on the value. For
+then add that value to the set.

not-selected?

nthpath

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

parser

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.

path

macro

(path & path)
Same as calling comp-paths, except it caches the composition of the static parts
+it to get the final value at this point.

path

macro

(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.

pred

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

pred<

(pred< v)

pred<=

(pred<= v)

pred=

(pred= v)

pred>

(pred> v)

pred>=

(pred>= v)

providepath

macro

(providepath name apath)

putval

Adds an external value to the collected vals. Useful when additional arguments
+implicitly convert to this navigator.

pred<

(pred< v)

pred<=

(pred<= v)

pred=

(pred= v)

pred>

(pred> v)

pred>=

(pred>= v)

providepath

macro

(providepath name apath)

putval

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)

recursive-path

macro

(recursive-path params self-sym path)

regex-nav

replace-in

macro

(replace-in apath transform-fn structure & args)
Similar to transform, except returns a pair of [transformed-structure sequence-of-user-ret].
+(transform [:a :b (putval 3)] + some-map)

recursive-path

macro

(recursive-path params self-sym path)

regex-nav

replace-in

macro

(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
@@ -119,33 +119,33 @@ This macro will do inline caching of the path.

richnav

macro

satisfies-protpath?

macro

(satisfies-protpath? protpath o)

select

macro

(select apath structure)
Navigates to and returns a sequence of all the elements specified by the path.
+of what was transformed in the data structure.

richnav

macro

satisfies-protpath?

macro

(satisfies-protpath? protpath o)

select

macro

(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.

select*

(select* path structure)
Navigates to and returns a sequence of all the elements specified by the path.
-

select-any

macro

(select-any apath structure)
Returns any element found or [[NONE]] if nothing selected. This is the most
+

select-any

macro

(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.

select-any*

(select-any* path structure)
Returns any element found or [[NONE]] if nothing selected. This is the most
-efficient of the various selection operations.

select-first

macro

(select-first apath structure)
Returns first element found.
+efficient of the various selection operations.

select-first

macro

(select-first apath structure)
Returns first element found.
 This macro will do inline caching of the path.

select-first*

(select-first* path structure)
Returns first element found.
-

select-one

macro

(select-one apath structure)
Like select, but returns either one element or nil. Throws exception if multiple elements found.
+

select-one

macro

(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.

select-one!

macro

(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.

select-one!*

(select-one!* path structure)
Returns exactly one element, throws exception if zero or multiple elements found
-

select-one*

(select-one* path structure)
Like select, but returns either one element or nil. Throws exception if multiple elements found
-

selected-any?

macro

(selected-any? apath structure)
Returns true if any element was selected, false otherwise.
+

select-one*

(select-one* path structure)
Like select, but returns either one element or nil. Throws exception if multiple elements found
+

selected-any?

macro

(selected-any? apath structure)
Returns true if any element was selected, false otherwise.
 This macro will do inline caching of the path.

selected-any?*

(selected-any?* path structure)
Returns true if any element was selected, false otherwise.
-

selected?

Filters the current value based on whether a path finds anything.
+

selected?

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.

set-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.

setval

macro

(setval apath aval structure)
Navigates to each value specified by the path and replaces it by `aval`.
+even number exists for the :vals key.

set-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.

setval

macro

(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.

setval*

(setval* path val structure)
Navigates to each value specified by the path and replaces it by val
-

srange

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

srange-dynamic

Uses start-index-fn and end-index-fn to determine the bounds of the subsequence
+

srange

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

srange-dynamic

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`.

STAY

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

stay-then-continue

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

STOP

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

submap

Navigates to the specified submap (using select-keys).
+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`.

STAY

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

stay-then-continue

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

STOP

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

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.

subselect

Navigates to a sequence that contains the results of (select ...),
+value of the submap.

subselect

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
@@ -155,29 +155,29 @@ children in the same order when executed on "select" and then
 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.

subset

Navigates to the specified subset (by taking an intersection).
+Value collection (e.g. collect, collect-one) may not be used in the subpath.

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.

terminal

Defines an endpoint in the navigation the transform function run. The transform
+new value of the subset.

terminal

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

terminal-val

(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.

transform

macro

(transform apath transform-fn structure)
Navigates to each value specified by the path and replaces it by the result of running
+given as the first arguments

terminal-val

(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.

transform

macro

(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.

transform*

(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

transformed

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

traverse

macro

(traverse apath structure)
Return a reducible object that traverses over `structure` to every element
+the transform-fn on it

transformed

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

traverse

macro

(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.

traverse*

(traverse* apath structure)
Return a reducible object that traverses over `structure` to every element
-specified by the path

traverse-all

macro

(traverse-all apath)
Returns a transducer that traverses over each element with the given path.
+specified by the path

traverse-all

macro

(traverse-all apath)
Returns a transducer that traverses over each element with the given path.
 

traverse-all*

(traverse-all* apath)
Returns a transducer that traverses over each element with the given path.
-

traversed

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

VAL

view

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

vterminal

Defines an endpoint in the navigation the transform function run.The transform
+

traversed

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

VAL

view

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

vterminal

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.

vtransform

macro

(vtransform apath transform-fn structure)
Navigates to each value specified by the path and replaces it by the result of running
+the second is the navigated value.

vtransform

macro

(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.

walker

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

with-fresh-collected

Continues navigating on the given path with the collected vals reset to []. Once
+same semantics as clojure.walk.

with-fresh-collected

Continues navigating on the given path with the collected vals reset to []. Once
 navigation leaves the scope of with-fresh-collected, the collected vals revert
-to what they were before.

with-inline-debug

macro

(with-inline-debug & body)

wrap-dynamic-nav

(wrap-dynamic-nav f)
\ No newline at end of file +to what they were before.

with-inline-debug

macro

(with-inline-debug & body)

wrap-dynamic-nav

(wrap-dynamic-nav f)
\ No newline at end of file diff --git a/com.rpl.specter.protocols.html b/com.rpl.specter.protocols.html index 7cbb9f8..f9e0400 100644 --- a/com.rpl.specter.protocols.html +++ b/com.rpl.specter.protocols.html @@ -1,6 +1,6 @@ -com.rpl.specter.protocols documentation

com.rpl.specter.protocols

Collector

protocol

Do not use this protocol directly. All navigators must be created using
+com.rpl.specter.protocols documentation

com.rpl.specter.protocols

Collector

protocol

Do not use this protocol directly. All navigators must be created using
 macros in com.rpl.specter namespace.

members

collect-val

(collect-val this structure)

ImplicitNav

protocol

members

implicit-nav

(implicit-nav obj)

RichNavigator

protocol

Do not use this protocol directly. All navigators must be created using macros
 in com.rpl.specter namespace.

members

select*

(select* this vals structure next-fn)
An implementation of `select*` must call `next-fn` on each
 subvalue of `structure`. The result of `select*` is specified
diff --git a/com.rpl.specter.transients.html b/com.rpl.specter.transients.html
index c65ce08..5a576d9 100644
--- a/com.rpl.specter.transients.html
+++ b/com.rpl.specter.transients.html
@@ -1,6 +1,6 @@
 
-com.rpl.specter.transients documentation

com.rpl.specter.transients

END!

Navigates to an empty (persistent) vector at the end of a transient vector.
+com.rpl.specter.transients documentation

com.rpl.specter.transients

END!

Navigates to an empty (persistent) vector at the end of a transient vector.
 

FIRST!

Navigates to the first element of a transient vector.
 

keypath!

Navigates to the specified key of a transient collection,
 navigating to nil if it doesn't exist.

LAST!

Navigates to the last element of a transient vector.
diff --git a/com.rpl.specter.zipper.html b/com.rpl.specter.zipper.html
index a2e4bdd..56cfc8e 100644
--- a/com.rpl.specter.zipper.html
+++ b/com.rpl.specter.zipper.html
@@ -1,6 +1,6 @@
 
-com.rpl.specter.zipper documentation

com.rpl.specter.zipper

find-first

Navigate the zipper to the first element
+com.rpl.specter.zipper documentation

com.rpl.specter.zipper

find-first

Navigate the zipper to the first element
 in the structure matching predfn. A linear scan
 is done using NEXT to find the element.

INNER-LEFT

Navigate to the empty subsequence directly to the
 left of this element.

INNER-RIGHT

Navigate to the empty subsequence directly to the
diff --git a/index.html b/index.html
index 7aa470d..ba91f6e 100644
--- a/index.html
+++ b/index.html
@@ -1,3 +1,3 @@
 
-Specter 1.1.3

Specter 1.1.3

Installation

To install, add the following dependency to your project or build file:

[com.rpl/specter "1.1.3"]

Namespaces

com.rpl.specter

Public variables and functions:

\ No newline at end of file +Specter 1.1.3

Specter 1.1.3

Installation

To install, add the following dependency to your project or build file:

[com.rpl/specter "1.1.3"]

Namespaces

com.rpl.specter

Public variables and functions:

\ No newline at end of file