Interfaces and implementations used by query node processors

Query Node Processors

The package org.apache.lucene.queryParser.processors contains interfaces that should be implemented by every query node processor.

The interface that every query node processor should implement is {@link org.apache.lucene.queryParser.core.processors.QueryNodeProcessor}.

A query node processor should be used to process a {@link org.apache.lucene.queryParser.core.nodes.QueryNode} tree. {@link org.apache.lucene.queryParser.core.nodes.QueryNode} trees can be programmatically created or generated by a text parser. See {@link org.apache.lucene.queryParser.core.parser} for more details about text parsers.

A query node processor should be used to process a {@link org.apache.lucene.queryParser.core.nodes.QueryNode} tree. {@link org.apache.lucene.queryParser.core.nodes.QueryNode} trees can be programmatically created or generated by a text parser. See {@link org.apache.lucene.queryParser.core.parser} for more details about text parsers.

A pipeline of processors can be assembled using {@link org.apache.lucene.queryParser.core.processors.QueryNodeProcessorPipeline}.

Implementors may want to extend {@link org.apache.lucene.queryParser.core.processors.QueryNodeProcessorImpl}, which simplifies the implementation, because it walks automatically the {@link org.apache.lucene.queryParser.core.nodes.QueryNode}. See {@link org.apache.lucene.queryParser.core.processors.QueryNodeProcessorImpl} for more details.