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

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `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, removeChildren, removeFromParent, 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, removeChildren, removeFromParent, 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`

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