ObjectSlots

The layout of object slots for my instances.

Entries

Link copied to clipboard

A map from strings to atoms which act as true names. The true names are identity-based identifiers that prevent or at least clarify name conflicts. This field holds only those names that are newly added by this module.

Link copied to clipboard

A map from strings to atoms which act as true names. The true names are identity-based identifiers that prevent or at least clarify name conflicts. This field holds only those names that have been imported from other modules.

Link copied to clipboard

A map from strings to atoms which act as true names. The true names are identity-based identifiers that prevent or at least clarify name conflicts. This field holds only those names that are neither imported from another module nor exported from the current module.

Link copied to clipboard

A set of true names that are visible within this module.

Link copied to clipboard

A redundant cached set of atoms that have been exported. These are precisely the imported names less the private names. This is nil during module loading or compiling, but can be computed and cached if requested afterward.

Link copied to clipboard

The set of bundles defined within this module.

Link copied to clipboard

A set of definitions which implement methods (and forward declarations, abstract declarations, etc.).

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

A map from true names to tuples of seal points.

Link copied to clipboard

The A_Set of A_Lexers defined by this module.

Link copied to clipboard

The set of stylers installed by this module.

Link copied to clipboard

A tuple of functions that should be applied when this module has been fully parsed, and all top-level expressions have executed.

Link copied to clipboard

A tuple of functions that should be applied when this module is unloaded.

Link copied to clipboard

An A_Tuple of all block phrases produced during compilation, in the order in which the block phrases were produced. Each A_RawFunction contains an index into this tuple, as well as a reference to this A_Module.

Properties

Link copied to clipboard

In Java it was possible to define this interface in such a way that the name method was abstract and implemented by each specific Enum, but Kotlin breaks this mechanism. BUT – we're able to cast this to Enum to get to that field. I believe this code gets copied down into each specific Enum subclass, so the dynamic type check for the cast is trivially eliminated in each case. And worst case, Hotspot will be able to inline calls to this from sites that are known to be Enums.

Link copied to clipboard

In Java it was possible to define this interface in such a way that the ordinal() method was abstract and implemented by each specific Enum, but Kotlin breaks this mechanism. BUT – we're able to cast this to Enum to get to that field. I believe this code gets copied down into each specific Enum subclass, so the dynamic type check for the cast is trivially eliminated in each case. And worst case, Hotspot will be able to inline calls to this from sites that are known to be Enums.

Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard

Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Link copied to clipboard

Returns an array containing the constants of this enum type, in the order they're declared.