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.
StaticdumpGiven a serialized array of Iridium code, pretty prints it for debugging
The array produced by serialize()
Indicating the traversal depth
An object to track the current index during recursion
Remarks
When instantiating an object of a JSClass, if the class happens to use private methods, we must register a brand (a unique symbol) with it. This brand check ensures that the private symbol/method being referenced is valid in the scope. If the brand of the object instance and the private method being referenced fail the brand check, a runtime error is thrown.
One may imagine this to be a way to push the class encapsulation check to the runtime; contrary to languages like Java/C++ where it might be a static compile time check.
Action
Trigger
Further
This instruction is added at the end of the class property init closure (a closure used to initialize the fields of a new object instance). This may be skipped, if there are no private symbols or the check can be proved to be redundant statically.
Structure
ARG(obj): The object instance.ARG(homeObj): The home object.