abstract class OuterPathTransformer extends TypingTransformer with Global.UnderConstructionTransformer
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
Linear Supertypes
Known Subclasses
Type Hierarchy
Ordering
- Alphabetic
- By Inheritance
Inherited
- OuterPathTransformer
- UnderConstructionTransformer
- TypingTransformer
- Transformer
- Transformer
- AnyRef
- Any
Implicitly
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
Visibility
- Public
- All
Instance Constructors
- new OuterPathTransformer(unit: Global.CompilationUnit)
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 to any2stringadd[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 to ArrowAssoc[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[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
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 to Ensuring[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 to Ensuring[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 to Ensuring[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 to Ensuring[OuterPathTransformer] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from OuterPathTransformer to StringFormat[OuterPathTransformer] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isUnderConstruction(clazz: Global.Symbol): Boolean
- Attributes
- protected
- Definition Classes
- UnderConstructionTransformer
-
var
localTyper: (analyzer)#Typer
- Definition Classes
- TypingTransformer
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
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
-
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
base'.$outer$$C1 ... .$outer$$Cn which refers to the outer instance of class to of value base. The result is typed but not positioned.
- Attributes
- protected
-
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
-
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 → UnderConstructionTransformer → TypingTransformer → Transformer
-
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( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
→[B](y: B): (OuterPathTransformer, B)
- Implicit
- This member is added by an implicit conversion from OuterPathTransformer to ArrowAssoc[OuterPathTransformer] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
The Scala compiler API.
The following resources are useful for Scala plugin/compiler development: