TypeComparison

enum TypeComparison : Enum<TypeComparison>

Answer the relationship between two signatures, the argument tuple types of function types representing (1) a criterion to test, and (2) a definition's signature to be classified.

Author

Mark van Gulik

Entries

Link copied to clipboard

The definition's signature equals the criterion.

Link copied to clipboard

The definition is a proper ancestor of the criterion.

Link copied to clipboard

The definition is a proper descendant of the criterion.

Link copied to clipboard

The definition's signature and the criterion are not directly related, but may share subtypes other than bottom (⊥).

Link copied to clipboard

The definition's signature and the criterion have ⊥ as their nearest common descendant. Thus, there are no tuples of actual arguments that satisfy both signatures simultaneously. This is a useful distinction from UNRELATED_TYPE, since a successful test against the criterion eliminates the other definition from being considered possible.

Types

Link copied to clipboard
object Companion

Functions

Link copied to clipboard
fun <Element : A_BasicObject> applyEffect(    undecidedDefinition: Element,     ifPositive: MutableList<Element>,     ifUndecided: MutableList<Element>)

Conditionally augment the supplied lists with the provided undecided Element. The decision of which lists to augment depends on this instance, which is the result of a comparison with the proposed node's type restrictions.

Properties

Link copied to clipboard
val name: String
Link copied to clipboard
val ordinal: Int