The AttributeSource type exposes the following members.

Constructors

  NameDescription
Public methodAttributeSource()()()()
An AttributeSource using the default attribute factory {@link AttributeSource.AttributeFactory#DEFAULT_ATTRIBUTE_FACTORY}.
Public methodAttributeSource(AttributeSource)
An AttributeSource that uses the same attributes as the supplied one.
Public methodAttributeSource(AttributeSource..::..AttributeFactory)
An AttributeSource using the supplied {@link AttributeFactory} for creating new {@link Attribute} instances.

Methods

  NameDescription
Public methodAddAttribute
The caller must pass in a Class<? extends Attribute> value. This method first checks if an instance of that class is already in this AttributeSource and returns it. Otherwise a new instance is created, added to this AttributeSource and returned. Signature for Java 1.5:
CopyC#
public <T extends Attribute> T addAttribute(Class<T>)
Public methodAddAttributeImpl
Adds a custom AttributeImpl instance with one or more Attribute interfaces.
Public methodCaptureState
Captures the state of all Attributes. The return value can be passed to {@link #restoreState} to restore the state of this or another AttributeSource.
Public methodClearAttributes
Resets all Attributes in this AttributeSource by calling {@link AttributeImpl#Clear()} on each Attribute implementation.
Public methodCloneAttributes
Performs a clone of all {@link AttributeImpl} instances returned in a new AttributeSource instance. This method can be used to e.g. create another TokenStream with exactly the same attributes (using {@link #AttributeSource(AttributeSource)})
Public methodEquals (Overrides Object..::..Equals(Object).)
Protected methodFinalize
Allows an Object to attempt to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetAttribute
The caller must pass in a Class<? extends Attribute> value. Returns the instance of the passed in Attribute contained in this AttributeSource Signature for Java 1.5:
CopyC#
public <T extends Attribute> T getAttribute(Class<T>)
Public methodGetAttributeClassesIterator
Returns a new iterator that iterates the attribute classes in the same order they were added in. Signature for Java 1.5:
CopyC#
public Iterator<Class<? extends Attribute>> getAttributeClassesIterator()
Note that this return value is different from Java in that it enumerates over the values and not the keys
Public methodGetAttributeFactory
returns the used AttributeFactory.
Public methodGetAttributeImplsIterator
Returns a new iterator that iterates all unique Attribute implementations. This iterator may contain less entries that {@link #getAttributeClassesIterator}, if one instance implements more than one Attribute interface. Signature for Java 1.5:
CopyC#
public Iterator<AttributeImpl> getAttributeImplsIterator()
Public methodGetHashCode (Overrides Object..::..GetHashCode()()()().)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodHasAttribute
The caller must pass in a Class<? extends Attribute> value. Returns true, iff this AttributeSource contains the passed-in Attribute. Signature for Java 1.5:
CopyC#
public boolean hasAttribute(Class<? extends Attribute>)
Public methodHasAttributes
Returns true, iff this AttributeSource has any attributes
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodRestoreState
Restores this state by copying the values of all attribute implementations that this state contains into the attributes implementations of the targetStream. The targetStream must contain a corresponding instance for each argument contained in this state (e.g. it is not possible to restore the state of an AttributeSource containing a TermAttribute into a AttributeSource using a Token instance as implementation). Note that this method does not affect attributes of the targetStream that are not contained in this state. In other words, if for example the targetStream contains an OffsetAttribute, but this state doesn't, then the value of the OffsetAttribute remains unchanged. It might be desirable to reset its value to the default, in which case the caller should first call {@link TokenStream#ClearAttributes()} on the targetStream.
Public methodToString (Overrides Object..::..ToString()()()().)

See Also