Packages

trait MethodSynth extends AnyRef

There are two key methods in here.

1) Enter methods such as enterGetterSetter are called from Namer with a tree which may generate further trees such as accessors or implicit wrappers. Some setup is performed. In general this creates symbols and enters them into the scope of the owner.

2) addDerivedTrees is called from Typer when a Template is typed. It completes the job, returning a list of trees with their symbols set to those created in the enter methods. Those trees then become part of the typed template.

Self Type
Analyzer.Namer
Source
MethodSynthesis.scala
Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. MethodSynth
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. trait DerivedAccessor extends AnyRef
  2. case class Getter(tree: Global.ValDef) extends Namers.Namer.DerivedAccessor with Product with Serializable
  3. case class Setter(tree: Global.ValDef) extends Namers.Namer.DerivedAccessor with Product with Serializable

Value Members

  1. def enterGetterSetter(tree: Global.ValDef): Unit
  2. def enterImplicitWrapper(classDef: Global.ClassDef): Unit