Wrappers

scalus.compiler.sir.linking.Wrappers
See theWrappers companion object
final case class Wrappers(layers: List[Layer])

What is around an expression, outermost first: data declarations and lets.

Linking gives a program this shape: the data declarations it uses, inside them the definitions it uses, each in a let, and inside those its expression. What reads a linked program takes the expression out, and puts what it makes of it back inside the same wrappers.

Attributes

Companion
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

def apply(inner: SIR): SIR

inner inside the wrappers.

inner inside the wrappers.

Attributes

def bindings: List[Binding]

The bindings of the lets, outermost first.

The bindings of the lets, outermost first.

Attributes

def declarations: List[DataDecl]

The data declarations, outermost first.

The data declarations, outermost first.

Attributes

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product