Args are the children nodes to the current node.
Flags store metadata/primitive data in an Iridium node. These nodes cannot store other Iridium S-Expressions.
Tag specifics the S-Expression Type.
This method is used to squish the Iridium Code into an array which can be easily stored on disk.
Nested Array of Iridium S-Expressions.
Optional
space: number
Remarks
EnvBinding represents an environment binding.
Structure
FLAG(NAME)
: The name of the binding.FLAG(ASW)
: Always Safe Write. Bindings like argument bindings are declared as ASWs as writing to them is always safe in any scope.FLAG(JSARG | JSRESTARG | JSLET | JSCONST | JSVAR)
: A JS binding can be one of this type JSEnvBindingFlags.FLAG(IDX)
: A unique index is assigned to each binding.FLAG(REFIDX)
: Reference IDX refers to the offset of the binding on the stack frame.FLAG(Scope)
: The scope number of the identifier, useful during analysis and code generation.FLAG(ParentScope)
: The scope number of the enclosing lexical scope.FLAG(NEXT)
: The REFIDX of the NEXT lexical variable.