C# Class Lucene.Net.QueryParsers.Flexible.Standard.Processors.RemoveEmptyNonLeafQueryNodeProcessor

This processor removes every IQueryNode that is not a leaf and has not children. If after processing the entire tree the root node is not a leaf and has no children, a MatchNoDocsQueryNode object is returned. This processor is used at the end of a pipeline to avoid invalid query node tree structures like a GroupQueryNode or ModifierQueryNode with no children.
Inheritance: QueryNodeProcessorImpl
显示文件 Open project: apache/lucenenet

Public Methods

Method Description
Process ( IQueryNode queryTree ) : IQueryNode
RemoveEmptyNonLeafQueryNodeProcessor ( ) : Lucene.Net.QueryParsers.Flexible.Core.Nodes

Protected Methods

Method Description
PostProcessNode ( IQueryNode node ) : IQueryNode
PreProcessNode ( IQueryNode node ) : IQueryNode
SetChildrenOrder ( IList children ) : IList

Method Details

PostProcessNode() protected method

protected PostProcessNode ( IQueryNode node ) : IQueryNode
node IQueryNode
return IQueryNode

PreProcessNode() protected method

protected PreProcessNode ( IQueryNode node ) : IQueryNode
node IQueryNode
return IQueryNode

Process() public method

public Process ( IQueryNode queryTree ) : IQueryNode
queryTree IQueryNode
return IQueryNode

RemoveEmptyNonLeafQueryNodeProcessor() public method

public RemoveEmptyNonLeafQueryNodeProcessor ( ) : Lucene.Net.QueryParsers.Flexible.Core.Nodes
return Lucene.Net.QueryParsers.Flexible.Core.Nodes

SetChildrenOrder() protected method

protected SetChildrenOrder ( IList children ) : IList
children IList
return IList