(target arg1 arg2)
/
as fully qualified varname^refer
- Refer another key in config^insert
or ^precat
- Insert before^append
or ^concat
- Insert after^replace
- Replace^merge
- Mergekeypin.core/defkey
option kwargs to attach metadata
:cmarg-meta
for argument config-map
:nfarg-meta
for argument not-found
:dkvar-meta
for key-definition varnetwork-port?
for network port 0 through 65535keypin.util/any?
- use clojure.core/any?
keypin.util/bool?
- use clojure.core/boolean?
keypin.util/fqvn?
- use clojure.core/qualified-symbol?
keypin.store/wait-if-stale
TimeoutException
on refresh timeout - just print to err insteadkeypin.store/make-dynamic-store-options
to build dynamic store optionskeypin.core/make-config-io
as a generic read/write utility for config fileskeypin.core/default-config-io-codecs
that users can update for other file typeskeypin.util/atom?
on clojure.lang.IAtom
interface (requires Clojure 1.7)keypin.core/make-key
arity from 4 to 1keypin.core/make-key
(hence, also in keypin.core/defkey
) via options
:pre-xform
to transform options before creating the key-definition:post-xform
to transform key-definition after it is createdkeypin.type/IStore
represents a config store
keypin.type/KeyAttributes
fn call looks up a store now, instead of delegating to lookup-fnjava.util.Map
and clojure.lang.IPersistentVector
- delegates to a lookup-fn callkeypin.store
for config-store enhancements
keypin.store/make-caching-store
- caching store wrapper for parsed/validated valueskeypin.store/make-dynamic-store
- dynamic/periodically refreshed configdefkey
-generated vars as if they were created using defn
deref
, i.e. @keydef
as arity-0 (keydef)
calljava.util.Map$Entry
methods
getValue()
: Invoked via (val k)
- same as arity-0 invocationsetValue(v)
: Throw UnsupportedOperationException
ArityException
on bad aritykeypin.util/str->fn
keypin.util/clojurize-subst
for symbol/keyword variable substitution in EDN data
"foo"
):bar
)keypin.util/str->var
is a var, then return as it iskeypin.util/symstr->any
to allow symbol or string interchangeably
any->var
and any->var->deref
lookup-keypath
keypin.MediaReader
)keypin.core
functions: read-config
, realize-config
and write-config
:info-logger
and :error-logger
:logger
that defaults to printing to *err*
keypin.util
ns: make-logger
and default-logger
[1 :second]
duration?
to detect a duration dynamicallyany->duration
of the EDN form [time unit-keyword]duration?
, dur-time
and dur-unit
fns to keypin.type/IDuration
protocolatom?
validator function for Clojure atoms"parent.filenames"
keypin.core/read-config
java.io.Writer
(besides java.io.OutputStream
):sysprop
:envvar
fqvn?
- Fully qualified var namevec?
- Vector of predicate-validated elementskeypin.PropertyFile
keypin.core/read-properties
and keypin.core/lookup-property
keypin.core/read-config
may now optionally skip variable substitution using kwarg :realize?
keypin.core/realize-config
for explicitly applying variable substitutionclojurize-data
to transform Java-based data structures to Clojure equivalentany->edn
now additionally transforms Java-based data structures to Clojure equivalentkeypin.PropertyFile
keypin.core/read-properties
and keypin.core/lookup-property
Iterable<String>
instead of List<String>
keypin.util
namespace${foo|bar|baz}
Can you improve this documentation?Edit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close