ObjectSlots

The fields that are of type AvailObject.

Entries

Link copied to clipboard

The tuple of definitions that constitute this multimethod. This field should only be read and written with volatile slot semantics.

Link copied to clipboard

A set of semantic restrictions which, when their functions are invoked with suitable types as arguments, will determine whether the call arguments have mutually compatible types, and if so produce a type to which the call's return value is expected to conform. This type strengthening is assumed to hold at compile time (of the call) and checked at runtime.

Link copied to clipboard

A tuple of tuple types below which new signatures may no longer be added.

Link copied to clipboard

The method's lexer or nil.

Link copied to clipboard

The A_Set of A_Stylers that have been added to this method. At most one may be added to each method per 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.