Text::Query::Build(3) User Contributed Perl Documentation NAME Text::Query::Build - Base class for query builders SYNOPSIS package Text::Query::BuildMy; use Text::Query::Build; use vars qw(@ISA); @ISA = qw(Text::Query::Build); DESCRIPTION This module provides a virtual base class for query builders. Query builders are called by the parser logic. A given set of functions is provided by the builder to match a Boolean logic. All the methods return a scalar corresponding to the code that performs the specified options. Parameters Q1 and Q2 are the same type of scalar as the return values. METHODS matchstring() Return a string that represent the last built expression. Two identical expressions should generate the same string. This is for testing purpose. CODE-GENERATION METHODS build_init() Called before building the expression. A chance to initialize object data. build_final_expression(Q1) Does any final processing to generate code to match a top-level expression. The return value is NOT necessarily of a type that can be passed to the other code-generation methods. build_expression(Q1,Q2) Generate code to match "Q1" OR "Q2" build_expression_finish(Q1) Generate any code needed to enclose an expression. build_conj(Q1,Q2,F) Generate code needed to match "Q1" AND "Q2". F will be true if this is the first time this method is called in a sequence of several conjunctions. build_near(Q1,Q2) Generate code needed to match "Q1" NEAR "Q2". build_concat(Q1,Q2) Generate code needed to match "Q1" immediately followed by "Q2". build_negation(Q1) Generate code needed to match NOT "Q1". build_literal(Q1) Generate code to match "Q1" as a literal. build_scope_start($scope) Generate code to enter in the $scope query context. build_scope_end($scope,Q1) Generate code needed to match "Q1" in the $scope context. build_mandatory(Q1) Generate code to match "Q1" (think + in AltaVista syntax). build_forbiden(Q1) Generate code to match NOT "Q1" (think - in AltaVista syntax). SEE ALSO Text::Query(3) AUTHORS Eric Bohlman (ebohlman@netcom.com) Loic Dachary (loic@senga.org) perl v5.32.0 2020-07-07 Text::Query::Build(3)