summaryrefslogtreecommitdiffstats
path: root/ctok.h
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2008-02-19 17:38:37 +0000
committerRainer Gerhards <rgerhards@adiscon.com>2008-02-19 17:38:37 +0000
commit7a146af86f153a14b525333df795b78e01b63b4a (patch)
treea1b14db282b9f598c14f4325613094f983df07af /ctok.h
parentb5a09481faa2eda03b568839ed724970bc8a1adc (diff)
downloadrsyslog-7a146af86f153a14b525333df795b78e01b63b4a.tar.gz
rsyslog-7a146af86f153a14b525333df795b78e01b63b4a.tar.xz
rsyslog-7a146af86f153a14b525333df795b78e01b63b4a.zip
- begun implementation of expression parsing logic
- implemented, simpstr, var, number in tokenizer
Diffstat (limited to 'ctok.h')
-rw-r--r--ctok.h50
1 files changed, 28 insertions, 22 deletions
diff --git a/ctok.h b/ctok.h
index b02a83c2..56133e4e 100644
--- a/ctok.h
+++ b/ctok.h
@@ -27,28 +27,34 @@
/* the tokens... I use numbers below so that the tokens can be easier
* identified in debug output. */
-typedef enum {
- ctok_INVALID = 0,
- ctok_OR = 1,
- ctok_AND = 2,
- ctok_PLUS = 3,
- ctok_MINUS = 4,
- ctok_TIMES = 5, /* "*" */
- ctok_DIV = 6,
- ctok_MOD = 7,
- ctok_NOT = 8,
- ctok_RPAREN = 9,
- ctok_LPAREN = 10,
- ctok_COMMA = 11,
- ctok_DOLLAR = 12,
- ctok_QUOTE = 13,
- ctok_DBL_QUOTE = 14,
- ctok_CMP_EQ = 15,
- ctok_CMP_NEQ = 16,
- ctok_CMP_LT = 17,
- ctok_CMP_GT = 18,
- ctok_CMP_LTEQ = 19,
- ctok_CMP_GTEQ = 20,
+typedef struct {
+ enum {
+ ctok_INVALID = 0,
+ ctok_OR = 1,
+ ctok_AND = 2,
+ ctok_PLUS = 3,
+ ctok_MINUS = 4,
+ ctok_TIMES = 5, /* "*" */
+ ctok_DIV = 6,
+ ctok_MOD = 7,
+ ctok_NOT = 8,
+ ctok_RPAREN = 9,
+ ctok_LPAREN = 10,
+ ctok_COMMA = 11,
+ ctok_SYSVAR = 12,
+ ctok_MSGVAR = 13,
+ ctok_SIMPSTR = 14,
+ ctok_TPLSTR = 15,
+ ctok_CMP_EQ = 16,
+ ctok_CMP_NEQ = 17,
+ ctok_CMP_LT = 18,
+ ctok_CMP_GT = 19,
+ ctok_CMP_LTEQ = 20,
+ ctok_CMP_GTEQ = 21,
+ ctok_NUMBER = 22
+ } tok;
+ rsCStrObj *pstrVal;
+ int64 intVal;
} ctok_token_t;
/* the ctokession object */