DescriptionAdd LookupTable class for finding classes and members by name.
The new class becomes a superclass of CoreTypes, which now gets its
functionality from that class, but also exposes commonly used built-in
members as fields.
This replaces a couple of ad-hoc linear searches spread throughout
the code.
The canonical names are not a convenient interface for transformers, so
the idea is that they can use LookupTable to address their own runtime
libraries.
To avoid name clashes and still have a somewhat convenient interface,
getters and setters are prefixed by 'get:' and 'set:' in the lookup
table (and only in the lookup table), and top-level members can be
accessed using '::' as the class name. This is the same convention
used by the VM, although it is currently not required to be the same.
BUG=
Patch Set 1 #
Messages
Total messages: 2 (2 generated)
|