pybool_ir.query.parser#

Base classes for representing queries.

Classes

QueryParser()

Base class for implementing query parsers.

class pybool_ir.query.parser.QueryParser#

Bases: ABC

Base class for implementing query parsers. A query parser should be able to parse a raw query into an AST node, and then format that AST node into a lucene query.

abstract format(node: ASTNode) str#

Format an AST node into a raw query.

abstract parse_ast(raw_query: str) ASTNode#

Parse a raw query into an AST node.

abstract parse_lucene(raw_query: str) Query#

Parse a raw query into a lucene query.

transform(node: ASTNode) Query#

Transform an AST node into a lucene query.