Name
A name if either a term name or a type name. Term names can be simple or derived. A simple term name is essentially an interned string stored in a name table. A derived term name adds a tag, and possibly a number or a further simple name to some other name.
Type members
Value members
Abstract methods
If partial function f
is defined for some part of this name, apply it
in a Some, otherwise None.
Stops at derived names whose kind has definesNewName = true
.
If partial function f
is defined for some part of this name, apply it
in a Some, otherwise None.
Stops at derived names whose kind has definesNewName = true
.
A string showing the internal structure of this name. By contrast, toString
shows the name after conversion to a simple name.
A string showing the internal structure of this name. By contrast, toString
shows the name after conversion to a simple name.
Replace operator expansions by corresponding operator symbols.
Replace operator expansions by corresponding operator symbols.
A derived name consisting of this name and the added info, unless it is already present in this name.
A derived name consisting of this name and the added info, unless it is already present in this name.
Replace operator symbols by corresponding operator expansions
Replace operator symbols by corresponding operator expansions
This name without any info of the given kind
. Excepted, as always,
is the underlying name part of a qualified name.
This name without any info of the given kind
. Excepted, as always,
is the underlying name part of a qualified name.
Does this name contain an info of the given kind? Excepted, as always, is the underlying name part of a qualified name.
Does this name contain an info of the given kind? Excepted, as always, is the underlying name part of a qualified 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 simple term name and in addition with all symbolic operator characters expanded.
This name converted to a simple term name and in addition with all symbolic operator characters expanded.
Apply f
to last simple term name making up this name
Apply f
to last simple term name making up this name
Apply f
to all simple term names making up this name
Apply f
to all simple term names making up this name
Apply rewrite rule given by f
to some part of this name, skipping and rewrapping
other decorators.
Stops at DerivedNames with infos of kind QualifiedInfo.
If f
does not apply to any part, return name unchanged.
Apply rewrite rule given by f
to some part of this name, skipping and rewrapping
other decorators.
Stops at DerivedNames with infos of kind QualifiedInfo.
If f
does not apply to any part, return name unchanged.
Concrete methods
A derived name consisting of this name and the info of kind
A derived name consisting of this name and the info of kind
Compares the receiver object (this
) with the argument object (that
) for equivalence.
Compares the receiver object (this
) with the argument object (that
) for equivalence.
Any implementation of this method should be an equivalence relation:
- It is reflexive: for any instance
x
of typeAny
,x.equals(x)
should returntrue
. - It is symmetric: for any instances
x
andy
of typeAny
,x.equals(y)
should returntrue
if and only ify.equals(x)
returnstrue
. - It is transitive: for any instances
x
,y
, andz
of typeAny
ifx.equals(y)
returnstrue
andy.equals(z)
returnstrue
, thenx.equals(z)
should returntrue
.
If you override this method, you should verify that your implementation remains an equivalence relation.
Additionally, when overriding this method it is usually necessary to override hashCode
to ensure that
objects which are "equal" (o1.equals(o2)
returns true
) hash to the same scala.Int.
(o1.hashCode.equals(o2.hashCode)
).
- Value parameters:
- that
the object to compare against this object for equality.
- Returns:
true
if the receiver object is equivalent to the argument;false
otherwise.- Definition Classes
- Any
Calculate a hash code value for the object.
Calculate a hash code value for the object.
The default hashing algorithm is platform dependent.
Note that it is allowed for two objects to have identical hash codes (o1.hashCode.equals(o2.hashCode)
) yet
not be equal (o1.equals(o2)
returns false
). A degenerate implementation could always return 0
.
However, it is required that if two objects are equal (o1.equals(o2)
returns true
) that they have
identical hash codes (o1.hashCode.equals(o2.hashCode)
). Therefore, when overriding this method, be sure
to verify that the behavior is consistent with the equals
method.
- Returns:
the hash code value for this object.
- Definition Classes
- Any
Replace all occurrences of from
to to
in this name
Replace all occurrences of from
to to
in this name
Same as replace, but does not stop at DerivedNames with infos of kind QualifiedInfo.
Same as replace, but does not stop at DerivedNames with infos of kind QualifiedInfo.
Inherited methods
A fallback text representation, if the pattern matching in Printers does not have a case for this showable element
A fallback text representation, if the pattern matching in Printers does not have a case for this showable element
- Inherited from:
- Showable
The string representation of this showable element.
The string representation of this showable element.
- Inherited from:
- Showable
The string representation with each line after the first one indented by the given given margin (in spaces).
The string representation with each line after the first one indented by the given given margin (in spaces).
- Inherited from:
- Showable
The summarized string representation of this showable element. Recursion depth is limited to some smallish value. Default is Config.summarizeDepth.
The summarized string representation of this showable element. Recursion depth is limited to some smallish value. Default is Config.summarizeDepth.
- Inherited from:
- Showable