4 #define VOID(var) ((void *) &var)
5 #define IS_LITERAL(k) (k == BOOL_LITERAL || \
14 typedef enum TypeEnum
{
22 typedef enum KindEnum
{
50 //IDENTIFIER defined as token
51 //INT_LITERAL, BOOL_LITERAL, CHAR_LITERAL defined as tokens
60 char *type_get_lexeme(Type type
);
61 Type
type_get_from_lexeme(const char *lexeme
);
63 void value_get(Value
*value
, Type type
, void *val
);
64 void value_set(Value
*value
, Type type
, void *val
);
66 void value_set_from_int(Value
*value
, int val
);
67 void value_set_from_bool(Value
*value
, bool val
);
68 void value_set_from_char(Value
*value
, char val
);
70 void value_print(FILE *file
, Value
*value
, Type type
);