org.apache.lucene.analysis.tokenattributes

## Class PositionIncrementAttributeImpl

- java.lang.Object
- - org.apache.lucene.util.AttributeImpl
  - - org.apache.lucene.analysis.tokenattributes.PositionIncrementAttributeImpl

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, PositionIncrementAttribute, Attribute

      public class PositionIncrementAttributeImpl
      extends AttributeImpl
      implements PositionIncrementAttribute, java.lang.Cloneable, java.io.Serializable

  The positionIncrement determines the position of this token relative to the previous Token in a `TokenStream`, used in phrase searching.

  The default value is one.

  Some common uses for this are:

  - Set it to zero to put multiple terms in the same position. This is useful if, e.g., a word has multiple stems. Searches for phrases including either stem will match. In this case, all but the first stem's increment should be set to zero: the increment of the first instance should be one. Repeating a token with an increment of zero can also be used to boost the scores of matches on that token.
  - Set it to values greater than one to inhibit exact phrase matches. If, for example, one does not want phrases to match across removed stop words, then one could build a stop word filter that removes stop words and also sets the increment to the number of stop words removed before each non-stop word. Then exact phrase queries will only match when the terms occur with no intervening stop words.
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `PositionIncrementAttributeImpl()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `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(java.lang.Object other)` All values used for computation of `AttributeImpl.hashCode()` should be checked here for equality.
    `int` | `getPositionIncrement()` Returns the position increment of this Token.
    `int` | `hashCode()` Subclasses must implement this method and should compute a hashCode similar to this:
    `void` | `setPositionIncrement(int positionIncrement)` Set the position increment.

    - ### Methods inherited from class org.apache.lucene.util.AttributeImpl

      `clone, toString`

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### PositionIncrementAttributeImpl

          public PositionIncrementAttributeImpl()

  - ### Method Detail

    - #### setPositionIncrement

          public void setPositionIncrement(int positionIncrement)

      Set the position increment. The default value is one.
      Specified by:
        `setPositionIncrement` in interface `PositionIncrementAttribute`
      Parameters:
        `positionIncrement` - the distance from the prior term

    - #### getPositionIncrement

          public int getPositionIncrement()

      Returns the position increment of this Token.
      Specified by:
        `getPositionIncrement` in interface `PositionIncrementAttribute`
      See Also:
        `setPositionIncrement(int)`

    - #### 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`

    - #### equals

          public boolean equals(java.lang.Object other)

      Description copied from class: `AttributeImpl`
      All values used for computation of `AttributeImpl.hashCode()` should be checked here for equality. see also `Object.equals(Object)`
      Specified by:
        `equals` in class `AttributeImpl`

    - #### hashCode

          public int hashCode()

      Description copied from class: `AttributeImpl`
      Subclasses must implement this method and should compute a hashCode similar to this:

             public int hashCode() {
               int code = startOffset;
               code = code * 31 + endOffset;
               return code;
             }

      see also `AttributeImpl.equals(Object)`
      Specified by:
        `hashCode` 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`

Copyright © 2000-2016 Apache Software Foundation. All Rights Reserved.