diff options
| author | Kai Stevenson <kai@kaistevenson.com> | 2023-02-15 15:53:33 -0800 |
|---|---|---|
| committer | Kai Stevenson <kai@kaistevenson.com> | 2023-02-15 15:53:33 -0800 |
| commit | f5985c65df468e49109febcad2a3937aea801b89 (patch) | |
| tree | 6c3d9bd1074c972f013f628d72a91374b8d98f5a /parse.h | |
| parent | 7e696a40e51aa35b003aa9c3fc72139b34cddc71 (diff) | |
types. eq() internal function
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); |
