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

    java.lang.Object
      org.apache.lucene.search.Query
          org.apache.lucene.search.spans.SpanQuery
              org.apache.lucene.search.spans.SpanOrQuery

All Implemented Interfaces:
  Serializable, Cloneable

    public class SpanOrQuery

extends SpanQuery
implements Cloneable

Matches the union of its clauses.

See Also:
  Serialized Form

Constructor Summary
`SpanOrQuery(SpanQuery... clauses)` Construct a SpanOrQuery merging the provided clauses.

Method Summary
`void` `addClause(SpanQuery clause)` Adds a clause to this query
`Object` `clone()` Returns a clone of this query.
`boolean` `equals(Object o)`
`void` `extractTerms(Set<Term> terms)` Expert: adds all terms occurring in this query to the terms set.
`SpanQuery[]` `getClauses()` Return the clauses whose spans are matched.
`String` `getField()` Returns the name of the field matched by this query.
`Spans` `getSpans(IndexReader reader)` Expert: Returns the matches for this query in an index.
`int` `hashCode()`
`Query` `rewrite(IndexReader reader)` Expert: called to re-write queries into primitive queries.
`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.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`

Constructor Detail

### SpanOrQuery

    public SpanOrQuery(SpanQuery... clauses)

  Construct a SpanOrQuery merging the provided clauses.

Method Detail

### addClause

    public final void addClause(SpanQuery clause)

  Adds a clause to this query

### getClauses

    public SpanQuery[] getClauses()

  Return the clauses whose spans are matched.

### getField

    public String getField()

  Description copied from class: `SpanQuery`
  Returns the name of the field matched by this query.

  Specified by:
    `getField` in class `SpanQuery`

### extractTerms

    public void extractTerms(Set<Term> terms)

  Description copied from class: `Query`
  Expert: adds all terms occurring in this query to the terms set. Only works if this query is in its `rewritten` form.

  Overrides:
    `extractTerms` in class `Query`

### clone

    public Object clone()

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

  Overrides:
    `clone` in class `Query`

### rewrite

    public Query rewrite(IndexReader reader)
                  throws IOException

  Description copied from class: `Query`
  Expert: called to re-write queries into primitive queries. For example, a PrefixQuery will be rewritten into a BooleanQuery that consists of TermQuerys.

  Overrides:
    `rewrite` in class `Query`
  Throws:
    `IOException`

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

### equals

    public boolean equals(Object o)

  Overrides:
    `equals` in class `Query`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Query`

### getSpans

    public Spans getSpans(IndexReader reader)
                   throws IOException

  Description copied from class: `SpanQuery`
  Expert: Returns the matches for this query in an index. Used internally to search for spans.

  Specified by:
    `getSpans` in class `SpanQuery`
  Throws:
    `IOException`