A name is essentially a string, with three differences 1. Names belong in one of two name spaces: they are type names or term names. Term names have a sub-category of "local" field names. The same string can correspond a name in each of the three namespaces. 2. Names are hash-consed. Two names representing the same string in the same universe are always reference identical. 3. Names are intended to be encoded strings. @see dotc.util.NameTransformer. The encoding will be applied when converting a string to a name.
Constructors
Members
A type for names of the same kind as this name
A type for names of the same kind as this name
A more efficient version of concatenation
A more efficient version of concatenation
This name downcasted to a term name
This name downcasted to a term name
This name downcasted to a type name
This name downcasted to a type name
Replace $op_name's by corresponding operator symbols.
Replace $op_name's by corresponding operator symbols.
Replace operator symbols by corresponding $op_name's.
Replace operator symbols by corresponding $op_name's.
Is this name a term name?
Is this name a term name?
Is this name a type name?
Is this name a type name?
A name in the same (term or type) namespace as this name and
with same characters as given name
.
A name in the same (term or type) namespace as this name and
with same characters as given name
.
This name converted to a term name
This name converted to a term name
The text representation of this showable element. This normally dispatches to a pattern matching method in Printers.
The text representation of this showable element. This normally dispatches to a pattern matching method in Printers.
This name converted to a type name
This name converted to a type name