Liking cljdoc? Tell your friends :D

meander.syntax.beta


any-form?clj/s

(any-form? x)

true if x is a symbol beginning with _.

true if x is a symbol beginning with _.
sourceraw docstring

any-node?clj/s

(any-node? x)
source

childrenclj/smultimethod

(children node)

Return a sequential? of all children of node.

Return a sequential? of all children of node.
sourceraw docstring

defsyntaxclj/s≠macro

clj
(defsyntax name docstring? meta? arglist & body)
cljs
(defsyntax &form &env & args)

EXPERIMENTAL Like defn but for defining new pattern syntax by extending the parser. When parsing, if a seq is encountered starting with a symbol which can be resolved to the created var then the tail of the seq is applied to the var and the result is parsed.

Example

(defsyntax re [regex] `(~'pred (fn [s#] (and (string? s#) (re-matches ~regex s#)))))

(require '[meander.match.beta :as r.match])

(r.match/match "elf" (re #"[a-z]+") :okay!) ;; => :okay

EXPERIMENTAL Like defn but for defining new pattern syntax by
extending the parser. When parsing, if a seq is encountered starting
with a symbol which can be resolved to the created var then the tail
of the seq is applied to the var and the result is parsed.

Example

(defsyntax re [regex]
  `(~'pred
    (fn [s#]
      (and (string? s#)
           (re-matches ~regex s#)))))

(require '[meander.match.beta :as r.match])

(r.match/match "elf"
  (re #"[a-z]+")
  :okay!)
;; => :okay
source (clj)source (cljs)raw docstring

expand-seqclj/smultimethod

(expand-seq seq env)
source

ground?clj/smultimethod

(ground? node)

true if node is ground i.e. it contains no variables or is not a match operator.

true if node is ground i.e. it contains no variables or is not a
match operator.
sourceraw docstring

logic-variable-form?clj/s

(logic-variable-form? x)

true if x is in the form of a logic variable i.e. a simple symbol with a name beginning with ?.

true if x is in the form of a logic variable i.e. a simple symbol
with a name beginning with \?.
sourceraw docstring

logic-variablesclj/s

(logic-variables node)

Return all :lvr nodes in node.

Return all :lvr nodes in node.
sourceraw docstring

lvr-node?clj/s

(lvr-node? x)
source

max-lengthclj/smultimethod

(max-length node)

The maximum possible length the pattern described by node can be.

The maximum possible length the pattern described by node can be.
sourceraw docstring

memory-variable-form?clj/s

(memory-variable-form? x)

true if x is in the form of a memory variable i.e. a simple symbol with a name beginning with !.

true if x is in the form of a memory variable i.e. a simple symbol
with a name beginning with \!.
sourceraw docstring

memory-variablesclj/s

(memory-variables node)

Return all :mvr nodes in node.

Return all :mvr nodes in node.
sourceraw docstring

min-lengthclj/smultimethod

(min-length node)

The maximum possible length the pattern described by node can be.

The maximum possible length the pattern described by node can be.
sourceraw docstring

mvr-node?clj/s

(mvr-node? x)
source

parseclj/s

(parse x)
(parse x env)
source

parse-js-valueclj/s

(parse-js-value js-value env)
source

proper-subnodesclj/s

(proper-subnodes node)

Return the all subnodes in node excluding node.

Return the all subnodes in node excluding node.
sourceraw docstring

re-matches?clj/s

(re-matches? re s)
source (clj)source (cljs)

search?clj/smultimethod

(search? node)

true if node represents a search, false otherwise.

true if node represents a search, false otherwise.
sourceraw docstring

subnodesclj/s

(subnodes node)

Return a sequence of all subnodes of node.

Return a sequence of all subnodes of node.
sourceraw docstring

tagclj/s

(tag node)
source

unparseclj/smultimethod

(unparse node)

In pre-order fashion rewrite a node into a Clojure form.

In pre-order fashion rewrite a node into a Clojure form.
sourceraw docstring

variable-length?clj/s

(variable-length? node)

true if node may have a variable length.

true if node may have a variable length.
sourceraw docstring

variable-node?clj/s

(variable-node? x)
source

variablesclj/s

(variables node)

Return all :lvr and :mvr nodes in node.

Return all :lvr and :mvr nodes in node.
sourceraw docstring

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

× close