X-Git-Url: https://git.tokkee.org/?p=sysdb.git;a=blobdiff_plain;f=src%2Finclude%2Ffrontend%2Fparser.h;h=738071b75da0344a9b09e48cdc3e2d4226ea6135;hp=66a1a5c4a4da8bf90f9981752961637de243725d;hb=e7edc6432f63f36a2508b4c426876593678c8434;hpb=51b387d139a2c8e61224586d9543d7cef2aaf6a8 diff --git a/src/include/frontend/parser.h b/src/include/frontend/parser.h index 66a1a5c..738071b 100644 --- a/src/include/frontend/parser.h +++ b/src/include/frontend/parser.h @@ -28,16 +28,26 @@ #ifndef SDB_FRONTEND_PARSER_H #define SDB_FRONTEND_PARSER_H 1 +#include "core/store.h" #include "utils/llist.h" #ifdef __cplusplus extern "C" { #endif +/* parser modes */ +enum { + SDB_PARSE_DEFAULT = 0, + SDB_PARSE_EXPR, +}; + /* YY_EXTRA data */ typedef struct { /* list of sdb_conn_node_t objects */ sdb_llist_t *parsetree; + + /* parser mode */ + int mode; } sdb_fe_yyextra_t; /* see yyscan_t */ @@ -52,6 +62,9 @@ sdb_fe_scanner_destroy(sdb_fe_yyscan_t scanner); int sdb_fe_yyparse(sdb_fe_yyscan_t scanner); +sdb_store_matcher_t * +sdb_fe_parse_matcher(const char *expr, int len); + #ifdef __cplusplus } /* extern "C" */ #endif