L2SemanticObjectVariantId

A semantic value which represents the variantId of the ObjectLayoutVariant extracted from some object or object type in the base semantic value. To keep unboxed ints homogenous, this will always be wrapped inside an L2SemanticUnboxedInt, even though the boxed value generally will not occur in any L2BoxedRegister.

Author

Mark van Gulik

Parameters

base

The semantic value holding the value for which a TypeTag has been extracted.

Constructors

Link copied to clipboard
constructor(base: L2SemanticValue)

Create a new L2SemanticObjectVariantId semantic value.

Properties

Link copied to clipboard
Link copied to clipboard
val hash: Int

The permanent hash value of this L2SemanticValue.

Link copied to clipboard

Answer whether this semantic value corresponds with the notion of a semantic constant.

Link copied to clipboard

Functions

Link copied to clipboard
open operator override fun compareTo(other: L2SemanticValue): Int
Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open override fun equalsSemanticValue(other: L2SemanticValue): Boolean
Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard

The primary criterion by which to sort (ascending) the semantic values in a synonym when presenting them visually.

Link copied to clipboard
open override fun toString(): String
Link copied to clipboard

Produce a compact textual representation suitable for displaying within a synonym in a debugger or visualized control flow graph.

Link copied to clipboard
open override fun transform(semanticValueTransformer: (L2SemanticValue) -> L2SemanticValue, frameTransformer: (Frame) -> Frame): L2SemanticValue

Transform the receiver. If it's composed of parts, transform them with the supplied Functions.