SelectTypeApplyCpsTree

case class SelectTypeApplyCpsTree(origin: Option[Term], nested: CpsTree, targs: List[TypeTree], selects: List[SelectTypeApplyRecord], otpe: TypeRepr, changed: Boolean) extends CpsTree

represent select expression, which can be in monad or outside monad.

constructor is not devoted to used directly: use SelectTypeApplyCpsTree.create instead. selects is reversed (i.e. external added to head)

Companion:
object
Source:
CpsTree.scala
trait Serializable
trait Product
trait Equals
class CpsTree
class Object
trait Matchable
class Any

Value members

Concrete methods

override def appendFinal(next: CpsTree): CpsTree
Definition Classes
Source:
CpsTree.scala
def apply(term: Term): Term
override def applyAwait(newOtpe: TypeRepr): CpsTree
Definition Classes
Source:
CpsTree.scala
override def castOtpe(newOtpe: TypeRepr): CpsTree

cast CpsTree to keep newOtpe.type inside monad.

cast CpsTree to keep newOtpe.type inside monad.

Definition Classes
Source:
CpsTree.scala
override def inCake[F1[_], T1, C1 <: CpsMonadContext[F1]](otherCake: TreeTransformScope[F1, T1, C1]): SelectTypeApplyCpsTree
Definition Classes
Source:
CpsTree.scala
override def isAsync: Boolean
Definition Classes
Source:
CpsTree.scala
override def isChanged: Boolean
Definition Classes
Source:
CpsTree.scala
override def isLambda: Boolean
Definition Classes
Source:
CpsTree.scala
override def monadFlatMap(f: Term => Term, ntpe: TypeRepr): CpsTree
Definition Classes
Source:
CpsTree.scala
override def monadMap(f: Term => Term, ntpe: TypeRepr): CpsTree
Definition Classes
Source:
CpsTree.scala
override def select(orig: Term, symbol: Symbol, ntpe: TypeRepr): CpsTree
Definition Classes
Source:
CpsTree.scala
override def syncOrigin: Option[Term]
Definition Classes
Source:
CpsTree.scala
override def transformed: Term
Definition Classes
Source:
CpsTree.scala
override def typeApply(orig: Term, targs: List[TypeTree], ntpe: TypeRepr): CpsTree
Definition Classes
Source:
CpsTree.scala

Inherited methods

def append(next: CpsTree): CpsTree
Inherited from:
CpsTree
Source:
CpsTree.scala
def isSync: Boolean
Inherited from:
CpsTree
Source:
CpsTree.scala
def prepend(prev: CpsTree): CpsTree
Inherited from:
CpsTree
Source:
CpsTree.scala
def productElementNames: Iterator[String]
Inherited from:
Product
def productIterator: Iterator[Any]
Inherited from:
Product
def rtpe: TypeRepr

type which we see outside. i.e. F[T] for near all 'normal' trees or X=>F[T] for async lambda.

type which we see outside. i.e. F[T] for near all 'normal' trees or X=>F[T] for async lambda.

Inherited from:
CpsTree
Source:
CpsTree.scala
def toResult[T : Type]: CpsExpr[F, T]
Inherited from:
CpsTree
Source:
CpsTree.scala
def toResultWithType[T](qt: Type[T]): CpsExpr[F, T]
Inherited from:
CpsTree
Source:
CpsTree.scala