FileDocCategorySizeDatePackage
Name.javaAPI DocJava SE 6 API2624Tue Jun 10 00:26:10 BST 2008javax.lang.model.element

Name

public interface Name implements CharSequence
An immutable sequence of characters. When created by the same implementation, objects implementing this interface must obey the general {@linkplain Object#equals equals contract} when compared with each other. Therefore, {@code Name} objects from the same implementation are usable in collections while {@code Name}s from different implementations may not work properly in collections.

An empty {@code Name} has a length of zero.

In the context of {@linkplain javax.annotation.processing.ProcessingEnvironment annotation processing}, the guarantees for "the same" implementation must include contexts where the {@linkplain javax.annotation.processing API mediated} side effects of {@linkplain javax.annotation.processing.Processor processors} could be visible to each other, including successive annotation processing {@linkplain javax.annotation.processing.RoundEnvironment rounds}.

author
Joseph D. Darcy
author
Scott Seligman
author
Peter von der Ahé
version
1.2 06/07/31
see
javax.lang.model.util.Elements#getName
since
1.6

Fields Summary
Constructors Summary
Methods Summary
public booleancontentEquals(java.lang.CharSequence cs)
Compares this name to the specified {@code CharSequence}. The result is {@code true} if and only if this name represents the same sequence of {@code char} values as the specified sequence.

return
{@code true} if this name represents the same sequence of {@code char} values as the specified sequence, {@code false} otherwise
param
cs The sequence to compare this name against
see
String#contentEquals(CharSequence)

public booleanequals(java.lang.Object obj)
Returns {@code true} if the argument represents the same name as {@code this}, and {@code false} otherwise.

Note that the identity of a {@code Name} is a function both of its content in terms of a sequence of characters as well as the implementation which created it.

param
obj the object to be compared with this element
return
{@code true} if the specified object represents the same name as this
see
Element#equals

public inthashCode()
Obeys the general contract of {@link Object#hashCode Object.hashCode}.

see
#equals