diff options
Diffstat (limited to 'parse.h')
| -rw-r--r-- | parse.h | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -10,8 +10,15 @@ typedef enum SymbolProvince { KEY_REF, LITERAL } prov_t; +typedef enum LiteralType { + NO_TYPE, + INT, + FLOAT, + STRING +} litType_t; typedef struct Symbol { prov_t province; + litType_t litType; void* name; struct Symbol** args; int argCount; @@ -20,6 +27,10 @@ typedef struct SymbolSet { sym_t** symbols; int count; } symset_t; + +int symtoi(sym_t* symbol); +float symtof(sym_t* symbol); +char* symtos(sym_t* symbol); void symbol_add_arg(sym_t* symbol, sym_t* arg); void symset_add_symbol(symset_t* symbolSet, sym_t* symbol); symset_t* parse_symbols(char** str); |
