## org.apache.lucene.search.spans
Class SpanPositionRangeQuery

    java.lang.Object
      org.apache.lucene.search.Query
          org.apache.lucene.search.spans.SpanQuery
              org.apache.lucene.search.spans.SpanPositionCheckQuery
                  org.apache.lucene.search.spans.SpanPositionRangeQuery

All Implemented Interfaces:
  Serializable, Cloneable

Direct Known Subclasses:
  SpanFirstQuery

    public class SpanPositionRangeQuery

extends SpanPositionCheckQuery

Checks to see if the `SpanPositionCheckQuery.getMatch()` lies between a start and end position

See Also:
  `for a derivation that is optimized for the case where start position is 0`, Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class org.apache.lucene.search.spans.SpanPositionCheckQuery
`SpanPositionCheckQuery.AcceptStatus, SpanPositionCheckQuery.PositionCheckSpan`

Field Summary
`protected int` `end`
`protected int` `start`

Fields inherited from class org.apache.lucene.search.spans.SpanPositionCheckQuery
`match`

Constructor Summary
`SpanPositionRangeQuery(SpanQuery match, int start, int end)`

Method Summary
`protected SpanPositionCheckQuery.AcceptStatus` `acceptPosition(Spans spans)` Implementing classes are required to return whether the current position is a match for the passed in "match" `SpanQuery`.
`Object` `clone()` Returns a clone of this query.
`boolean` `equals(Object o)`
`int` `getEnd()`
`int` `getStart()`
`int` `hashCode()`
`String` `toString(String field)` Prints a query to a string, with `field` assumed to be the default field and omitted.

Methods inherited from class org.apache.lucene.search.spans.SpanPositionCheckQuery
`extractTerms, getField, getMatch, getSpans, rewrite`

Methods inherited from class org.apache.lucene.search.spans.SpanQuery
`createWeight`

Methods inherited from class org.apache.lucene.search.Query
`combine, getBoost, getSimilarity, mergeBooleanQueries, setBoost, toString, weight`

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

Field Detail

### start

    protected int start

### end

    protected int end

Constructor Detail

### SpanPositionRangeQuery

    public SpanPositionRangeQuery(SpanQuery match,
                                  int start,
                                  int end)

Method Detail

### acceptPosition

    protected SpanPositionCheckQuery.AcceptStatus acceptPosition(Spans spans)
                                                          throws IOException

  Description copied from class: `SpanPositionCheckQuery`
  Implementing classes are required to return whether the current position is a match for the passed in "match" `SpanQuery`. This is only called if the underlying `Spans.next()` for the match is successful

  Specified by:
    `acceptPosition` in class `SpanPositionCheckQuery`
  Parameters:
    `spans` - The `Spans` instance, positioned at the spot to check
  Returns:
    whether the match is accepted, rejected, or rejected and should move to the next doc.
  Throws:
    `IOException`
  See Also:
    `Spans.next()`

### getStart

    public int getStart()

  Returns:
    The minimum position permitted in a match

### getEnd

    public int getEnd()

  Returns:
    the maximum end position permitted in a match.

### toString

    public String toString(String field)

  Description copied from class: `Query`
  Prints a query to a string, with `field` assumed to be the default field and omitted.

  The representation used is one that is supposed to be readable by `QueryParser`. However, there are the following limitations:

  - If the query was created by the parser, the printed representation may not be exactly what was parsed. For example, characters that need to be escaped will be represented without the required backslash.
  - Some of the more complicated queries (e.g. span queries) don't have a representation that can be parsed by QueryParser.

  Specified by:
    `toString` in class `Query`

### clone

    public Object clone()

  Description copied from class: `Query`
  Returns a clone of this query.

  Overrides:
    `clone` in class `Query`

### equals

    public boolean equals(Object o)

  Overrides:
    `equals` in class `Query`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Query`