public interface Name
An immutable sequence of characters. When created by the same
implementation, objects implementing this interface must obey the
general equals contract when compared
with each other. Therefore, Name
objects from the same
implementation are usable in collections while Name
s from
different implementations may not work properly in collections.
An empty Name
has a length of zero.
In the context of annotation processing, the guarantees for "the same" implementation must include contexts where the API mediated side effects of processors could be visible to each other, including successive annotation processing rounds.
Elements.getName(java.lang.CharSequence)
Method Summary | |
---|---|
boolean |
contentEquals(CharSequence cs)
Compares this name to the specified CharSequence . |
boolean |
equals(Object obj)
Returns true if the argument represents the same
name as this , and false otherwise. |
int |
hashCode()
Obeys the general contract of Object.hashCode . |
Methods inherited from interface java.lang.CharSequence |
---|
charAt, length, subSequence, toString |
Method Detail |
---|
boolean equals(Object obj)
true
if the argument represents the same
name as this
, and false
otherwise.
Note that the identity of a Name
is a function both
of its content in terms of a sequence of characters as well as
the implementation which created it.
equals
in class Object
obj
- the object to be compared with this element
true
if the specified object represents the same
name as thisElement.equals(java.lang.Object)
int hashCode()
Object.hashCode
.
hashCode
in class Object
equals(java.lang.Object)
boolean contentEquals(CharSequence cs)
CharSequence
. The result
is true
if and only if this name represents the same sequence
of char
values as the specified sequence.
cs
- The sequence to compare this name against
true
if this name represents the same sequence
of char
values as the specified sequence, false
otherwiseString.contentEquals(CharSequence)