PSParseTreeFactory Class Reference

Factory class for building parse tree constructs. More...

List of all members.

Public Member Functions

 ~PSParseTreeFactory ()
 Destructor.

Static Public Member Functions

static AutoPtr
< PSNonTerminalParseNode
BuildBinaryComparisonFilter (SEComparisonType in_filterType, const simba_wstring &in_value, PSLiteralType in_valueType, const simba_wstring &in_colName, const simba_wstring &in_tabName=PS_EMPTY_STR, const simba_wstring &in_schName=PS_EMPTY_STR, const simba_wstring &in_catName=PS_EMPTY_STR)
 Builds a binary comparison filter condition in parse tree form.
static AutoPtr
< PSNonTerminalParseNode
BuildColumnReference (const simba_wstring &in_colName, const simba_wstring &in_tabName=PS_EMPTY_STR, const simba_wstring &in_schName=PS_EMPTY_STR, const simba_wstring &in_catName=PS_EMPTY_STR)
 Builds a PS_NT_COLUMN_REFERENCE node.
static AutoPtr
< PSNonTerminalParseNode
BuildCompoundFilter (PSNonTerminalParseNode *in_lFilter, PSNonTerminalParseNode *in_rFilter, PSNonTerminalType in_filterType)
 Builds a compound filter.
static AutoPtr
< PSNonTerminalParseNode
BuildIsNullFilter (bool in_isNull, const simba_wstring &in_colName, const simba_wstring &in_tabName=PS_EMPTY_STR, const simba_wstring &in_schName=PS_EMPTY_STR, const simba_wstring &in_catName=PS_EMPTY_STR)
 Builds a unary IS [NOT] NULL filter condition in parse tree form.

Protected Member Functions

 PSParseTreeFactory ()
 Constructor.

Detailed Description

Factory class for building parse tree constructs.


Constructor & Destructor Documentation

Destructor.

PSParseTreeFactory (  )  [protected]

Constructor.


Member Function Documentation

static AutoPtr<PSNonTerminalParseNode> BuildBinaryComparisonFilter ( SEComparisonType  in_filterType,
const simba_wstring in_value,
PSLiteralType  in_valueType,
const simba_wstring in_colName,
const simba_wstring in_tabName = PS_EMPTY_STR,
const simba_wstring in_schName = PS_EMPTY_STR,
const simba_wstring in_catName = PS_EMPTY_STR 
) [static]

Builds a binary comparison filter condition in parse tree form.

The binary filter _MUST_ have the following form: Column FilterType Value

Examples: C1 > 0 C2 = 10 C3 != 'Simba'

Parameters:
in_filterType The type of filter condition to use for the comparison.
in_value The value to which to compare in_col1.
in_valueType The type of literal of in_value.
in_colName The name of the column (the left operand of the filter).
in_tabName The table name of the column.
in_schName The schema name of the column.
in_catName The catalog name of the column.
Returns:
The parse tree form of the given filter condition. (OWN)
static AutoPtr<PSNonTerminalParseNode> BuildColumnReference ( const simba_wstring in_colName,
const simba_wstring in_tabName = PS_EMPTY_STR,
const simba_wstring in_schName = PS_EMPTY_STR,
const simba_wstring in_catName = PS_EMPTY_STR 
) [static]

Builds a PS_NT_COLUMN_REFERENCE node.

Parameters:
in_colName The name of the column for the given column.
in_tabName The name of the table for the given column.
in_schName The name of the schema for the given column.
in_catName The name of the catalog for the given column.
Returns:
A PS_NT_COLUMN_REFERENCE node for the given column. (OWN)
static AutoPtr<PSNonTerminalParseNode> BuildCompoundFilter ( PSNonTerminalParseNode in_lFilter,
PSNonTerminalParseNode in_rFilter,
PSNonTerminalType  in_filterType 
) [static]

Builds a compound filter.

Parameters:
in_lFilter The left operand for the compound filter. (OWN)
in_rFilter The right operand for the compound filter. (OWN)
in_filterType The compound filter type (e.g. PS_NT_AND, PS_NT_OR)
Exceptions:
SEInvalidArgumentException if in_filterType is not PS_NT_AND or PS_NT_OR.
Returns:
The parse tree form of the given compound filter. (OWN)
static AutoPtr<PSNonTerminalParseNode> BuildIsNullFilter ( bool  in_isNull,
const simba_wstring in_colName,
const simba_wstring in_tabName = PS_EMPTY_STR,
const simba_wstring in_schName = PS_EMPTY_STR,
const simba_wstring in_catName = PS_EMPTY_STR 
) [static]

Builds a unary IS [NOT] NULL filter condition in parse tree form.

The unary filter _MUST_ have the following form: Column IS [NOT] NULL

Examples: C1 IS NULL C1 IS NOT NULL

Parameters:
in_isNull True if an IS NULL filter should be built; false if an IS NOT NULL filter should be built.
in_colName The name of the column (the operand of the filter).
in_tabName The table name of the column.
in_schName The schema name of the column.
in_catName The catalog name of the column.
Returns:
The parse tree form of the given filter condition. (OWN)

The documentation for this class was generated from the following file:

Generated on Wed May 17 14:21:18 2017 for SimbaEngine 10.1.3.1011 by simba