LiftImpure

object LiftImpure extends LiftImpure
Companion:
class
class Lifter
class Object
trait Matchable
class Any

Value members

Inherited methods

protected def exprLifter: Lifter

The corresponding lifter for pass-by-name arguments

The corresponding lifter for pass-by-name arguments

Inherited from:
Lifter
protected def isErased: Boolean

Is lifting performed on erased terms?

Is lifting performed on erased terms?

Inherited from:
Lifter
def liftApp(defs: ListBuffer[Tree], tree: Tree)(using Context): Tree

Lift out function prefix and all arguments from application

Lift out function prefix and all arguments from application

pre.f(arg1, ..., argN) becomes

val x0 = pre val x1 = arg1 ... val xN = argN x0.f(x1, ..., xN)

But leave pure expressions alone.

Inherited from:
Lifter
def liftArgs(defs: ListBuffer[Tree], methRef: Type, args: List[Tree])(using Context): List[Tree]

Lift arguments that are not-idempotent into ValDefs in buffer defs and replace by the idents of so created ValDefs.

Lift arguments that are not-idempotent into ValDefs in buffer defs and replace by the idents of so created ValDefs.

Inherited from:
Lifter
def liftAssigned(defs: ListBuffer[Tree], tree: Tree)(using Context): Tree

Lift out common part of lhs tree taking part in an operator assignment such as

Lift out common part of lhs tree taking part in an operator assignment such as

lhs += expr

Inherited from:
Lifter
def liftPrefix(defs: ListBuffer[Tree], tree: Tree)(using Context): Tree

Lift prefix pre of an application pre.f(...) to

Lift prefix pre of an application pre.f(...) to

val x0 = pre x0.f(...)

unless pre is idempotent.

Inherited from:
Lifter
protected def liftedDef(sym: TermSymbol, rhs: Tree)(using Context): MemberDef

The tree of a lifted definition

The tree of a lifted definition

Inherited from:
Lifter
protected def liftedFlags: FlagSet

The flags of a lifted definition

The flags of a lifted definition

Inherited from:
Lifter
def noLift(expr: Tree)(using Context): Boolean

Test indicating expr does not need lifting

Test indicating expr does not need lifting

Inherited from:
LiftImpure