]> Dogcows Code - chaz/openbox/blobdiff - openbox/parse.h
prefix key bindnigs with 'kbind'
[chaz/openbox] / openbox / parse.h
index a267757c8d94561562993adf478812b4a76dd2c1..bd6c03f8bfe01ad2866edd824097bbdafd6e3b03 100644 (file)
@@ -5,13 +5,12 @@
 #include "parse.tab.h"
 
 typedef enum {
-    TOKEN_REAL,
-    TOKEN_INTEGER,
-    TOKEN_STRING,
-    TOKEN_IDENTIFIER,
-    TOKEN_BOOL,
-    TOKEN_LBRACKET   = '(',
-    TOKEN_RBRACKET   = ')',
+    TOKEN_REAL       = REAL,
+    TOKEN_INTEGER    = INTEGER,
+    TOKEN_STRING     = STRING,
+    TOKEN_IDENTIFIER = IDENTIFIER,
+    TOKEN_BOOL       = BOOL,
+    TOKEN_LIST,
     TOKEN_LBRACE     = '{',
     TOKEN_RBRACE     = '}',
     TOKEN_EQUALS     = '=',
@@ -19,7 +18,12 @@ typedef enum {
     TOKEN_NEWLINE    = '\n'
 } ParseTokenType;
 
-typedef void (*ParseFunc)(ParseTokenType type, union ParseToken token);
+typedef struct {
+    ParseTokenType type;
+    union ParseTokenData data;
+} ParseToken;
+
+typedef void (*ParseFunc)(ParseToken *token);
 
 void parse_startup();
 void parse_shutdown();
@@ -33,7 +37,7 @@ void parse_reg_section(char *section, ParseFunc func);
 
 
 /* Free a parsed token's allocated memory */
-void parse_free_token(ParseTokenType type, union ParseToken token);
+void parse_free_token(ParseToken *token);
 
 /* Display an error message while parsing.
    found in parse.yacc */
This page took 0.02104 seconds and 4 git commands to generate.