io.pedestal.http.request.lazy
classify-keys
(classify-keys [k v])
Classify key-value pair based on whether its value is delayed, realized, or normal.
derefing-map-entry
(derefing-map-entry kv)
(derefing-map-entry k v)
Create a new MapEntry-like object, but allow for values to be transparently derefed when accessed.
Does not provide the same level of ‘equivalency’ checking that MapEntry does. Use ‘seq’ to get a realized pair of key-value.
lazy-request
(lazy-request m)
Return a LazyRequest map that transparently derefs values that are delays.
Example: (:foo (lazy-request {:foo (delay :bar)})) ;; => :bar
LazyRequest’s are value-equal to other LazyRequest’s that share the same underlying map, but not to raw maps. Use raw
or realized
to return plain maps of original key-vals or realized key-vals, respectively.
LazyDatastructure
protocol
Utilities for manipulating/realizing lazy data structures.
members
touch
(touch this)
Realize all portions of the underlying data structure. Returns this.
RawAccess
protocol
Utilities for exposing raw access to advanced data structures that layer new semantics onto simpler types.
members
raw
(raw this)
Return the raw data structure underlying a more advanced wrapper