Package org.apache.lucene.queries.spans

# Class SpanPositionRangeQuery

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

All Implemented Interfaces:
  `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 `SpanFirstQuery` for a derivation that is optimized for the case where start position is 0.

## Nested Class Summary

## Nested classes/interfaces inherited from class org.apache.lucene.queries.spans.SpanPositionCheckQuery

`SpanPositionCheckQuery.SpanPositionCheckWeight`

## Field Summary

Fields
Modifier and Type
Field
Description
`protected int`
`end`
`protected int`
`start`

### Fields inherited from class org.apache.lucene.queries.spans.SpanPositionCheckQuery

`match`

## Constructor Summary

Constructors
Constructor
Description
`SpanPositionRangeQuery(SpanQuery match, int start, int end)`

## Method Summary

Modifier and Type
Method
Description
`protected FilterSpans.AcceptStatus`
`acceptPosition(Spans spans)`
Implementing classes are required to return whether the current position is a match for the passed in "match" `SpanQuery`.
`boolean`
`equals(Object o)`
Returns true iff `other` is equal to this.
`int`
`getEnd()`
`int`
`getStart()`
`int`
`hashCode()`
`String`
`toString(String field)`

### Methods inherited from class org.apache.lucene.queries.spans.SpanPositionCheckQuery

`createWeight, getField, getMatch, rewrite, visit`

### Methods inherited from class org.apache.lucene.queries.spans.SpanQuery

`getTermStates, getTermStates`

### Methods inherited from class org.apache.lucene.search.Query

`classHash, sameClassAs, toString`

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

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

## Field Details

### start

protected int start

### end

protected int end

## Constructor Details

### SpanPositionRangeQuery

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

## Method Details

### acceptPosition

protected FilterSpans.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 last `Spans.nextStartPosition()` for the match indicated a valid start position.

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:
  - `DocIdSetIterator.nextDoc()`

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

Specified by:
  `toString` in class `Query`

### equals

public boolean equals(Object o)
Description copied from class: `SpanPositionCheckQuery`
Returns true iff `other` is equal to this.

Overrides:
  `equals` in class `SpanPositionCheckQuery`

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `SpanPositionCheckQuery`