hara.lang
annex-current
added in 4.0
(annex-current)(annex-current ns)gets the current annex. May not exist
(annex/annex-current) => any?
annex:get
added in 4.0
(annex:get tag)(annex:get tag ns)gets the runtime associated with an annex
annex:restart-all
added in 4.0
(annex:restart-all)(annex:restart-all ns)stops and starts all annex runtimes
annex:start-all
added in 4.0
(annex:start-all)(annex:start-all ns)starts all the annex tags
as-lua
added in 4.0
(as-lua input)strip nils for lua expectations without changing collection shape
basic-typed-args
added in 4.0
(basic-typed-args args)typed args without grammar checks
(mapv (juxt meta identity) (basic-typed-args ’(:int i, :const :int j))) => ’[[{:- :int} i] [{:- :const :int} j]]
compile-module-specialization
added in 4.1
(compile-module-specialization descriptor)installs and compiles a specialized module descriptor
compile-module-specializations
added in 4.1
(compile-module-specializations descriptors)(compile-module-specializations descriptors opts)installs and compiles a batch of module specialization descriptors
default-library:reset
added in 4.0
(default-library:reset & [override])clears the default library, including all grammars
default-notify
added in 4.0
(default-notify)gets the default notify server
(notify/default-notify)
delete-entry!
added in 4.0
(delete-entry! lib {:keys [lang module section id], :as m})deletes an entry from the library
delete-module!
added in 4.0
(delete-module! lib lang module-id)deletes a module from the library
delete-modules!
added in 4.0
(delete-modules! lib lang module-ids)deletes a bunch of modules from the library
emit-as
added in 4.0
(emit-as lang forms & [meta])helper function for emitting multiple forms
emit-entry
added in 4.0
(emit-entry grammar entry {:keys [snapshot module emit], :as mopts})emits a given entry
emit-entry-deps
added in 4.0
(emit-entry-deps {:keys [lang module id], :as ptr} {:keys [library], :as meta})emits only the entry deps
emit-main
added in 4.0
(emit-main form grammar mopts)creates the raw emit with loop
(emit/emit-main ’(not (+ 1 2 3)) +grammar+ {}) => “!(1 + 2 + 3)”
emit-module
added in 4.0
(emit-module)(emit-module lang-or-rt)(emit-module lang-or-rt module-id)emits the entire module
emit-script
added in 4.0
(emit-script form {:keys [library lang emit], :as meta})emits a script with all dependencies
emit-symbol
added in 4.0
(emit-symbol lang sym & [mopts])emits string given symbol and grammar
emit-type-record
added in 4.0
(emit-type-record {:keys [modifiers symbol]})formats to standard
force-reload
added in 4.0
(force-reload ns lang)forces reloading of all dependent namespaces
get-book-raw
added in 4.0
(get-book-raw lib lang)gets the raw book, without merge
(b/list-entries (lib/get-book-raw +library+ :lua.redis)) => empty?
(b/list-entries (lib/get-book +library+ :lua.redis)) => coll?
(b/list-entries (lib/get-book +library+ :lua.nginx)) => coll?
get-sink
added in 4.0
(get-sink {:keys [sinks]} id)gets a sink from the notification app server
install-module-specialized!
added in 4.1
(install-module-specialized! lib lang source-id module-id options)installs a specialized module clone into the library
intern-macros
added in 4.0
(intern-macros lang ns & [module-id library merge-op])interns all macros from one namespace to another
lang-pointer
added in 4.0
(lang-pointer lang)(lang-pointer lang {:keys [module id], :as m})creates a lang pointer
lang-rt
added in 4.0
(lang-rt)(lang-rt lang)(lang-rt ns lang)getn the runtime contexts in a map
lib-module-entries
added in 4.0
(lib-module-entries)(lib-module-entries module-id)(lib-module-entries module-id {:keys [lang entry]})outputs module entries
lib-module-overview
added in 4.0
(lib-module-overview)(lib-module-overview module-id)(lib-module-overview module-id {:keys [lang entry]})lists all modules
lib-module-purge
added in 4.0
(lib-module-purge)(lib-module-purge module-id)(lib-module-purge module-id {:keys [lang]})purges modules
lib-module-unused
added in 4.0
(lib-module-unused)(lib-module-unused module-id)(lib-module-unused module-id {:keys [lang]})lists unused modules
module-entries
added in 4.0
(module-entries lang ns pred)gets all module entries
(w/module-entries :xtalk ’xt.lang.common-lib identity) => coll?
print-module
added in 4.0
(print-module)(print-module lang-or-rt)emits and prints out the module
(std.print/with-out-str (w/print-module (l/rt ’xt.lang.common-lib :xtalk))) => string?
ptr-setup-deps
added in 4.0
(ptr-setup-deps ptr)calls setup on a pointer and all dependencies
ptr-teardown-deps
added in 4.0
(ptr-teardown-deps ptr)calls teardown on pointer all dependencies
remove-listener
added in 4.0
(remove-listener notify id sink-key)removes a listener from the sink
rt-macro-opts
added in 4.0
(rt-macro-opts lang-or-runtime)creates the default macro-opts for a runtime
rt:inner
added in 4.0
(rt:inner)(rt:inner lang & [ns])gets the inner client for a shared runtime
rt:module-purge
added in 4.0
(rt:module-purge)(rt:module-purge lang-or-rt)purges the current workspace
rt:space
added in 4.0
(rt:space lang & [namespace])will return space if not found (no default space)
runtime-library
added in 4.0
(runtime-library)gets the current runtime (annex or default)
(runtime-library) => lib/library?
script
macro
added in 4.0
(script lang)(script lang module)(script lang module config)script macro
script+
macro
added in 4.0
(script+ [tag lang])(script+ [tag lang] config)macro for test extension setup
script-rt-stop
added in 4.0
(script-rt-stop)(script-rt-stop lang)(script-rt-stop lang ns)stops the current runtime
specialization-descriptor
added in 4.1
(specialization-descriptor {:keys [bindings compile-type descriptor lang runtime source source-module target target-module], :as m})normalizes a module specialization descriptor
sym-full
added in 3.0
(sym-full {:keys [module id]})(sym-full module id)creates a full symbol
sym-pair
added in 3.0
(sym-pair id)gets the symbol pair
(sym-pair ’L.core/identity) => ’L.core identity
tmpl-macro
added in 4.0
(tmpl-macro [s args {:keys [property optional vargs empty]}])forms for various argument types
with:emit
macro
added in 4.0
(with:emit & body)binds the top-level emit function to common/emit-fn
(emit/with:emit (common/emit-fn ’(not (+ 1 2 3)) +grammar+ {})) => “!(1 + 2 + 3)”
with:library
macro
added in 4.0
(with:library [lib] & body)injects a library as the default
with:print-all
macro
added in 4.0
(with:print-all & body)toggles print for all intermediate steps
with:rt-wrap
macro
added in 4.0
(with:rt-wrap [f] & body)wraps an additional function to the invoke function