Text::Query::Parse
Text::Query::Parse(3)User Contributed Perl DocumentationText::Query::Parse(3)
NAME
Text::Query::Parse - Base class for query parsers
SYNOPSIS
package Text::Query::ParseThisSyntax;
use Text::Query::Parse;
use vars qw(@ISA);
@ISA = qw(Text::Query::Parse);
DESCRIPTION
This module provides a virtual base class for query parsers.
It defines the "prepare" method that is called by the "Text::Query"
object to compile the query string.
MEMBERS
-build Pointer to a Text::Query::Build object.
scope Scope stack. Defines the context in which the query must be
solved.
token The current token. Destroyed by "prepare".
tokens A reference to the list of all the tokens. Filled by
parse_tokens. Destroyed by "prepare".
parseopts A reference to a hash table containing all the parameters
given to the "prepare" function.
-verbose Integer indicating the desired verbose level.
METHODS
prepare (QSTRING [OPTIONS])
Compiles the query expression in "QSTRING" to internal form and
sets any options. First calls "build_init" to reset the builder
and destroy the "token" and "tokens" members. Then calls
"parse_tokens" to fill the "tokens" member. Then calls "expres-
sion" to use the tokens from "tokens". The "expression" is
expected to call the "build_*" functions to build the compiled
expression. At last calls "build_final_expression" with the result
of "expression".
A derived parser must redefine this function to define default
values for specific options.
expression ()
Must be redefined by derived package. Returns the internal form of
the question built from "build_*" functions using the "tokens".
parse_tokens (QSTRING)
Must be redefined by derived package. Parses the "QSTRING" scalar
and fills the "tokens" member with lexical units.
build_*
Shortcuts to the corresponding function of the Text::Query::Build
object found in the "-build" member.
OPTIONS
These are the options of the "prepare" method and the constructor.
-quotes defaults to \’\"
Defines the quote characters.
-case defaults to 0
If true, do case-sensitive match.
-litspace defaults to 0
If true, match spaces (except between operators) in "QSTRING" lit-
erally. If false, match spaces as "\s+".
-regexp defaults to 0
If true, treat patterns in "QSTRING" as regular expressions rather
than literal text.
-whole defaults to 0
If true, match whole words only, not substrings of words.
SEE ALSO
Text::Query(3)
AUTHORS
Eric Bohlman (ebohlman@netcom.com)
Loic Dachary (loic@senga.org)
perl v5.8.8 1999-06-19 Text::Query::Parse(3)