ExpressionParser Struct Reference

Collaboration diagram for ExpressionParser:

Collaboration graph
[legend]

Detailed Description

The Parser.

Data Fields

int state
LCHAR lhs [MAX_STRING_LEN]
LCHAR op [MAX_STRING_LEN]
LCHAR identifiers [MAX_RHS_IDENTIFIERS][MAX_STRING_LEN]
size_t idCount
LCHARptokenBuf
HashMap * pfunctions
FunctionCallback functions [MAX_FUNCTION_CALLBACKS]
FunctionCallbacknext
SR_SemprocFunctionPtr pfunction
void * userData
LCHAR functionName [MAX_STRING_LEN]
ESR_BOOL needToExecuteFunction

Field Documentation

int ExpressionParser::state

The current state

LCHAR ExpressionParser::lhs[MAX_STRING_LEN]

buffer for holding the token on the lhs of equal sign

LCHAR ExpressionParser::op[MAX_STRING_LEN]

buffer for holding the operator (which may be more than 1 char in the future!!!)

LCHAR ExpressionParser::identifiers[MAX_RHS_IDENTIFIERS][MAX_STRING_LEN]

buffers for holding the idetifiers encountered on the rhs of this expression

size_t ExpressionParser::idCount

the number of identifiers encountered

LCHAR* ExpressionParser::ptokenBuf

pointer to the appropriate buffer (above) for storing the next token encountered which may be an operator, identifier, etc...

HashMap* ExpressionParser::pfunctions

hashtable used for keeping track of registered function callbacks

FunctionCallback ExpressionParser::functions[MAX_FUNCTION_CALLBACKS]

Array storing all the function callbacks

FunctionCallback* ExpressionParser::next

Pointer to the next available function callback slot in the array

SR_SemprocFunctionPtr ExpressionParser::pfunction

Pointer to the current function to carry out in this expression (only one per expression !!!) Nesting of functions is NOT SUPPORTED

void* ExpressionParser::userData

Reference to current user data

LCHAR ExpressionParser::functionName[MAX_STRING_LEN]

The current function name

ESR_BOOL ExpressionParser::needToExecuteFunction

Indicates when a function needs to be executed at the end of a statement.


Generated on Thu May 1 15:37:28 2008 for SREC by  doxygen 1.5.3