class TableEvaluator

An SQL-like table evaluator. More...

Full nameTelEngine::TableEvaluator
Definition#include <libs/yscript/yatescript.h>
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Methods

Protected Members


Detailed Description

An evaluator for multi-row (tables like in SQL) expressions

 TableEvaluator (const TableEvaluator& original)

TableEvaluator

Copy constructor, duplicates current state of original

Parameters:
originalEvaluator to copy

 TableEvaluator (ExpEvaluator::Parser style)

TableEvaluator

Constructor from a parser synatx style

Parameters:
styleStyle of evaluator to create

 TableEvaluator (const TokenDict* operators, const TokenDict* unaryOps)

TableEvaluator

Constructor from operator description table

Parameters:
operatorsPointer to operators synatx table
unaryOpsPointer to unary operators dictionary

 ~TableEvaluator ()

~TableEvaluator

[virtual]

Destructor

bool  evalWhere (GenObject* context = 0)

evalWhere

[virtual]

Evaluate the WHERE (selector) expression

Parameters:
contextPointer to arbitrary object to be passed to called methods

Returns: True if the current row is part of selection

bool  evalSelect (ObjList& results, GenObject* context = 0)

evalSelect

[virtual]

Evaluate the SELECT (results) expression

Parameters:
resultsList to fill with results row
contextPointer to arbitrary object to be passed to called methods

Returns: True if evaluation succeeded

unsigned int  evalLimit (GenObject* context = 0)

evalLimit

[virtual]

Evaluate the LIMIT expression and cache the result

Parameters:
contextPointer to arbitrary object to be passed to called methods

Returns: Desired maximum number or result rows

void  extender (ExpExtender* ext)

extender

Set the expression extender to use in all evaluators

Parameters:
extPointer to the extender to use, NULL to remove current

ExpEvaluator m_select

m_select

[protected]

ExpEvaluator m_where

m_where

[protected]

ExpEvaluator m_limit

m_limit

[protected]

unsigned int m_limitVal

m_limitVal

[protected]


Generated by: paulc on bussard on Thu Jul 24 18:41:02 2014, using kdoc 2.0a54.