diff options
author | drh <drh@noemail.net> | 2001-10-13 02:59:08 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2001-10-13 02:59:08 +0000 |
commit | bf4133cba1b36b2218dbc9c86d6e8a8cc365fb69 (patch) | |
tree | f5ca88dc2aff75192b5482ad8083de8b4e3264d0 /src/tokenize.c | |
parent | 99fcd718e12cb7564f46b07c2623feca32f94b7e (diff) | |
download | sqlite-bf4133cba1b36b2218dbc9c86d6e8a8cc365fb69.tar.gz sqlite-bf4133cba1b36b2218dbc9c86d6e8a8cc365fb69.zip |
2.0.3 (CVS 287)
FossilOrigin-Name: 75e90cf09b64ee1fcb39a711fc9ac6d3d2b849a5
Diffstat (limited to 'src/tokenize.c')
-rw-r--r-- | src/tokenize.c | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/src/tokenize.c b/src/tokenize.c index 673a6c8e1..52b23b210 100644 --- a/src/tokenize.c +++ b/src/tokenize.c @@ -15,7 +15,7 @@ ** individual tokens and sends those tokens one-by-one over to the ** parser for analysis. ** -** $Id: tokenize.c,v 1.26 2001/10/09 04:19:47 drh Exp $ +** $Id: tokenize.c,v 1.27 2001/10/13 02:59:09 drh Exp $ */ #include "sqliteInt.h" #include "os.h" @@ -185,6 +185,10 @@ int sqliteGetToken(const char *z, int *tokenType){ *tokenType = TK_SLASH; return 1; } + case '%': { + *tokenType = TK_REM; + return 1; + } case '=': { *tokenType = TK_EQ; return 1 + (z[1]=='='); @@ -196,6 +200,9 @@ int sqliteGetToken(const char *z, int *tokenType){ }else if( z[1]=='>' ){ *tokenType = TK_NE; return 2; + }else if( z[1]=='<' ){ + *tokenType = TK_LSHIFT; + return 2; }else{ *tokenType = TK_LT; return 1; @@ -205,6 +212,9 @@ int sqliteGetToken(const char *z, int *tokenType){ if( z[1]=='=' ){ *tokenType = TK_GE; return 2; + }else if( z[1]=='>' ){ + *tokenType = TK_RSHIFT; + return 2; }else{ *tokenType = TK_GT; return 1; @@ -221,7 +231,7 @@ int sqliteGetToken(const char *z, int *tokenType){ } case '|': { if( z[1]!='|' ){ - *tokenType = TK_ILLEGAL; + *tokenType = TK_BITOR; return 1; }else{ *tokenType = TK_CONCAT; @@ -232,6 +242,14 @@ int sqliteGetToken(const char *z, int *tokenType){ *tokenType = TK_COMMA; return 1; } + case '&': { + *tokenType = TK_BITAND; + return 1; + } + case '~': { + *tokenType = TK_BITNOT; + return 1; + } case '\'': case '"': { int delim = z[0]; for(i=1; z[i]; i++){ |