#include <glib.h>
#include <babeltrace/list.h>
+// the parameter name (of the reentrant 'yyparse' function)
+// data is a pointer to a 'SParserParam' structure
+//#define YYPARSE_PARAM scanner
+
+// the argument for the 'yylex' function
+#define YYLEX_PARAM ((struct ctf_scanner *) scanner)->scanner
+
struct ctf_node;
struct ctf_parser;
NODE_ENV,
NODE_TRACE,
NODE_CLOCK,
+ NODE_CALLSITE,
NODE_CTF_EXPRESSION,
NODE_UNARY_EXPRESSION,
struct bt_list_head stream;
struct bt_list_head event;
struct bt_list_head clock;
+ struct bt_list_head callsite;
} root;
struct {
/*
*/
struct bt_list_head declaration_list;
} clock;
+ struct {
+ /*
+ * Children nodes are ctf_expression, typedef,
+ * typealias and type_specifier_list.
+ */
+ struct bt_list_head declaration_list;
+ } callsite;
struct {
struct bt_list_head left; /* Should be string */
struct bt_list_head right; /* Unary exp. or type */