version 1.14, 2006/01/30 16:16:38
|
version 1.14.32.1, 2007/07/19 03:23:41
|
|
|
/*//%2006//////////////////////////////////////////////////////////////////////// |
/*//%2006/////////////////////////////////////////////////////////////////////// |
// | // |
// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development | // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development |
// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems. | // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems. |
|
|
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
// | // |
//============================================================================*/ | //============================================================================*/ |
|
/* NOCHKSRC */ |
| |
/* | /* |
This file describes the language tokens possible for CQL. When a token is matched, | This file describes the language tokens possible for CQL. When a token is matched, |
|
|
#define YY_INPUT(BUF, NREAD, NREQUESTED) CQLInput(BUF, NREAD, NREQUESTED) | #define YY_INPUT(BUF, NREAD, NREQUESTED) CQLInput(BUF, NREAD, NREQUESTED) |
#endif | #endif |
| |
#ifdef CQL_DEBUG_LEXER |
|
#define DEBUG_LEX 1 |
|
#else |
|
#define DEBUG_LEX 0 |
|
#endif |
|
|
|
#include <Pegasus/Common/Config.h> | #include <Pegasus/Common/Config.h> |
#include <Pegasus/Common/CommonUTF.h> | #include <Pegasus/Common/CommonUTF.h> |
#include <Pegasus/Common/MessageLoader.h> | #include <Pegasus/Common/MessageLoader.h> |
|
|
extern CQLParserState* CQL_globalParserState; | extern CQLParserState* CQL_globalParserState; |
| |
PEGASUS_NAMESPACE_END | PEGASUS_NAMESPACE_END |
static char msg_[100]; |
|
void printf__(char * msg){ |
|
if(DEBUG_LEX == 1) |
#ifdef CQL_DEBUG_LEXER |
printf("%s\n",msg); |
#define CQL_DEBUG_TRACE(X) \ |
} |
printf(X "\n"); |
|
#define CQL_DEBUG_TRACE2(X,Y) \ |
|
printf(X "\n",Y); |
|
#else |
|
#define CQL_DEBUG_TRACE(X) |
|
#define CQL_DEBUG_TRACE2(X,Y) |
|
#endif |
| |
int lineno; | int lineno; |
| |
|
|
| |
{S}{E}{L}{E}{C}{T} { | {S}{E}{L}{E}{C}{T} { |
| |
sprintf(msg_,"LEX: %s [SELECT] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [SELECT] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return SELECT; | return SELECT; |
|
|
| |
{F}{R}{O}{M} { | {F}{R}{O}{M} { |
| |
sprintf(msg_,"LEX: %s [FROM] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [FROM] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return FROM; | return FROM; |
|
|
| |
{W}{H}{E}{R}{E} { | {W}{H}{E}{R}{E} { |
| |
sprintf(msg_,"LEX: %s [WHERE] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [WHERE] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return WHERE; | return WHERE; |
|
|
| |
{A}{N}{Y} { | {A}{N}{Y} { |
| |
sprintf(msg_,"LEX: %s [ANY] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [ANY] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return ANY; | return ANY; |
} | } |
| |
{A}{S} { | {A}{S} { |
sprintf(msg_,"LEX: %s [AS] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [AS] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return AS; | return AS; |
} | } |
| |
{A}{S}{C} { | {A}{S}{C} { |
sprintf(msg_,"LEX: %s [ASC] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [ASC] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return ASC; | return ASC; |
} | } |
| |
{B}{Y} { | {B}{Y} { |
sprintf(msg_,"LEX: %s [BY] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [BY] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return BY; | return BY; |
} | } |
| |
{D}{E}{S}{C} { | {D}{E}{S}{C} { |
sprintf(msg_,"LEX: %s [DESC] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [DESC] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return DESC; | return DESC; |
|
|
| |
| |
{D}{I}{S}{T}{I}{N}{C}{T} { | {D}{I}{S}{T}{I}{N}{C}{T} { |
sprintf(msg_,"LEX: %s [DISTINCT] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [DISTINCT] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return DISTINCT; | return DISTINCT; |
} | } |
| |
{E}{V}{E}{R}{Y} { | {E}{V}{E}{R}{Y} { |
sprintf(msg_,"LEX: %s [EVERY] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [EVERY] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return EVERY; | return EVERY; |
} | } |
| |
{F}{I}{R}{S}{T} { | {F}{I}{R}{S}{T} { |
sprintf(msg_,"LEX: %s [FIRST] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [FIRST] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return FIRST; | return FIRST; |
} | } |
| |
{I}{N} { | {I}{N} { |
sprintf(msg_,"LEX: %s [IN] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [IN] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return IN; | return IN; |
} | } |
| |
{I}{S} { | {I}{S} { |
sprintf(msg_,"LEX: %s [IS] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [IS] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return IS; | return IS; |
} | } |
| |
{I}{S}{A} { | {I}{S}{A} { |
sprintf(msg_,"LEX: %s [ISA] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [ISA] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _ISA; | return _ISA; |
} | } |
| |
{L}{I}{K}{E} { | {L}{I}{K}{E} { |
sprintf(msg_,"LEX: %s [LIKE] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [LIKE] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _LIKE; | return _LIKE; |
} | } |
| |
{O}{R}{D}{E}{R} { | {O}{R}{D}{E}{R} { |
sprintf(msg_,"LEX: %s [ORDER] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [ORDER] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return ORDER; | return ORDER; |
} | } |
| |
{S}{A}{T}{I}{S}{F}{I}{E}{S} { | {S}{A}{T}{I}{S}{F}{I}{E}{S} { |
sprintf(msg_,"LEX: %s [SATISFIES] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [SATISFIES] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return SATISFIES; | return SATISFIES; |
} | } |
| |
{T}{R}{U}{E} { | {T}{R}{U}{E} { |
sprintf(msg_,"LEX: %s [_TRUE] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [_TRUE] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _TRUE; | return _TRUE; |
} | } |
| |
{F}{A}{L}{S}{E} { | {F}{A}{L}{S}{E} { |
sprintf(msg_,"LEX: %s [_FALSE] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [_FALSE] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _FALSE; | return _FALSE; |
} | } |
| |
{N}{U}{L}{L} { | {N}{U}{L}{L} { |
sprintf(msg_,"LEX: %s [_NULL] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [_NULL] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _NULL; | return _NULL; |
} | } |
| |
{N}{O}{T} { | {N}{O}{T} { |
sprintf(msg_,"LEX: %s [NOT] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [NOT] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return NOT; | return NOT; |
} | } |
| |
{A}{N}{D} { | {A}{N}{D} { |
sprintf(msg_,"LEX: %s [AND] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [AND] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _AND; | return _AND; |
} | } |
| |
{O}{R} { | {O}{R} { |
sprintf(msg_,"LEX: %s [OR] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [OR] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _OR; | return _OR; |
|
|
// chuck | // chuck |
if (!isUTF8Str(yytext)) | if (!isUTF8Str(yytext)) |
{ | { |
sprintf(msg_,"LEX: [STRING]-> BAD UTF\n"); |
CQL_DEBUG_TRACE("LEX: [STRING]-> BAD UTF\n"); |
printf__(msg_); |
|
throw CQLSyntaxErrorException( | throw CQLSyntaxErrorException( |
MessageLoaderParms(String("CQL.CQL_y.BAD_UTF8"), | MessageLoaderParms(String("CQL.CQL_y.BAD_UTF8"), |
String("Bad UTF8 encountered parsing rule $0 in position $1."), | String("Bad UTF8 encountered parsing rule $0 in position $1."), |
|
|
memcpy(CQL_lval.strValue, yytext, n); | memcpy(CQL_lval.strValue, yytext, n); |
} | } |
CQL_lval.strValue[n] = '\0'; | CQL_lval.strValue[n] = '\0'; |
sprintf(msg_,"LEX: %s [SCOPED_PROPERTY] ", CQL_lval.strValue); |
CQL_DEBUG_TRACE2("LEX: %s [SCOPED_PROPERTY] ", CQL_lval.strValue); |
printf__(msg_); |
|
| |
return SCOPED_PROPERTY; | return SCOPED_PROPERTY; |
} | } |
| |
[-]{1}[0][Xx]{HEX_DIGIT}{HEX_DIGIT}* { | [-]{1}[0][Xx]{HEX_DIGIT}{HEX_DIGIT}* { |
sprintf(msg_,"LEX: %s [NEGATIVE_HEXADECIMAL] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [NEGATIVE_HEXADECIMAL] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
/* copy the hex value */ | /* copy the hex value */ |
|
|
} | } |
| |
[+]?[0][Xx]{HEX_DIGIT}{HEX_DIGIT}* { | [+]?[0][Xx]{HEX_DIGIT}{HEX_DIGIT}* { |
sprintf(msg_,"LEX: %s [HEXADECIMAL] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [HEXADECIMAL] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
/* copy the hex value */ | /* copy the hex value */ |
|
|
} | } |
| |
[-]{1}{BINARY_DIGIT}{BINARY_DIGIT}*{B} { | [-]{1}{BINARY_DIGIT}{BINARY_DIGIT}*{B} { |
sprintf(msg_,"LEX: %s [NEGATIVE_BINARY] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [NEGATIVE_BINARY] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
/* copy the bin value */ | /* copy the bin value */ |
|
|
} | } |
| |
[+]?{BINARY_DIGIT}{BINARY_DIGIT}*{B} { | [+]?{BINARY_DIGIT}{BINARY_DIGIT}*{B} { |
sprintf(msg_,"LEX: %s [BINARY] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [BINARY] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
/* copy the bin value */ | /* copy the bin value */ |
|
|
| |
[-]{1}{POSITIVE_DECIMAL_DIGIT}{DECIMAL_DIGIT}* { | [-]{1}{POSITIVE_DECIMAL_DIGIT}{DECIMAL_DIGIT}* { |
| |
sprintf(msg_,"LEX: %s [NEGATIVE_INTEGER] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [NEGATIVE_INTEGER] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
size_t n = strlen(yytext); | size_t n = strlen(yytext); |
|
|
| |
[+]?{DECIMAL_DIGIT}+ { | [+]?{DECIMAL_DIGIT}+ { |
| |
sprintf(msg_,"LEX: %s [INTEGER] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [INTEGER] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
size_t n = strlen(yytext); | size_t n = strlen(yytext); |
|
|
| |
[-]{1}{DECIMAL_DIGIT}*\.{DECIMAL_DIGIT}+([eE][+-]?{DECIMAL_DIGIT}+)? { | [-]{1}{DECIMAL_DIGIT}*\.{DECIMAL_DIGIT}+([eE][+-]?{DECIMAL_DIGIT}+)? { |
| |
sprintf(msg_,"LEX: %s [NEGATIVE_REAL] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [NEGATIVE_REAL] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
size_t n = strlen(yytext); | size_t n = strlen(yytext); |
|
|
| |
([+]?{DECIMAL_DIGIT}*\.{DECIMAL_DIGIT}+([eE][+-]?{DECIMAL_DIGIT}+)?)|([+]?{DECIMAL_DIGIT}+\.{DECIMAL_DIGIT}*([eE][+-]?{DECIMAL_DIGIT}+)?) { | ([+]?{DECIMAL_DIGIT}*\.{DECIMAL_DIGIT}+([eE][+-]?{DECIMAL_DIGIT}+)?)|([+]?{DECIMAL_DIGIT}+\.{DECIMAL_DIGIT}*([eE][+-]?{DECIMAL_DIGIT}+)?) { |
| |
sprintf(msg_,"LEX: %s [REAL] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [REAL] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
size_t n = strlen(yytext); | size_t n = strlen(yytext); |
|
|
/* ATTN-B: handle long literals by using yyinput(). */ | /* ATTN-B: handle long literals by using yyinput(). */ |
/* ATTN-B: Handle expansion of special characters */ | /* ATTN-B: Handle expansion of special characters */ |
| |
sprintf(msg_,"LEX: %s [STRING] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [STRING] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
/* remove any escaped \ OR escaped ' */ | /* remove any escaped \ OR escaped ' */ |
|
|
// chuck | // chuck |
if (!isUTF8Str(yytext)) | if (!isUTF8Str(yytext)) |
{ | { |
sprintf(msg_,"LEX: [STRING]-> BAD UTF\n"); |
CQL_DEBUG_TRACE("LEX: [STRING]-> BAD UTF\n"); |
printf__(msg_); |
|
throw CQLSyntaxErrorException( | throw CQLSyntaxErrorException( |
MessageLoaderParms(String("CQL.CQL_y.BAD_UTF8"), | MessageLoaderParms(String("CQL.CQL_y.BAD_UTF8"), |
String("Bad UTF8 encountered parsing rule $0 in position $1."), | String("Bad UTF8 encountered parsing rule $0 in position $1."), |
|
|
| |
\'[^\'\n]*$ { | \'[^\'\n]*$ { |
| |
sprintf(msg_,"Unterminated string"); |
CQL_DEBUG_TRACE("Unterminated string"); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
} | } |
| |
\*{1} { | \*{1} { |
sprintf(msg_,"LEX: [STAR] "); |
CQL_DEBUG_TRACE("LEX: [STAR] "); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return STAR; | return STAR; |
} | } |
| |
\/{1} { | \/{1} { |
sprintf(msg_,"LEX: [DIV] "); |
CQL_DEBUG_TRACE("LEX: [DIV] "); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return DIV; | return DIV; |
} | } |
| |
\+{1} { | \+{1} { |
sprintf(msg_,"LEX: [PLUS] "); |
CQL_DEBUG_TRACE("LEX: [PLUS] "); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return PLUS; | return PLUS; |
} | } |
| |
\-{1} { | \-{1} { |
sprintf(msg_,"LEX: [MINUS] "); |
CQL_DEBUG_TRACE("LEX: [MINUS] "); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return MINUS; | return MINUS; |
} | } |
| |
\,{1} { | \,{1} { |
sprintf(msg_,"LEX: [COMMA] "); |
CQL_DEBUG_TRACE("LEX: [COMMA] "); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return COMMA; | return COMMA; |
} | } |
| |
\.{2} { | \.{2} { |
sprintf(msg_,"LEX: [DOTDOT] "); |
CQL_DEBUG_TRACE("LEX: [DOTDOT] "); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return DOTDOT; | return DOTDOT; |
} | } |
| |
\#{1} { | \#{1} { |
sprintf(msg_,"LEX: [HASH] "); |
CQL_DEBUG_TRACE("LEX: [HASH] "); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return HASH; | return HASH; |
} | } |
| |
\.{1} { | \.{1} { |
sprintf(msg_,"LEX: [DOT] "); |
CQL_DEBUG_TRACE("LEX: [DOT] "); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return DOT; | return DOT; |
} | } |
| |
\[{1} { | \[{1} { |
sprintf(msg_,"LEX: [LBRKT] "); |
CQL_DEBUG_TRACE("LEX: [LBRKT] "); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return LBRKT; | return LBRKT; |
} | } |
| |
\]{1} { | \]{1} { |
sprintf(msg_,"LEX: [RBRKT] "); |
CQL_DEBUG_TRACE("LEX: [RBRKT] "); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return RBRKT; | return RBRKT; |
} | } |
| |
\({1} { | \({1} { |
sprintf(msg_,"LEX: [LPAR] "); |
CQL_DEBUG_TRACE("LEX: [LPAR] "); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return LPAR; | return LPAR; |
} | } |
| |
\){1} { | \){1} { |
sprintf(msg_,"LEX: [RPAR] "); |
CQL_DEBUG_TRACE("LEX: [RPAR] "); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return RPAR; | return RPAR; |
} | } |
| |
"||" { | "||" { |
sprintf(msg_,"LEX: %s [DBL_PIPE] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [DBL_PIPE] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return DBL_PIPE; | return DBL_PIPE; |
} | } |
| |
"_" { | "_" { |
sprintf(msg_,"LEX: %s [UNDERSCORE] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [UNDERSCORE] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return UNDERSCORE; | return UNDERSCORE; |
} | } |
| |
"=" { | "=" { |
sprintf(msg_,"LEX: %s [_EQ] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [_EQ] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _EQ; | return _EQ; |
|
|
| |
"<>" { | "<>" { |
| |
sprintf(msg_,"LEX: %s [_NE] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [_NE] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _NE; | return _NE; |
|
|
| |
"<=" { | "<=" { |
| |
sprintf(msg_,"LEX: %s [_LE] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [_LE] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _LE; | return _LE; |
|
|
| |
"<" { | "<" { |
| |
sprintf(msg_,"LEX: %s [_LT] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [_LT] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _LT; | return _LT; |
|
|
| |
">=" { | ">=" { |
| |
sprintf(msg_,"LEX: %s [_GE] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [_GE] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _GE; | return _GE; |
|
|
| |
">" { | ">" { |
| |
sprintf(msg_,"LEX: %s [_GT] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [_GT] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
return _GT; | return _GT; |
|
|
| |
{IDENT_CHAR_NO_NUM}({IDENT_CHAR})* { | {IDENT_CHAR_NO_NUM}({IDENT_CHAR})* { |
| |
sprintf(msg_,"LEX: %s [IDENTIFIER] ", yytext); |
CQL_DEBUG_TRACE2("LEX: %s [IDENTIFIER] ", yytext); |
printf__(msg_); |
|
CQL_globalParserState->currentTokenPos+=yyleng; | CQL_globalParserState->currentTokenPos+=yyleng; |
CQL_globalParserState->tokenCount++; | CQL_globalParserState->tokenCount++; |
{ | { |
|
|
| |
. { | . { |
CQL_lval.strValue = 0; | CQL_lval.strValue = 0; |
sprintf(msg_,"LEX::UNEXPECTED_CHAR\n"); |
CQL_DEBUG_TRACE("LEX::UNEXPECTED_CHAR\n"); |
printf__(msg_); |
|
| |
return UNEXPECTED_CHAR; | return UNEXPECTED_CHAR; |
} | } |