org.apache.lucene.queryparser.flexible.core.parser (Lucene 10.5.1 queryparser API)
Description: declaration: package: org.apache.lucene.queryparser.flexible.core.parser

# Package org.apache.lucene.queryparser.flexible.core.parser

package org.apache.lucene.queryparser.flexible.core.parser
Necessary interfaces to implement text parsers.

## Parser

The package `org.apache.lucene.queryparser.flexible.parser` contains interfaces that should be implemented by the parsers.

Parsers produce QueryNode Trees from a string object. These package still needs some work to add support to for multiple parsers.

Features that should be supported for the future, related with the parser:

- QueryNode tree should be able convertible to any parser syntax.
- The query syntax should support calling other parsers.
- QueryNode tree created by multiple parsers.

- Related Packages
  Package
  Description
  org.apache.lucene.queryparser.flexible.core
  Core classes of the flexible query parser framework.
- Class
  Description
  EscapeQuerySyntax
  A parser needs to implement `EscapeQuerySyntax` to allow the QueryNode to escape the queries, when the toQueryString method is called.
  EscapeQuerySyntax.Type
  Type of escaping: String for escaping syntax, NORMAL for escaping reserved words (like AND) in terms
  SyntaxParser
  A parser needs to implement `SyntaxParser` interface