LoweredValue

scalus.compiler.sir.lowering.LoweredValue
See theLoweredValue companion trait
object LoweredValue

Attributes

Companion
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Type members

Classlikes

object Builder

Builder for LoweredValue, to avoid boilerplate code. Import this object to make available

Builder for LoweredValue, to avoid boilerplate code. Import this object to make available

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Builder.type
class PrettyPrintingContext(val style: Style = ..., var printedIdentifiers: Set[String] = ...)

Attributes

Supertypes
class Object
trait Matchable
class Any

Value members

Concrete methods

Common representation prerequisite: all values have the same type: targetType

Common representation prerequisite: all values have the same type: targetType

Attributes

True iff target is TypeVarRepresentation(Transparent). When converting to a Transparent target, we skip the relabel proxy: a Transparent target is a wildcard accept ("any bytes are fine"), so retaining the source's concrete repr label is strictly more informative than relabeling to Transparent and losing it. The dropped relabel was previously the launch point of corruption chains where Data-encoded bytes acquired a Transparent label, then later passed permissive isCompatibleOn checks on their way to a native-UC target slot.

True iff target is TypeVarRepresentation(Transparent). When converting to a Transparent target, we skip the relabel proxy: a Transparent target is a wildcard accept ("any bytes are fine"), so retaining the source's concrete repr label is strictly more informative than relabeling to Transparent and losing it. The dropped relabel was previously the launch point of corruption chains where Data-encoded bytes acquired a Transparent label, then later passed permissive isCompatibleOn checks on their way to a native-UC target slot.

Attributes