StaticBStaticCStaticclassesStaticcontrolStaticextrasStaticIStaticKStaticnativeStaticQuestStaticSStaticWDeclare a new term If the first argument is an Alias, it is added as is. Otherwise, a new Alias or Native term (depending on impl type) is created. If note is not provided and this.annotate is true, an automatic note is generated.
If impl is a function, it should have signature (Expr) => ... => Expr (see typedef Partial at top of expr.js)
Optionalimpl: string | Expr | ((arg: Expr) => Invocation)Optionaloptions: string | AddOptionsOptionalarity?: numberOptionalcanonize?: booleanOptionalfancy?: stringOptionalnote?: stringchainable
Declare and remove multiple terms at once term=impl adds term term= removes term
chainable
Export term declarations for use in bulkAdd(). Currently only Alias terms are serialized.
ExperimentalDeclare a new term if it is not known, otherwise just allow it. Currently only used by quests. Use with caution, this function may change its signature, behavior, or even be removed in the future.
Optionaloptions: ParseOptions = {}Optionalallow?: stringOptionalcanonize?: booleanOptionalenv?: { [key: string]: Expr }Optionallambdas?: booleanOptionalnumbers?: booleanOptionalscope?: objectParse a single line of source code, without splitting it into declarations. Internal, always use parse() instead.
S(KI)I
Optionaloptions: ParseOptions = {}Optionalallow?: stringOptionalcanonize?: booleanOptionalenv?: { [key: string]: Expr }Optionallambdas?: booleanOptionalnumbers?: booleanOptionalscope?: objectparsed expression
Restrict the interpreter to given terms. Terms prepended with '+' will be added and terms preceeded with '-' will be removed.
chainable
StaticchurchStaticvarsCreate a proxy object that generates variables on demand, with names corresponding to the property accessed. Different invocations will return distinct variables, even if with the same name.
Param: options