# Package org.apache.lucene.queryparser.flexible.standard.processors

Lucene Query Node Processors.

## Lucene Query Node Processors

The package org.apache.lucene.queryparser.flexible.standard.processors contains every processor needed to assembly a pipeline that modifies the query node tree according to the actual Lucene queries.

These processors are already assembled correctly in the StandardQueryNodeProcessorPipeline.

- Class Summary
  Class | Description
  --- | ---
  AllowLeadingWildcardProcessor | This processor verifies if `StandardQueryConfigHandler.ConfigurationKeys.ALLOW_LEADING_WILDCARD` is defined in the `QueryConfigHandler`.
  AnalyzerQueryNodeProcessor | This processor verifies if `StandardQueryConfigHandler.ConfigurationKeys.ANALYZER` is defined in the `QueryConfigHandler`.
  BooleanQuery2ModifierNodeProcessor | This processor is used to apply the correct `ModifierQueryNode` to `BooleanQueryNode`s children.
  BooleanSingleChildOptimizationQueryNodeProcessor | This processor removes every `BooleanQueryNode` that contains only one child and returns this child.
  BoostQueryNodeProcessor | This processor iterates the query node tree looking for every `FieldableNode` that has `StandardQueryConfigHandler.ConfigurationKeys.BOOST` in its config.
  DefaultPhraseSlopQueryNodeProcessor | This processor verifies if `StandardQueryConfigHandler.ConfigurationKeys.PHRASE_SLOP` is defined in the `QueryConfigHandler`.
  FuzzyQueryNodeProcessor | This processor iterates the query node tree looking for every `FuzzyQueryNode`, when this kind of node is found, it checks on the query configuration for `StandardQueryConfigHandler.ConfigurationKeys.FUZZY_CONFIG`, gets the fuzzy prefix length and default similarity from it and set to the fuzzy node.
  IntervalQueryNodeProcessor | This processor makes sure that `StandardQueryConfigHandler.ConfigurationKeys.ANALYZER` is defined in the `QueryConfigHandler` and injects this analyzer into `IntervalQueryNode`s.
  MatchAllDocsQueryNodeProcessor | This processor converts every `WildcardQueryNode` that is "*:*" to `MatchAllDocsQueryNode`.
  MultiFieldQueryNodeProcessor | This processor is used to expand terms so the query looks for the same term in different fields.
  MultiTermRewriteMethodProcessor | This processor instates the default `MultiTermQuery.RewriteMethod`, `MultiTermQuery.CONSTANT_SCORE_BLENDED_REWRITE`, for multi-term query nodes.
  OpenRangeQueryNodeProcessor | Processes `TermRangeQuery`s with open ranges.
  PhraseSlopQueryNodeProcessor | This processor removes invalid `SlopQueryNode` objects in the query node tree.
  PointQueryNodeProcessor | This processor is used to convert `FieldQueryNode`s to `PointRangeQueryNode`s.
  PointRangeQueryNodeProcessor | This processor is used to convert `TermRangeQueryNode`s to `PointRangeQueryNode`s.
  RegexpQueryNodeProcessor | Processor for Regexp queries.
  RemoveEmptyNonLeafQueryNodeProcessor | This processor removes every `QueryNode` that is not a leaf and has not children.
  StandardQueryNodeProcessorPipeline | This pipeline has all the processors needed to process a query node tree, generated by `StandardSyntaxParser`, already assembled.
  TermRangeQueryNodeProcessor | This processors process `TermRangeQueryNode`s.
  WildcardQueryNodeProcessor | The `StandardSyntaxParser` creates `PrefixWildcardQueryNode` nodes which have values containing the prefixed wildcard.