summaryrefslogtreecommitdiff
path: root/src/gidlnode.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gidlnode.h')
-rw-r--r--src/gidlnode.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/gidlnode.h b/src/gidlnode.h
index 394d2f4f..e81d7133 100644
--- a/src/gidlnode.h
+++ b/src/gidlnode.h
@@ -41,6 +41,7 @@ typedef struct _GIdlNodeStruct GIdlNodeStruct;
typedef struct _GIdlNodeConstant GIdlNodeConstant;
typedef struct _GIdlNodeErrorDomain GIdlNodeErrorDomain;
typedef struct _GIdlNodeXRef GIdlNodeXRef;
+typedef struct _GIdlNodeUnion GIdlNodeUnion;
typedef enum
{
@@ -55,6 +56,7 @@ typedef enum
G_IDL_NODE_INTERFACE,
G_IDL_NODE_CONSTANT,
G_IDL_NODE_ERROR_DOMAIN,
+ G_IDL_NODE_UNION,
G_IDL_NODE_PARAM,
G_IDL_NODE_TYPE,
G_IDL_NODE_PROPERTY,
@@ -271,6 +273,23 @@ struct _GIdlNodeStruct
GList *members;
};
+struct _GIdlNodeUnion
+{
+ GIdlNode node;
+
+ gboolean deprecated;
+
+ GList *members;
+ GList *discriminators;
+
+ gchar *gtype_name;
+ gchar *gtype_init;
+
+ gint discriminator_offset;
+ GIdlNodeType *discriminator_type;
+};
+
+
struct _GIdlNodeErrorDomain
{
GIdlNode node;