scala.quoted.Quotes.reflectModule.ClassDefModule
Methods of the module object val ClassDef
Create a class definition tree
Create a class definition tree
Value parametersList of members of the class. The members must align with the members of cls
.
The class symbol. A new class symbol can be created using Symbol.newClass
.
The parents trees class. The trees must align with the parent types of cls
. Parents can be TypeTree
s if they don't have term parameter, otherwise the can be Term
containing the New
applied to the parameters of the extended class.
Create the ValDef and ClassDef of a module (equivalent to an object
declaration in source code).
Create the ValDef and ClassDef of a module (equivalent to an object
declaration in source code).
Equivalent to
def module(module: Symbol, parents: List[Tree], body: List[Statement]): (ValDef, ClassDef) =
val modCls = module.moduleClass
val modClassDef = ClassDef(modCls, parents, body)
val modValDef = ValDef(module, Some(Apply(Select(New(TypeIdent(modCls)), cls.primaryConstructor), Nil)))
List(modValDef, modClassDef)
Value parameters
body of the module class
the module symbol (created using Symbol.newModule
)
parents of the module class
The module lazy val definition and module class definition. These should be added one after the other (in that order) in the body of a class or statements of a block.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4