scala.tools.nsc.typechecker.MethodSynthesis

MethodSynth

trait MethodSynth extends AnyRef

There are two key methods in here.

1) enterGetterSetter is called from Namer with a ValDef which may need accessors. Some setup is performed. In general this creates symbols and enters them into the scope of the owner.

2) finishGetterSetter 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 enterGetterSetter. Those trees then become part of the typed template.

Self Type
Namer
Source
MethodSynthesis.scala
Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. MethodSynth
  2. AnyRef
  3. Any
Visibility
  1. Public
  2. All

Type Members

  1. trait AnyBeanGetter extends BeanAccessor with DerivedGetter

  2. sealed abstract class BeanAccessor extends DerivedFromValDef

  3. case class BeanGetter(tree: ValDef) extends BeanAccessor with AnyBeanGetter with Product with Serializable

  4. case class BeanSetter(tree: ValDef) extends BeanAccessor with DerivedSetter with Product with Serializable

  5. case class BooleanBeanGetter(tree: ValDef) extends BeanAccessor with AnyBeanGetter with Product with Serializable

  6. trait Derived extends AnyRef

  7. trait DerivedFromValDef extends Derived

  8. trait DerivedGetter extends DerivedFromValDef

  9. trait DerivedSetter extends DerivedFromValDef

  10. case class Field(tree: ValDef) extends DerivedFromValDef with Product with Serializable

  11. case class Getter(tree: ValDef) extends DerivedGetter with Product with Serializable

  12. trait NoSymbolBeanGetter extends BeanAccessor with AnyBeanGetter

  13. case class Param(tree: ValDef) extends DerivedFromValDef with Product with Serializable

  14. case class Setter(tree: ValDef) extends DerivedSetter with Product with Serializable

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. def allValDefDerived(vd: ValDef): List[DerivedFromValDef]

  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. def beanAccessors(vd: ValDef): List[DerivedFromValDef]

  9. def clone(): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  10. def enterBeans(tree: ValDef): Unit

    Attributes
    protected
  11. def enterGetterSetter(tree: ValDef): Unit

  12. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  15. def finishGetterSetter(typer: Typer, stat: Tree): List[Tree]

  16. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  17. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  18. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  19. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  20. final def notify(): Unit

    Definition Classes
    AnyRef
  21. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  22. def standardAccessors(vd: ValDef): List[DerivedFromValDef]

  23. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  24. def toString(): String

    Definition Classes
    AnyRef → Any
  25. def validateParam(tree: ValDef): Unit

  26. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  27. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  28. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from AnyRef

Inherited from Any