NoLift

object NoLift extends Lifter

No lifting at all

class Lifter
class Object
trait Matchable
class Any

Value members

Concrete methods

def noLift(expr: Tree)(using Context): Boolean

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