Liking cljdoc? Tell your friends :D

meander.match.ir.delta

Functions for working with the Meander's match compiler intermediate representation (IR).

Functions for working with the Meander's match compiler
intermediate representation (IR).
raw docstring

branch?clj/s

(branch? node)

true if node has any children, false otherwise.

true if node has any children, false otherwise.
sourceraw docstring

check?clj/s

(check? x)
source

childrenclj/s

(children node)

Return the child nodes of node, a sequence of ::node.

Return the child nodes of node, a sequence of ::node.
sourceraw docstring

compileclj/s

(compile ir fail kind)
source

compile*clj/smultimethod

(compile* ir fail kind)
source

def-remove-unusedclj/s

(def-remove-unused node)
source

defopclj/s≠macro

clj
(defop symbol op params & body)
cljs
(defop &form &env symbol op params & body)
source (clj)source (cljs)

drop-formclj/s

(drop-form n target-form kind)
source

FAILclj/s

Special value signaling a match failure. Generated code will often utilize this value as for control flow purposes.

Special value signaling a match failure. Generated code will often
utilize this value as for control flow purposes.
sourceraw docstring

fail-formclj/s

(fail-form kind)

Returns (list FAIL) if kind is :search,FAIL otherwise. This is used when compiling :def nodes to ensure the correct type of data is returned to code compiled for :call nodes.

Returns `(list FAIL) if kind is :search, `FAIL otherwise. This is
used when compiling :def nodes to ensure the correct type of data is
returned to code compiled for :call nodes.
sourceraw docstring

fail?clj/s

(fail? x)
source

heightclj/s

(height node)

Return the height of node.

Return the height of node.
sourceraw docstring

js-array-equals-formclj/s

(js-array-equals-form a b)

Form used to test if two arrays a and b are equal in ClojureScript.

Form used to test if two arrays a and b are equal in
ClojureScript.
sourceraw docstring

make-nodeclj/s

(make-node node new-children)
source

mergeclj/smultimethod

(merge node-a node-b)

Attempt to merge node-a and node-b. Returns the result of the merge if the merge succeeds. Returns a :branch node with :arms node-a and node-b if not.

Attempt to merge node-a and node-b. Returns the result of the merge
if the merge succeeds. Returns a :branch node with :arms node-a and
node-b if not.
sourceraw docstring

node?clj/s

(node? x)

true if x is a ::node, false otherwise.

true if x is a ::node, false otherwise.
sourceraw docstring

nodesclj/s

(nodes node)

Return all subnodes of node, a sequence of ::node.

Return all subnodes of node, a sequence of ::node.
sourceraw docstring

opclj/s

(op node)

Return the ::op of node.

Return the ::op of node.
sourceraw docstring

op-bindclj/s

(op-bind symbol value then)
source

op-branchclj/s

(op-branch arms)
source

op-checkclj/s

(op-check test target then)
source

op-check-arrayclj/s

(op-check-array target then)
source

op-check-array-equalsclj/s

(op-check-array-equals target-1 target-2 then)
source

op-check-booleanclj/s

(op-check-boolean test then)
source

op-check-boundsclj/s

(op-check-bounds target length kind then)
source

op-check-emptyclj/s

(op-check-empty target then)
source

op-check-equalclj/s

(op-check-equal target-1 target-2 then)
source

op-check-litclj/s

(op-check-lit target value then)
source

op-check-mapclj/s

(op-check-map target then)
source

op-check-seqclj/s

(op-check-seq target then)
source

op-check-setclj/s

(op-check-set target then)
source

op-check-vectorclj/s

(op-check-vector target then)
source

op-dropclj/s

(op-drop target n kind)
source

op-evalclj/s

(op-eval form)
source

op-failclj/s

(op-fail)
source

op-fail?clj/s

(op-fail? x)
source

op-findclj/s

(op-find symbol value body)
source

op-loadclj/s

(op-load id)
source

op-lookupclj/s

(op-lookup target key)
source

op-lvr-bindclj/s

(op-lvr-bind symbol target then)
source

op-lvr-checkclj/s

(op-lvr-check symbol target then)
source

op-mut-bindclj/s

(op-mut-bind symbol target then)
source

op-mvr-appendclj/s

(op-mvr-append symbol target then)
source

op-mvr-bindclj/s

(op-mvr-bind symbol target then)
source

op-mvr-initclj/s

(op-mvr-init symbol then)
source

op-nthclj/s

(op-nth target index)
source

op-passclj/s

(op-pass then)
source

op-plusclj/s

(op-plus input n m kind return-symbols body-fn then)
source

op-returnclj/s

(op-return value)
source

op-saveclj/s

(op-save id body-1 body-2)
source

(op-search symbol value body)
source

op-starclj/s

(op-star input n kind return-symbols body-fn then)
source

op-takeclj/s

(op-take target n kind)
source

op=clj/s

(op= node op)
source

postwalkclj/s

(postwalk f node)
source

prewalkclj/s

(prewalk f node)
source

rewriteclj/s

(rewrite node)
source

rewrite*clj/s

(rewrite* node)
source

rewrite-move-mvr-init-to-top-levelclj/s

(rewrite-move-mvr-init-to-top-level node)
source

run-findclj/s

(run-find space body-f fail-f)
source

run-star-js-arrayclj/s

(run-star-js-array coll rets n body-f then-f)
source

(run-star-js-array-search coll rets n body-f then-f)
source

run-star-seqclj/s

(run-star-seq coll rets n body-f then-f)
source

(run-star-seq-search coll rets n body-f then-f)
source

run-star-vecclj/s

(run-star-vec coll rets n body-f then-f)
source

(run-star-vec-search coll rets n body-f then-f)
source

take-formclj/s

(take-form n target-form kind)
source

walkclj/s

(walk inner outer node)
source

zipperclj/s

(zipper node)
source

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

× close