Liking cljdoc? Tell your friends :D

std.lang.base.emit-assign


+assign-types+clj


emit-def-assignclj

(emit-def-assign _ {:keys [raw] :as props} [_ & args] grammar mopts)

emits a declare expression

emits a declare expression
raw docstring

emit-def-assign-inlineclj

(emit-def-assign-inline sym
                        [link & input]
                        grammar
                        {:keys [lang book snapshot] :as mopts})

assigns an inline form directly

assigns an inline form directly
raw docstring

test-assign-emitclj

(test-assign-emit form grammar mopts)

emit assign forms

(assign/test-assign-loop (list 'var 'a := (with-meta () {:assign/fn (fn [sym] (list sym :as [1 2 3]))})) +grammar+ {}) => "(a :as [1 2 3])"

(assign/test-assign-loop (list 'var 'a := (with-meta '(sym :as [1 2 3]) {:assign/template 'sym})) +grammar+ {}) => "(a :as [1 2 3])"

(assign/test-assign-loop (list 'var 'a := (with-meta '(x.core/identity-fn 1) {:assign/inline 'x.core/identity-fn})) +grammar+ {:lang :x :snapshot +snap+}) => "(do* (var a := 1))"

(assign/test-assign-loop (list 'var 'a := (with-meta '(x.core/complex-fn 1) {:assign/inline 'x.core/complex-fn})) +grammar+ {:lang :x :snapshot +snap+}) => "(do* (var a := 1) (:= a (+ a 1)))"

emit assign forms

(assign/test-assign-loop (list 'var 'a := (with-meta ()
                                            {:assign/fn (fn [sym]
                                                          (list sym :as [1 2 3]))}))
                         +grammar+
                         {})
=> "(a :as [1 2 3])"

(assign/test-assign-loop (list 'var 'a := (with-meta '(sym :as [1 2 3])
                                            {:assign/template 'sym}))
                         +grammar+
                         {})
=> "(a :as [1 2 3])"

(assign/test-assign-loop (list 'var 'a := (with-meta '(x.core/identity-fn 1)
                                            {:assign/inline 'x.core/identity-fn}))
                         +grammar+
                         {:lang :x
                          :snapshot +snap+})
=> "(do* (var a := 1))"

(assign/test-assign-loop (list 'var 'a := (with-meta '(x.core/complex-fn 1)
                                            {:assign/inline 'x.core/complex-fn}))
                         +grammar+
                         {:lang :x
                          :snapshot +snap+})
=> "(do* (var a := 1) (:= a (+ a 1)))"
raw docstring

test-assign-loopclj

(test-assign-loop form grammar mopts)

emit do

emit do
raw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close