NIL_TAG

Functions

Link copied to clipboard
fun commonAncestorWith(other: TypeTag?): TypeTag
Link copied to clipboard
fun isSubtagOf(otherTag: TypeTag): Boolean

Properties

Link copied to clipboard
val contravariants: MutableList<TypeTag.Modifier.Contra>

The array of Contravariant relationships defined during construction.

Link copied to clipboard
val covariants: MutableList<TypeTag.Modifier.Co>

The array of Covariant relationships defined during construction.

Link copied to clipboard
val depth: Int

The number of ancestors of this TypeTag

Link copied to clipboard
var highOrdinal: Int

The highest ordinal value of all of this TypeTag's descendants, including itself. The descendants' ordinals must start just after the current TypeTag's ordinal, and be contiguously numbered. Since the ordinals are assigned by the Enum mechanism, that means a TypeTag definition must be followed immediately by each of its children and their descendants, which is prefix tree order.

Link copied to clipboard
var isAbstract: Boolean = false

A flag set during initialization, indicating this TypeTag has no direct instances.

Link copied to clipboard
var metaTag: TypeTag? = null

If object X has tag T, then X's type has tag T.metaTag.

Link copied to clipboard
val name: String
Link copied to clipboard
val ordinal: Int
Link copied to clipboard
val parent: TypeTag?

The parent of this TypeTag.

Link copied to clipboard
val supremum: A_Type

Every TypeTag has a (potentially infinite) collection of values that use that tag. After initialization, this property has the least upper bound A_Type that constrains all those values.

Link copied to clipboard
val uniqueValue: AvailObject?

Some TypeTags occur in exactly one AvailObject. If so, this field will be initialized to a lambda that produces the value.