## org.apache.lucene.analysis.icu.tokenattributes
Class ScriptAttributeImpl

    java.lang.Object
      org.apache.lucene.util.AttributeImpl
          org.apache.lucene.analysis.icu.tokenattributes.ScriptAttributeImpl

All Implemented Interfaces:
  Serializable, Cloneable, ScriptAttribute, Attribute

    public class ScriptAttributeImpl

extends AttributeImpl
implements ScriptAttribute, Cloneable, Serializable

Implementation of `ScriptAttribute` that stores the script as an integer.

See Also:
  Serialized Form
WARNING: This API is experimental and might change in incompatible ways in the next release.

Field Summary

Fields inherited from class org.apache.lucene.util.AttributeImpl
`enableBackwards`

Constructor Summary
`ScriptAttributeImpl()`

Method Summary
`void` `clear()` Clears the values in this AttributeImpl and resets it to its default value.
`void` `copyTo(AttributeImpl target)` Copies the values from this Attribute into the passed-in target attribute.
`boolean` `equals(Object other)`
`int` `getCode()` Get the numeric code for this script value.
`String` `getName()` Get the full name.
`String` `getShortName()` Get the abbreviated name.
`int` `hashCode()`
`void` `reflectWith(AttributeReflector reflector)` This method is for introspection of attributes, it should simply add the key/values this attribute holds to the given `AttributeReflector`.
`void` `setCode(int code)` Set the numeric code for this script value.

Methods inherited from class org.apache.lucene.util.AttributeImpl
`clone, reflectAsString, toString`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, wait, wait, wait`

Constructor Detail

### ScriptAttributeImpl

    public ScriptAttributeImpl()

Method Detail

### getCode

    public int getCode()

  Description copied from interface: `ScriptAttribute`
  Get the numeric code for this script value. This is the constant value from `UScript`.

  Specified by:
    `getCode` in interface `ScriptAttribute`
  Returns:
    numeric code

### setCode

    public void setCode(int code)

  Description copied from interface: `ScriptAttribute`
  Set the numeric code for this script value. This is the constant value from `UScript`.

  Specified by:
    `setCode` in interface `ScriptAttribute`
  Parameters:
    `code` - numeric code

### getName

    public String getName()

  Description copied from interface: `ScriptAttribute`
  Get the full name.

  Specified by:
    `getName` in interface `ScriptAttribute`
  Returns:
    UTR #24 full name.

### getShortName

    public String getShortName()

  Description copied from interface: `ScriptAttribute`
  Get the abbreviated name.

  Specified by:
    `getShortName` in interface `ScriptAttribute`
  Returns:
    UTR #24 abbreviated name.

### clear

    public void clear()

  Description copied from class: `AttributeImpl`
  Clears the values in this AttributeImpl and resets it to its default value. If this implementation implements more than one Attribute interface it clears all.

  Specified by:
    `clear` in class `AttributeImpl`

### copyTo

    public void copyTo(AttributeImpl target)

  Description copied from class: `AttributeImpl`
  Copies the values from this Attribute into the passed-in target attribute. The target implementation must support all the Attributes this implementation supports.

  Specified by:
    `copyTo` in class `AttributeImpl`

### equals

    public boolean equals(Object other)

  Overrides:
    `equals` in class `Object`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Object`

### reflectWith

    public void reflectWith(AttributeReflector reflector)

  Description copied from class: `AttributeImpl`
  This method is for introspection of attributes, it should simply add the key/values this attribute holds to the given `AttributeReflector`.

  The default implementation calls `AttributeReflector.reflect(java.lang.Class<? extends org.apache.lucene.util.Attribute>, java.lang.String, java.lang.Object)` for all non-static fields from the implementing class, using the field name as key and the field value as value. The Attribute class is also determined by reflection. Please note that the default implementation can only handle single-Attribute implementations.

  Custom implementations look like this (e.g. for a combined attribute implementation):

         public void reflectWith(AttributeReflector reflector) {
           reflector.reflect(CharTermAttribute.class, "term", term());
           reflector.reflect(PositionIncrementAttribute.class, "positionIncrement", getPositionIncrement());
         }

  If you implement this method, make sure that for each invocation, the same set of `Attribute` interfaces and keys are passed to `AttributeReflector.reflect(java.lang.Class<? extends org.apache.lucene.util.Attribute>, java.lang.String, java.lang.Object)` in the same order, but possibly different values. So don't automatically exclude e.g. `null` properties!

  Overrides:
    `reflectWith` in class `AttributeImpl`
  See Also:
    `AttributeImpl.reflectAsString(boolean)`