scala.tools.nsc.typechecker.Namers
Given a case class case class C[Ts] (ps: Us) Add the following methods to toScope:
Given a case class case class C[Ts] (ps: Us) Add the following methods to toScope:
is the class definition of the case class
is the namer of the module class (the comp. obj)
If no companion object for clazz exists yet, create one by applying creator
to
class definition tree.
If no companion object for clazz exists yet, create one by applying creator
to
class definition tree.
the companion object symbol.
Enter symbol into given scope and return symbol itself
Enter symbol into context's scope and return symbol itself
Enter a module symbol.
Enter a module symbol. The tree parameter can be either a module definition or a class definition
Replace type parameters with their TypeSkolems, which can later be deskolemized to the original type param (a skolem is a representation of a bound variable when viewed inside its scope) !!!Adriaan: this does not work for hk types.
Check that symbol's definition is well-formed.
Check that symbol's definition is well-formed. This means:
abstract' modifier only for classes
override' modifier never for classes
def' modifier never for parameters of case classes