Add environment (env {}) parser-level support
[babeltrace.git] / formats / ctf / metadata / ctf-ast.h
index 3d8d8b00d7a056a9797fbb807c5e0258d495453d..eba14cdadf54e76e23d835a6dca3d65e4e963d6c 100644 (file)
@@ -22,7 +22,9 @@ enum node_type {
 
        NODE_EVENT,
        NODE_STREAM,
+       NODE_ENV,
        NODE_TRACE,
+       NODE_CLOCK,
 
        NODE_CTF_EXPRESSION,
        NODE_UNARY_EXPRESSION,
@@ -69,8 +71,10 @@ struct ctf_node {
                         */
                        struct cds_list_head declaration_list;
                        struct cds_list_head trace;
+                       struct cds_list_head env;
                        struct cds_list_head stream;
                        struct cds_list_head event;
+                       struct cds_list_head clock;
                } root;
                struct {
                        /*
@@ -86,6 +90,13 @@ struct ctf_node {
                         */
                        struct cds_list_head declaration_list;
                } stream;
+               struct {
+                       /*
+                        * Children nodes are ctf_expression, typedef,
+                        * typealias and type_specifier_list.
+                        */
+                       struct cds_list_head declaration_list;
+               } env;
                struct {
                        /*
                         * Children nodes are ctf_expression, typedef,
@@ -93,6 +104,13 @@ struct ctf_node {
                         */
                        struct cds_list_head declaration_list;
                } trace;
+               struct {
+                       /*
+                        * Children nodes are ctf_expression, typedef,
+                        * typealias and type_specifier_list.
+                        */
+                       struct cds_list_head declaration_list;
+               } clock;
                struct {
                        struct cds_list_head left;      /* Should be string */
                        struct cds_list_head right;     /* Unary exp. or type */
@@ -192,7 +210,7 @@ struct ctf_node {
                                         * unary expression (value) or
                                         * type_specifier_list.
                                         */
-                                       struct ctf_node *length;
+                                       struct cds_list_head length;
                                        /* for abstract type declarator */
                                        unsigned int abstract_array;
                                } nested;
This page took 0.023095 seconds and 4 git commands to generate.