Symbols
Type members
Classlikes
A Symbol represents a Scala definition/declaration or a package.
A Symbol represents a Scala definition/declaration or a package.
- Value parameters:
- coord
The coordinates of the symbol (a position or an index)
- id
A unique identifier of the symbol (unique per ContextBase)
Matches lists of term symbols, including the empty list. All symbols in the list are assumed to be of the same kind.
Matches lists of term symbols, including the empty list. All symbols in the list are assumed to be of the same kind.
Matches lists of type symbols, excluding the empty list. All symbols in the list are assumed to be of the same kind.
Matches lists of type symbols, excluding the empty list. All symbols in the list are assumed to be of the same kind.
Types
Value members
Concrete methods
Get ClassSymbol if class is either defined in current compilation run or present on classpath. Returns NoSymbol otherwise.
Get ClassSymbol if class is either defined in current compilation run or present on classpath. Returns NoSymbol otherwise.
Get a List of ClassSymbols which are either defined in current compilation run or present on classpath.
Get a List of ClassSymbols which are either defined in current compilation run or present on classpath.
Get module symbol if the module is either defined in current compilation run or present on classpath. Returns NoSymbol otherwise.
Get module symbol if the module is either defined in current compilation run or present on classpath. Returns NoSymbol otherwise.
Get ClassSymbol if package is either defined in current compilation run or present on classpath. Returns NoSymbol otherwise.
Get ClassSymbol if package is either defined in current compilation run or present on classpath. Returns NoSymbol otherwise.
Map given symbols, subjecting their attributes to the mappings
defined in the given TreeTypeMap ttmap
.
Cross symbol references are brought over from originals to copies.
Do not copy any symbols if all attributes of all symbols stay the same.
Map given symbols, subjecting their attributes to the mappings
defined in the given TreeTypeMap ttmap
.
Cross symbol references are brought over from originals to copies.
Do not copy any symbols if all attributes of all symbols stay the same.
Create a class symbol from its non-info fields and a function producing its info (the produced info may be lazy).
Create a class symbol from its non-info fields and a function producing its info (the produced info may be lazy).
Create a class symbol from its non-info fields and the fields of its info.
Create a class symbol from its non-info fields and the fields of its info.
Create a module symbol with associated module class from its non-info fields and the fields of the module class info.
Create a module symbol with associated module class from its non-info fields and the fields of the module class info.
- Value parameters:
- flags
The combined flags of the module and the module class These are masked with RetainedModuleValFlags/RetainedModuleClassFlags.
Create a package symbol with associated package class from its non-info fields its member scope.
Create a package symbol with associated package class from its non-info fields its member scope.
Create a class constructor symbol for given class cls
.
Create a class constructor symbol for given class cls
.
Create an empty default constructor symbol for given class cls
.
Create an empty default constructor symbol for given class cls
.
Create an import symbol pointing back to given qualifier expr
.
Create an import symbol pointing back to given qualifier expr
.
Create the local template dummy of given class cls
.
In a template
Create the local template dummy of given class cls
.
In a template
trait T { val fld: Int; { val x: int = 2 }; val fld2 = { val y = 2; y }}
the owner of x
is the local dummy of the template. The owner of the local
dummy is then the class of the template itself. By contrast, the owner of y
would be fld2
. There is a single local dummy per template.
Create a module symbol with associated module class from its non-info fields and a function producing the info of the module class (this info may be lazy).
Create a module symbol with associated module class from its non-info fields and a function producing the info of the module class (this info may be lazy).
Same as newCompleteClassSymbol
except that parents
can be a list of arbitrary
types which get normalized into type refs and parameter bindings.
Same as newCompleteClassSymbol
except that parents
can be a list of arbitrary
types which get normalized into type refs and parameter bindings.
Create a package symbol with associated package class from its non-info fields and a lazy type for loading the package's members.
Create a package symbol with associated package class from its non-info fields and a lazy type for loading the package's members.
Define a new symbol associated with a Bind or pattern wildcard and, by default, make it gadt narrowable.
Define a new symbol associated with a Bind or pattern wildcard and, by default, make it gadt narrowable.
Create a symbol representing a selftype declaration for class cls
.
Create a symbol representing a selftype declaration for class cls
.
Create a new skolem symbol. This is not the same as SkolemType, even though the motivation (create a singleton referencing to a type) is similar.
Create a new skolem symbol. This is not the same as SkolemType, even though the motivation (create a singleton referencing to a type) is similar.
Create a stub symbol that will issue a missing reference error when attempted to be completed.
Create a stub symbol that will issue a missing reference error when attempted to be completed.
Create a symbol from its fields (info may be lazy)
Create a symbol from its fields (info may be lazy)