abstract class OuterPathTransformer extends TypingTransformer
A base class for transformers that maintain outerParam values for outer parameters of constructors. The class provides methods for referencing via outer.
- Source
- ExplicitOuter.scala
- Alphabetic
- By Inheritance
- OuterPathTransformer
- TypingTransformer
- Transformer
- InternalTransformer
- Transformer
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new OuterPathTransformer(unit: Global.CompilationUnit)
- new OuterPathTransformer(initLocalTyper: (analyzer)#Typer)
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- Implicit
- This member is added by an implicit conversion from OuterPathTransformer toany2stringadd[OuterPathTransformer] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
- def ->[B](y: B): (OuterPathTransformer, B)
- Implicit
- This member is added by an implicit conversion from OuterPathTransformer toArrowAssoc[OuterPathTransformer] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def atOwner[A](tree: Global.Tree, owner: Global.Symbol)(trans: => A): A
- Definition Classes
- TypingTransformer
- final def atOwner[A](owner: Global.Symbol)(trans: => A): A
- Definition Classes
- TypingTransformer → Transformer
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- var curTree: Global.Tree
- Attributes
- protected
- Definition Classes
- TypingTransformer
- def currentClass: Global.Symbol
- Attributes
- protected
- Definition Classes
- Transformer
- def currentMethod: Global.Symbol
- Attributes
- protected
- Definition Classes
- Transformer
- var currentOwner: Global.Symbol
- Attributes
- protected[scala]
- Definition Classes
- Transformer
- def ensuring(cond: (OuterPathTransformer) => Boolean, msg: => Any): OuterPathTransformer
- Implicit
- This member is added by an implicit conversion from OuterPathTransformer toEnsuring[OuterPathTransformer] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: (OuterPathTransformer) => Boolean): OuterPathTransformer
- Implicit
- This member is added by an implicit conversion from OuterPathTransformer toEnsuring[OuterPathTransformer] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean, msg: => Any): OuterPathTransformer
- Implicit
- This member is added by an implicit conversion from OuterPathTransformer toEnsuring[OuterPathTransformer] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean): OuterPathTransformer
- Implicit
- This member is added by an implicit conversion from OuterPathTransformer toEnsuring[OuterPathTransformer] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isUnderConstruction(clazz: Global.Symbol): Boolean
The stack of class symbols in which a call to this() or to the super constructor, or early definition is active
The stack of class symbols in which a call to this() or to the super constructor, or early definition is active
- Attributes
- protected
- var localTyper: (analyzer)#Typer
- Definition Classes
- TypingTransformer
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- var outerParam: Global.Symbol
The directly enclosing outer parameter, if we are in a constructor
The directly enclosing outer parameter, if we are in a constructor
- Attributes
- protected
- final def outerPath(base: Global.Tree, from: Global.Symbol, to: Global.Symbol): Global.Tree
The path
`base`.$outer$$C1 ... .$outer$$Cn
The path
`base`.$outer$$C1 ... .$outer$$Cn
- Attributes
- protected
- Annotations
- @tailrec()
- def outerValue: Global.Tree
The first outer selection from currently transformed tree.
The first outer selection from currently transformed tree. The result is typed but not positioned.
Will return
EmptyTree
if there is no outer accessor because of a premature self reference.- Attributes
- protected
- val selfOrSuperCalls: Stack[Global.Symbol]
- Attributes
- protected
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def transform(tree: Global.Tree): Global.Tree
- Definition Classes
- OuterPathTransformer → TypingTransformer → InternalTransformer → Transformer
- def transformAtOwner(owner: Global.Symbol, tree: Global.Tree): Global.Tree
- Definition Classes
- TypingTransformer
- def transformCaseDefs(trees: List[Global.CaseDef]): List[Global.CaseDef]
- Definition Classes
- Transformer
- def transformIdents(trees: List[Global.Ident]): List[Global.Ident]
- Definition Classes
- Transformer
- def transformMemberDefs(trees: List[Global.MemberDef]): List[Global.MemberDef]
- Definition Classes
- Transformer
- def transformModifiers(mods: Global.Modifiers): Global.Modifiers
- Definition Classes
- Transformer
- def transformStats(stats: List[Global.Tree], exprOwner: Global.Symbol): List[Global.Tree]
- Definition Classes
- Transformer
- def transformTemplate(tree: Global.Template): Global.Template
- Definition Classes
- Transformer
- def transformTrees(trees: List[Global.Tree]): List[Global.Tree]
- Definition Classes
- Transformer
- def transformTypeDefs(trees: List[Global.TypeDef]): List[Global.TypeDef]
- Definition Classes
- Transformer
- def transformUnit(unit: Global.CompilationUnit): Unit
- Definition Classes
- Transformer
- def transformValDef(tree: Global.ValDef): Global.ValDef
- Definition Classes
- Transformer
- def transformValDefs(trees: List[Global.ValDef]): List[Global.ValDef]
- Definition Classes
- Transformer
- def transformValDefss(treess: List[List[Global.ValDef]]): List[List[Global.ValDef]]
- Definition Classes
- Transformer
- val treeCopy: Global.TreeCopier
- Definition Classes
- Transformer
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
Deprecated Value Members
- def formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from OuterPathTransformer toStringFormat[OuterPathTransformer] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @deprecated @inline()
- Deprecated
(Since version 2.12.16) Use
formatString.format(value)
instead ofvalue.formatted(formatString)
, or use thef""
string interpolator. In Java 15 and later,formatted
resolves to the new method in String which has reversed parameters.
- def →[B](y: B): (OuterPathTransformer, B)
- Implicit
- This member is added by an implicit conversion from OuterPathTransformer toArrowAssoc[OuterPathTransformer] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @deprecated
- Deprecated
(Since version 2.13.0) Use
->
instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.
The Scala compiler and reflection APIs.