TableEvaluator Class Reference

An SQL-like table evaluator. More...

#include <yateclass.h>

List of all members.

Public Member Functions

 TableEvaluator (const TableEvaluator &original)
 TableEvaluator (ExpEvaluator::Parser style)
 TableEvaluator (const TokenDict *operators)
virtual ~TableEvaluator ()
virtual bool evalWhere ()
virtual bool evalSelect (ObjList &results)
virtual unsigned int evalLimit ()
void extender (ExpExtender *ext)

Protected Attributes

ExpEvaluator m_select
ExpEvaluator m_where
ExpEvaluator m_limit
unsigned int m_limitVal


Detailed Description

An SQL-like table evaluator.

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


Constructor & Destructor Documentation

TableEvaluator ( const TableEvaluator original  ) 

Copy constructor, duplicates current state of original

Parameters:
original Evaluator to copy

Constructor from a parser synatx style

Parameters:
style Style of evaluator to create

TableEvaluator ( const TokenDict operators  ) 

Constructor from operator description table

Parameters:
operators Pointer to operators synatx table

virtual ~TableEvaluator (  )  [virtual]

Destructor


Member Function Documentation

virtual bool evalWhere (  )  [virtual]

Evaluate the WHERE (selector) expression

Returns:
True if the current row is part of selection

virtual bool evalSelect ( ObjList results  )  [virtual]

Evaluate the SELECT (results) expression

Parameters:
results List to fill with results row
Returns:
True if evaluation succeeded

virtual unsigned int evalLimit (  )  [virtual]

Evaluate the LIMIT expression and cache the result

Returns:
Desired maximum number or result rows

void extender ( ExpExtender ext  ) 

Set the expression extender to use in all evaluators

Parameters:
ext Pointer to the extender to use, NULL to remove current


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

Generated on Sat May 28 18:28:23 2011 for Yate by  doxygen 1.5.6