# class TableEvaluator | An SQL-like table evaluator. More...
Full name | `TelEngine::TableEvaluator`
Definition | `#include <libs/yscript/yatescript.h>`
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

#### Public Methods

- TableEvaluator (const TableEvaluator& original)
- TableEvaluator (ExpEvaluator::Parser style)
- TableEvaluator (const TokenDict* operators, const TokenDict* unaryOps)
- virtual ~TableEvaluator ()
- virtual bool evalWhere (GenObject* context = 0)
- virtual bool evalSelect (ObjList& results, GenObject* context = 0)
- virtual unsigned int evalLimit (GenObject* context = 0)
- void extender (ExpExtender* ext)

#### Protected Members

- ExpEvaluator m_select
- ExpEvaluator m_where
- ExpEvaluator m_limit
- unsigned int m_limitVal

## 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:

original | Evaluator to copy

TableEvaluator (ExpEvaluator::Parser style) | ### TableEvaluator

Constructor from a parser synatx style

Parameters:

style | Style of evaluator to create

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

Constructor from operator description table

Parameters:

operators | Pointer to operators synatx table
unaryOps | Pointer to unary operators dictionary

~TableEvaluator () | ### ~TableEvaluator

[virtual]

Destructor

bool evalWhere (GenObject* context = 0) | ### evalWhere

[virtual]

Evaluate the WHERE (selector) expression

Parameters:

context | Pointer 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:

results | List to fill with results row
context | Pointer 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:

context | Pointer 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:

ext | Pointer 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 Mon Feb 10 13:15:47 2014, using kdoc 2.0a54.