--- /dev/null
+HEADER
+/* for ccode type */
+enum {
+ A_CCODE,
+ AT_CCODE,
+ C_CCODE,
+ H_CCODE,
+ HT_CCODE,
+ PH_CCODE
+};
+
+/* check type */
+enum {
+ NULL_CHECK,
+ TYPE_CHECK,
+ LT_CHECK,
+ GT_CHECK,
+ LE_CHECK,
+ GE_CHECK,
+ EQ_CHECK,
+ NE_CHECK
+};
+
+/* scope type */
+enum {
+ NO_SCOPE,
+ PUBLIC_SCOPE,
+ PRIVATE_SCOPE,
+ PROTECTED_SCOPE
+};
+
+/* method type */
+enum {
+ REGULAR_METHOD,
+ INIT_METHOD,
+ CLASS_INIT_METHOD,
+ VIRTUAL_METHOD,
+ SIGNAL_LAST_METHOD,
+ SIGNAL_FIRST_METHOD,
+ OVERRIDE_METHOD
+};
+ENDHEADER
+
+CLASS Class
+ STRING otype # this object class type
+ STRING ptype # parent class type
+ NODELIST nodes
+ENDCLASS
+
+CLASS Type
+ INT stars
+ STRING name
+ STRING postfix
+ENDCLASS
+
+CLASS CCode
+ INT cctype
+ STRING cbuf
+ INT line_no
+ENDCLASS
+
+CLASS Check
+ INT chtype
+ STRING number
+ENDCLASS
+
+CLASS FuncArg
+ TYPE atype
+ STRING name
+ NODELIST checks
+ENDCLASS
+
+CLASS Argument
+ STRING gtktype
+ TYPE atype
+ STRINGLIST flags
+ STRING name
+ STRING get
+ INT get_line
+ STRING set
+ INT set_line
+ INT line_no
+ENDCLASS
+
+CLASS Method
+ INT scope # scope type
+ INT method # method type
+ TYPE mtype
+ STRING otype # for override methods
+ STRINGLIST gtktypes # GTK types for a signal
+ STRINGLIST flags # GTK_RUN_* flags for a signal
+ STRING id
+ NODELIST args
+ STRING onerror
+ STRING defreturn
+ STRING cbuf
+ INT line_no
+ INT ccode_line
+ BOOL vararg
+ENDCLASS
+
+CLASS Variable
+ INT scope
+ TYPE vtype
+ STRING id
+ INT line_no
+ STRING destructor
+ INT destructor_line
+ BOOL destructor_simple
+ STRING initializer
+ INT initializer_line
+ENDCLASS