org.apache.lucene.queryparser.flexible.standard.nodes

## Class PrefixWildcardQueryNode

- java.lang.Object
- - org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
  - - org.apache.lucene.queryparser.flexible.core.nodes.FieldQueryNode
    - - org.apache.lucene.queryparser.flexible.standard.nodes.WildcardQueryNode
      - - org.apache.lucene.queryparser.flexible.standard.nodes.PrefixWildcardQueryNode

All Implemented Interfaces:
  Cloneable, FieldableNode, FieldValuePairQueryNode<CharSequence>, QueryNode, TextableQueryNode, ValueQueryNode<CharSequence>

    public class PrefixWildcardQueryNode
    extends WildcardQueryNode

A `PrefixWildcardQueryNode` represents wildcardquery that matches abc* or *. This does not apply to phrases, this is a special case on the original lucene parser. TODO: refactor the code to remove this special case from the parser. and probably do it on a Processor

### Field Summary

### Fields inherited from class org.apache.lucene.queryparser.flexible.core.nodes.FieldQueryNode

`begin, end, field, positionIncrement, text`

### Fields inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl

`PLAINTEXT_FIELD_NAME, toQueryStringIgnoreFields`

### Constructor Summary

Constructors
Constructor and Description
`PrefixWildcardQueryNode(CharSequence field, CharSequence text, int begin, int end)`
`PrefixWildcardQueryNode(FieldQueryNode fqn)`

### Method Summary

Methods
`PrefixWildcardQueryNode` `cloneTree()` Recursive clone the QueryNode tree The tags are not copied to the new tree when you call the cloneTree() method
`String` `toString()` Every implementation of this class should return pseudo xml like this: For FieldQueryNode: <field start='1' end='2' field='subject' text='foo'/>

### Methods inherited from class org.apache.lucene.queryparser.flexible.standard.nodes.WildcardQueryNode

`toQueryString`

### Methods inherited from class org.apache.lucene.queryparser.flexible.core.nodes.FieldQueryNode

`getBegin, getEnd, getField, getFieldAsString, getPositionIncrement, getTermEscaped, getTermEscapeQuoted, getText, getTextAsString, getValue, setBegin, setEnd, setField, setPositionIncrement, setText, setValue`

### Methods inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl

`add, add, allocate, clone, containsTag, getChildren, getParent, getTag, getTagMap, isDefaultField, isLeaf, isRoot, set, setLeaf, setTag, unsetTag`

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

`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.apache.lucene.queryparser.flexible.core.nodes.QueryNode

`add, add, containsTag, getChildren, getParent, getTag, getTagMap, isLeaf, set, setTag, unsetTag`

### Constructor Detail

#### PrefixWildcardQueryNode

    public PrefixWildcardQueryNode(CharSequence field,
                           CharSequence text,
                           int begin,
                           int end)

Parameters:
  `field` - - field name
  `text` - - value including the wildcard
  `begin` - - position in the query string
  `end` - - position in the query string

#### PrefixWildcardQueryNode

    public PrefixWildcardQueryNode(FieldQueryNode fqn)

### Method Detail

#### toString

    public String toString()

Description copied from class: `QueryNodeImpl`
Every implementation of this class should return pseudo xml like this: For FieldQueryNode: <field start='1' end='2' field='subject' text='foo'/>

Specified by:
  `toString` in interface `QueryNode`
Overrides:
  `toString` in class `WildcardQueryNode`
See Also:
  `QueryNode.toString()`

#### cloneTree

    public PrefixWildcardQueryNode cloneTree()
                                      throws CloneNotSupportedException

Description copied from interface: `QueryNode`
Recursive clone the QueryNode tree The tags are not copied to the new tree when you call the cloneTree() method

Specified by:
  `cloneTree` in interface `QueryNode`
Overrides:
  `cloneTree` in class `WildcardQueryNode`
Returns:
  the cloned tree
Throws:
  `CloneNotSupportedException`