Companion
Functions
Link copied to clipboard
fun restriction( type: A_Type, constantOrNull: A_BasicObject?, givenExcludedTypes: Set<A_Type>, givenExcludedValues: Set<A_BasicObject>, possibleVariants: Set<ObjectLayoutVariant>?, excludedVariants: Set<ObjectLayoutVariant>?, possibleTypeVariants: Set<ObjectLayoutVariant>?, excludedTypeVariants: Set<ObjectLayoutVariant>?, flags: Int): TypeRestriction
Content copied to clipboard
fun restriction( type: A_Type, constantOrNull: A_BasicObject?, givenExcludedTypes: Set<A_Type> = emptySet(), givenExcludedValues: Set<A_BasicObject> = emptySet(), possibleVariants: Set<ObjectLayoutVariant>? = null, excludedVariants: Set<ObjectLayoutVariant>? = null, possibleTypeVariants: Set<ObjectLayoutVariant>? = null, excludedTypeVariants: Set<ObjectLayoutVariant>? = null, isImmutable: Boolean = false, isBoxed: Boolean = true, isUnboxedInt: Boolean = false, isUnboxedFloat: Boolean = false): TypeRestriction
Content copied to clipboard
Create or reuse an immutable TypeRestriction, canonicalizing the arguments.
Link copied to clipboard
fun restrictionForConstant(constant: A_BasicObject, encoding: TypeRestriction.RestrictionFlagEncoding): TypeRestriction
Content copied to clipboard
Create or reuse a TypeRestriction, for which no constant information is provided (but might be deduced from the type).
Link copied to clipboard
fun restrictionForType(type: A_Type, encoding: TypeRestriction.RestrictionFlagEncoding): TypeRestriction
Content copied to clipboard
Create or reuse a TypeRestriction, for which no constant information is provided (but might be deduced from the type).
Properties
Link copied to clipboard
The TypeRestriction for a register that has any value whatsoever, excluding nil, but it's not known to be immutable.
Link copied to clipboard
The TypeRestriction for a register that cannot hold any value. This can be useful for cleanly dealing with unreachable code.
Link copied to clipboard
The TypeRestriction for a register that holds nil.