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
The length of the names
The length of the names
The start index in the character array
The start index in the character array
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
Write to UTF8 representation of this name to given character array.
Start copying to index to
. Return index of next free byte in array.
Array must have...
Write to UTF8 representation of this name to given character array.
Start copying to index to
. Return index of next free byte in array.
Array must have enough remaining space for all bytes
(i.e. maximally 3*length bytes).
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.
Create a new name of same kind as this one, in the given
basis, with len
characters taken from cs
starting at offset
.
Create a new name of same kind as this one, in the given
basis, with len
characters taken from cs
starting at offset
.
Create new name of same kind as this name and with same
characters as given name
.
Create new name of same kind as this name and with same
characters as given name
.
Create new name of same kind as this name with characters from the given string
Create new name of same kind as this name with characters from the given string
Is this name a term name?
Is this name a term name?
Is this name a type name?
Is this name a type 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