33 typedef gpointer (*STTypeNewFunc)(gpointer);
34 typedef gpointer (*STTypeDupFunc)(gconstpointer);
35 typedef void (*STTypeFreeFunc)(gpointer);
42 STTypeNewFunc func_new;
43 STTypeFreeFunc func_free;
44 STTypeDupFunc func_dup;
56 gboolean inside_brackets;
57 const char *deprecated_token;
61 void sttype_register_function(
void);
62 void sttype_register_integer(
void);
63 void sttype_register_pointer(
void);
64 void sttype_register_range(
void);
65 void sttype_register_set(
void);
66 void sttype_register_string(
void);
67 void sttype_register_test(
void);
79 stnode_new(sttype_id_t type_id, gpointer data);
82 stnode_set_bracket(
stnode_t *node, gboolean bracket);
88 stnode_init(
stnode_t *node, sttype_id_t type_id, gpointer data);
91 stnode_init_int(
stnode_t *node, sttype_id_t type_id, gint32 value);
111 #define assert_magic(obj, mnum) \ 113 if ((obj)->magic != (mnum)) { \ 114 g_print("\nMagic num is 0x%08x, but should be 0x%08x", \ 115 (obj)->magic, (mnum)); \ 116 g_assert((obj)->magic == (mnum)); \ 119 #define STTYPE_ACCESSOR(ret,type,attr,magicnum) \ 121 CONCAT(CONCAT(CONCAT(sttype_,type),_),attr) (stnode_t *node) \ 123 CONCAT(type,_t) *value; \ 124 value = (CONCAT(type,_t) *)stnode_data(node);\ 125 assert_magic(value, magicnum); \ 126 return value->attr; \ 129 #define STTYPE_ACCESSOR_PROTOTYPE(ret,type,attr) \ 131 CONCAT(CONCAT(CONCAT(sttype_,type),_),attr) (stnode_t *node); Definition: syntax-tree.h:48
Definition: syntax-tree.h:39