Environment class comment
Last updated at 10:56 am UTC on 16 May 2017
I am a context for compiling methods. I maintain the namespace of classes and global variables that are visible to the methods compiled within me.
I have the following instance variables:
Metadata about me and the code I contain.
Rules for importing globals from other environments.
Rules for exposing globals to other environments.
Bindings for globals that have been declared inside me.
Bindings for globals that are used by methods compiled inside me.
Bindings for classes that have been declared inside me, and which satisfy the export rules contain in 'exports'.
Bindings for globals that are used by methods compiled inside me, but which aren't present in 'references' and couldn't be found via the rules in 'imports'.