CLJS
basic-lein-cljs.core
cljs.analyzer
cljs.compiler
CLJS
cljs.core
CLJS
cljs.core.async
CLJS
cljs.core.async.impl.buffers
CLJS
cljs.core.async.impl.channels
CLJS
cljs.core.async.impl.dispatch
CLJS
cljs.core.async.impl.ioc-helpers
CLJS
cljs.core.async.impl.protocols
CLJS
cljs.core.async.impl.timers
cljs.env
cljs.externs
CLJS
cljs.js
cljs.js-deps
CLJS
cljs.pprint
CLJS
cljs.reader
CLJS
cljs.repl
cljs.source-map
CLJS
cljs.source-map
cljs.source-map.base64
CLJS
cljs.source-map.base64
cljs.source-map.base64-vlq
CLJS
cljs.source-map.base64-vlq
CLJS
cljs.spec.alpha
CLJS
cljs.spec.gen.alpha
cljs.tagged-literals
CLJS
cljs.tools.reader
CLJS
cljs.tools.reader.edn
CLJS
cljs.tools.reader.impl.commons
CLJS
cljs.tools.reader.impl.errors
CLJS
cljs.tools.reader.impl.inspect
CLJS
cljs.tools.reader.impl.utils
CLJS
cljs.tools.reader.reader-types
cljs.util
clojure.core
clojure.core.async
clojure.core.async.impl.buffers
clojure.core.async.impl.channels
clojure.core.async.impl.concurrent
clojure.core.async.impl.dispatch
clojure.core.async.impl.exec.threadpool
clojure.core.async.impl.ioc-macros
clojure.core.async.impl.mutex
clojure.core.async.impl.protocols
clojure.core.async.impl.timers
clojure.core.cache
clojure.core.memoize
clojure.core.protocols
clojure.core.server
clojure.data.json
clojure.data.priority-map
clojure.edn
clojure.instant
clojure.java.io
clojure.main
clojure.pprint
clojure.reflect
clojure.repl
clojure.set
CLJS
clojure.set
clojure.spec.alpha
clojure.spec.gen.alpha
clojure.string
CLJS
clojure.string
clojure.tools.analyzer
clojure.tools.analyzer.ast
clojure.tools.analyzer.env
clojure.tools.analyzer.jvm
clojure.tools.analyzer.jvm.utils
clojure.tools.analyzer.passes
clojure.tools.analyzer.passes.add-binding-atom
clojure.tools.analyzer.passes.cleanup
clojure.tools.analyzer.passes.constant-lifter
clojure.tools.analyzer.passes.elide-meta
clojure.tools.analyzer.passes.emit-form
clojure.tools.analyzer.passes.jvm.analyze-host-expr
clojure.tools.analyzer.passes.jvm.annotate-host-info
clojure.tools.analyzer.passes.jvm.annotate-loops
clojure.tools.analyzer.passes.jvm.annotate-tag
clojure.tools.analyzer.passes.jvm.box
clojure.tools.analyzer.passes.jvm.classify-invoke
clojure.tools.analyzer.passes.jvm.constant-lifter
clojure.tools.analyzer.passes.jvm.emit-form
clojure.tools.analyzer.passes.jvm.fix-case-test
clojure.tools.analyzer.passes.jvm.infer-tag
clojure.tools.analyzer.passes.jvm.validate
clojure.tools.analyzer.passes.jvm.validate-loop-locals
clojure.tools.analyzer.passes.jvm.validate-recur
clojure.tools.analyzer.passes.jvm.warn-on-reflection
clojure.tools.analyzer.passes.source-info
clojure.tools.analyzer.passes.trim
clojure.tools.analyzer.passes.uniquify
clojure.tools.analyzer.passes.warn-earmuff
clojure.tools.analyzer.utils
clojure.tools.cli
clojure.tools.namespace.dependency
clojure.tools.namespace.file
clojure.tools.namespace.find
clojure.tools.namespace.parse
clojure.tools.namespace.track
clojure.tools.reader
clojure.tools.reader.default-data-readers
clojure.tools.reader.impl.commons
clojure.tools.reader.impl.errors
clojure.tools.reader.impl.inspect
clojure.tools.reader.impl.utils
clojure.tools.reader.reader-types
clojure.walk
CLJS
clojure.walk
dynadoc.aliases
dynadoc.common
dynadoc.core
CLJS
dynadoc.core
dynadoc.example
CLJS
dynadoc.state
dynadoc.static
dynadoc.utils
dynadoc.watch
eval-soup.clojail
eval-soup.core
CLJS
eval-soup.core
CLJS
figwheel.client
CLJS
figwheel.client.file-reloading
CLJS
figwheel.client.heads-up
CLJS
figwheel.client.socket
CLJS
figwheel.client.utils
hawk.core
hawk.watcher
html-soup.core
ns-tracker.core
ns-tracker.dependency
ns-tracker.nsdeps
ns-tracker.parse
CLJS
oakcljs.tools.reader
CLJS
oakcljs.tools.reader.impl.commons
CLJS
oakcljs.tools.reader.impl.errors
CLJS
oakcljs.tools.reader.impl.inspect
CLJS
oakcljs.tools.reader.impl.utils
CLJS
oakcljs.tools.reader.reader-types
oakclojure.tools.reader
oakclojure.tools.reader.default-data-readers
oakclojure.tools.reader.impl.commons
oakclojure.tools.reader.impl.errors
oakclojure.tools.reader.impl.inspect
oakclojure.tools.reader.impl.utils
oakclojure.tools.reader.reader-types
org.httpkit.server
CLJS
paren-soup.console
CLJS
paren-soup.core
CLJS
paren-soup.dom
CLJS
paren-soup.instarepl
CLJS
reagent.core
CLJS
reagent.debug
CLJS
reagent.dom
CLJS
reagent.impl.batching
CLJS
reagent.impl.component
CLJS
reagent.impl.template
CLJS
reagent.impl.util
CLJS
reagent.ratom
ring.middleware.content-type
ring.middleware.file
ring.middleware.head
ring.middleware.keyword-params
ring.middleware.params
ring.middleware.reload
ring.middleware.resource
ring.util.codec
ring.util.io
ring.util.mime-type
ring.util.parsing
ring.util.request
ring.util.response
ring.util.time
rum.core
CLJS
rum.core
rum.cursor
rum.derived-atom
rum.server-render
rum.util
sablono.compiler
CLJS
sablono.core
sablono.normalize
sablono.util
tag-soup.core

cljs.core.async

(<! port)

takes a val from port. Must be called inside a (go ...) block. Will return nil if closed. Will park if nothing is available. Returns true unless port is already closed

(>! port val)

puts a val into port. nil values are not allowed. Must be called inside a (go ...) block. Will park if no buffer space is available. Returns true unless port is already closed.

Mult

Methods in this protocol

Mux

Methods in this protocol

Pub

Methods in this protocol

(admix mix ch)

Adds ch as an input to the mix

(admix* m ch)

Part of the Mix protocol

(alts! ports & {:as opts})

Completes at most one of several channel operations. Must be called inside a (go ...) block. ports is a vector of channel endpoints, which can be either a channel to take from or a vector of [channel-to-put-to val-to-put], in any combination. Takes will be made as if by <!, and puts will be made as if by >!. Unless the :priority option is true, if more than one port operation is ready a non-deterministic choice will be made. If no operation is ready and a :default value is supplied, [default-val :default] will be returned, otherwise alts! will park until the first operation to become ready completes. Returns [val port] of the completed operation, where val is the value taken for takes, and a boolean (true unless already closed, as per put!) for puts. opts are passed as :key val ... Supported options: :default val - the value to use if none of the operations are immediately ready :priority true - (default nil) when true, the operations will be tried in order. Note: there is no guarantee that the port exps or val exprs will be used, nor in what order should they be, so they should not be depended upon for side effects.

(buffer n)

Returns a fixed buffer of size n. When full, puts will block/park.

(chan)

(chan buf-or-n)

(chan buf-or-n xform)

(chan buf-or-n xform ex-handler)

Creates a channel with an optional buffer, an optional transducer (like (map f), (filter p) etc or a composition thereof), and an optional exception handler. If buf-or-n is a number, will create and use a fixed buffer of that size. If a transducer is supplied a buffer must be specified. ex-handler must be a fn of one argument - if an exception occurs during transformation it will be called with the thrown value as an argument, and any non-nil return value will be placed in the channel.

(do-alts fret ports opts)

returns derefable [val port] if immediate, nil if enqueued

(dropping-buffer n)

Returns a buffer of size n. When full, puts will complete but val will be dropped (no transfer).

(filter< p ch)

(filter< p ch buf-or-n)

Deprecated - this function will be removed. Use transducer instead

(filter> p ch)

Deprecated - this function will be removed. Use transducer instead

(into coll ch)

Returns a channel containing the single (collection) result of the items taken from the channel conjoined to the supplied collection. ch must close before into produces a result.

(map f chs)

(map f chs buf-or-n)

Takes a function and a collection of source channels, and returns a channel which contains the values produced by applying f to the set of first items taken from each source channel, followed by applying f to the set of second items from each channel, until any one of the channels is closed, at which point the output channel will be closed. The returned channel will be unbuffered by default, or a buf-or-n can be supplied

(map< f ch)

Deprecated - this function will be removed. Use transducer instead

(map> f ch)

Deprecated - this function will be removed. Use transducer instead

(mapcat< f in)

(mapcat< f in buf-or-n)

Deprecated - this function will be removed. Use transducer instead

(mapcat> f out)

(mapcat> f out buf-or-n)

Deprecated - this function will be removed. Use transducer instead

(merge chs)

(merge chs buf-or-n)

Takes a collection of source channels and returns a channel which contains all values taken from them. The returned channel will be unbuffered by default, or a buf-or-n can be supplied. The channel will close after all the source channels have closed.

(mix out)

Creates and returns a mix of one or more input channels which will be put on the supplied out channel. Input sources can be added to the mix with 'admix', and removed with 'unmix'. A mix supports soloing, muting and pausing multiple inputs atomically using 'toggle', and can solo using either muting or pausing as determined by 'solo-mode'. Each channel can have zero or more boolean modes set via 'toggle': :solo - when true, only this (ond other soloed) channel(s) will appear in the mix output channel. :mute and :pause states of soloed channels are ignored. If solo-mode is :mute, non-soloed channels are muted, if :pause, non-soloed channels are paused. :mute - muted channels will have their contents consumed but not included in the mix :pause - paused channels will not have their contents consumed (and thus also not included in the mix)

(mult ch)

Creates and returns a mult(iple) of the supplied channel. Channels containing copies of the channel can be created with 'tap', and detached with 'untap'. Each item is distributed to all taps in parallel and synchronously, i.e. each tap must accept before the next item is distributed. Use buffering/windowing to prevent slow taps from holding up the mult. Items received when there are no taps get dropped. If a tap puts to a closed channel, it will be removed from the mult.

(muxch* _)

Part of the Mux protocol

(offer! port val)

Puts a val into port if it's possible to do so immediately. nil values are not allowed. Never blocks. Returns true if offer succeeds.

(onto-chan ch coll)

(onto-chan ch coll close?)

Puts the contents of coll into the supplied channel. By default the channel will be closed after the items are copied, but can be determined by the close? parameter. Returns a channel which will close after the items are copied.

(partition n ch)

(partition n ch buf-or-n)

Deprecated - this function will be removed. Use transducer instead

(partition-by f ch)

(partition-by f ch buf-or-n)

Deprecated - this function will be removed. Use transducer instead

(pipe from to)

(pipe from to close?)

Takes elements from the from channel and supplies them to the to channel. By default, the to channel will be closed when the from channel closes, but can be determined by the close? parameter. Will stop consuming the from channel if the to channel closes

(pipeline n to xf from)

(pipeline n to xf from close?)

(pipeline n to xf from close? ex-handler)

Takes elements from the from channel and supplies them to the to channel, subject to the transducer xf, with parallelism n. Because it is parallel, the transducer will be applied independently to each element, not across elements, and may produce zero or more outputs per input. Outputs will be returned in order relative to the inputs. By default, the to channel will be closed when the from channel closes, but can be determined by the close? parameter. Will stop consuming the from channel if the to channel closes. Note this is supplied for API compatibility with the Clojure version. Values of N > 1 will not result in actual concurrency in a single-threaded runtime.

(pipeline-async n to af from)

(pipeline-async n to af from close?)

Takes elements from the from channel and supplies them to the to channel, subject to the async function af, with parallelism n. af must be a function of two arguments, the first an input value and the second a channel on which to place the result(s). af must close! the channel before returning. The presumption is that af will return immediately, having launched some asynchronous operation whose completion/callback will manipulate the result channel. Outputs will be returned in order relative to the inputs. By default, the to channel will be closed when the from channel closes, but can be determined by the close? parameter. Will stop consuming the from channel if the to channel closes.

(poll! port)

Takes a val from port if it's possible to do so immediately. Never blocks. Returns value if successful, nil otherwise.

(promise-chan)

(promise-chan xform)

(promise-chan xform ex-handler)

Creates a promise channel with an optional transducer, and an optional exception-handler. A promise channel can take exactly one value that consumers will receive. Once full, puts complete but val is dropped (no transfer). Consumers will block until either a value is placed in the channel or the channel is closed. See chan for the semantics of xform and ex-handler.

(pub ch topic-fn)

(pub ch topic-fn buf-fn)

Creates and returns a pub(lication) of the supplied channel, partitioned into topics by the topic-fn. topic-fn will be applied to each value on the channel and the result will determine the 'topic' on which that value will be put. Channels can be subscribed to receive copies of topics using 'sub', and unsubscribed using 'unsub'. Each topic will be handled by an internal mult on a dedicated channel. By default these internal channels are unbuffered, but a buf-fn can be supplied which, given a topic, creates a buffer with desired properties. Each item is distributed to all subs in parallel and synchronously, i.e. each sub must accept before the next item is distributed. Use buffering/windowing to prevent slow subs from holding up the pub. Items received when there are no matching subs get dropped. Note that if buf-fns are used then each topic is handled asynchronously, i.e. if a channel is subscribed to more than one topic it should not expect them to be interleaved identically with the source.

(put! port val)

(put! port val fn1)

(put! port val fn1 on-caller?)

Asynchronously puts a val into port, calling fn0 (if supplied) when complete. nil values are not allowed. Will throw if closed. If on-caller? (default true) is true, and the put is immediately accepted, will call fn0 on calling thread. Returns nil.

(reduce f init ch)

f should be a function of 2 arguments. Returns a channel containing the single result of applying f to init and the first item from the channel, then applying f to that result and the 2nd item, etc. If the channel closes without yielding items, returns init and f is not called. ch must close before reduce produces a result.

(remove< p ch)

(remove< p ch buf-or-n)

Deprecated - this function will be removed. Use transducer instead

(remove> p ch)

Deprecated - this function will be removed. Use transducer instead

(sliding-buffer n)

Returns a buffer of size n. When full, puts will complete, and be buffered, but oldest elements in buffer will be dropped (not transferred).

(solo-mode mix mode)

Sets the solo mode of the mix. mode must be one of :mute or :pause

(solo-mode* m mode)

Part of the Mix protocol

(split p ch)

(split p ch t-buf-or-n f-buf-or-n)

Takes a predicate and a source channel and returns a vector of two channels, the first of which will contain the values for which the predicate returned true, the second those for which it returned false. The out channels will be unbuffered by default, or two buf-or-ns can be supplied. The channels will close after the source channel has closed.

(sub p topic ch)

(sub p topic ch close?)

Subscribes a channel to a topic of a pub. By default the channel will be closed when the source closes, but can be determined by the close? parameter.

(sub* p v ch close?)

Part of the Pub protocol

(take n ch)

(take n ch buf-or-n)

Returns a channel that will return, at most, n items from ch. After n items have been returned, or ch has been closed, the return chanel will close. The output channel is unbuffered by default, unless buf-or-n is given.

(take! port fn1)

(take! port fn1 on-caller?)

Asynchronously takes a val from port, passing to fn1. Will pass nil if closed. If on-caller? (default true) is true, and value is immediately available, will call fn1 on calling thread. Returns nil.

(tap mult ch)

(tap mult ch close?)

Copies the mult source onto the supplied channel. By default the channel will be closed when the source closes, but can be determined by the close? parameter.

(tap* m ch close?)

Part of the Mult protocol

(timeout msecs)

Returns a channel that will close after msecs

(to-chan coll)

Creates and returns a channel which contains the contents of coll, closing when exhausted.

(toggle mix state-map)

Atomically sets the state(s) of one or more channels in a mix. The state map is a map of channels -> channel-state-map. A channel-state-map is a map of attrs -> boolean, where attr is one or more of :mute, :pause or :solo. Any states supplied are merged with the current state. Note that channels can be added to a mix via toggle, which can be used to add channels in a particular (e.g. paused) state.

(toggle* m state-map)

Part of the Mix protocol

(transduce xform f init ch)

async/reduces a channel with a transformation (xform f). Returns a channel containing the result. ch must close before transduce produces a result.

(unblocking-buffer? buff)

Returns true if a channel created with buff will never block. That is to say, puts into this buffer will never cause the buffer to be full.

(unique ch)

(unique ch buf-or-n)

Deprecated - this function will be removed. Use transducer instead

(unmix mix ch)

Removes ch as an input to the mix

(unmix* m ch)

Part of the Mix protocol

(unmix-all mix)

removes all inputs from the mix

(unmix-all* m)

Part of the Mix protocol

(unsub p topic ch)

Unsubscribes a channel from a topic of a pub

(unsub* p v ch)

Part of the Pub protocol

(unsub-all p)

(unsub-all p topic)

Unsubscribes all channels from a pub, or a topic of a pub

(untap mult ch)

Disconnects a target channel from a mult

(untap* m ch)

Part of the Mult protocol

(untap-all mult)

Disconnects all target channels from a mult

(untap-all* m)

Part of the Mult protocol