CallChainSubstCpsTree

cps.plugin.forest.CallChainSubstCpsTree
case class CallChainSubstCpsTree(origin: Tree, owner: Symbol, call: CpsTree) extends CpsTree

Attributes

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

Members list

Value members

Concrete methods

override def applyRuntimeAwait(runtimeAwait: Tree)(using Context, CpsTopLevelContext): CpsTree

apply runtime await. If this CpsTree is adync lambda f: x1...xn => F[y] transform one to f' = summon[RuntiemAwait[F].await(f(x1..xN))(monad,monad-context)] and return CpsTree with f' in unpure otherwise - unchanged or throw error TODO: move to Lambda

apply runtime await. If this CpsTree is adync lambda f: x1...xn => F[y] transform one to f' = summon[RuntiemAwait[F].await(f(x1..xN))(monad,monad-context)] and return CpsTree with f' in unpure otherwise - unchanged or throw error TODO: move to Lambda

precondition: kind <: AsyncLambda(*)

Attributes

Definition Classes
override def asyncKind(using Context, CpsTopLevelContext): AsyncKind

Attributes

Definition Classes
override def castOriginType(ntpe: Type)(using Context, CpsTopLevelContext): CpsTree

Attributes

Definition Classes
override def changeOwner(newOwner: Symbol)(using Context): CpsTree

Attributes

Definition Classes
def finishChain()(using Context, CpsTopLevelContext): CpsTree
override def normalizeAsyncKind(using Context, CpsTopLevelContext): CpsTree

Attributes

Definition Classes
override def select(origin: Select)(using Context, CpsTopLevelContext): CpsTree

Attributes

Definition Classes
override def show(using Context): String

Attributes

Definition Classes
override def transformed(using Context, CpsTopLevelContext): Tree

Attributes

Definition Classes
override def typeApply(origin: TypeApply)(using Context, CpsTopLevelContext): CpsTree

Attributes

Definition Classes
override def typed(origin: Typed)(using Context, CpsTopLevelContext): CpsTree

Attributes

Definition Classes
override def unpure(using Context, CpsTopLevelContext): Option[Tree]

is this is a sync-tree ?

is this is a sync-tree ?

Attributes

Definition Classes
override def withOrigin(term: Tree): CpsTree

Attributes

Definition Classes

Inherited methods

def appendInBlock(next: CpsTree)(using Context, CpsTopLevelContext): CpsTree

let we have block {A; B} cps({A;B}) = cps(A).appendInBlock(cps(B))

let we have block {A; B} cps({A;B}) = cps(A).appendInBlock(cps(B))

Attributes

Inherited from:
CpsTree
def isOriginEqSync(using Context, CpsTopLevelContext): Boolean

Attributes

Inherited from:
CpsTree
def originType(using Context): Type

Attributes

Inherited from:
CpsTree
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product

Attributes

Inherited from:
CpsTree
def transformedType(using Context, CpsTopLevelContext): Type

Attributes

Inherited from:
CpsTree