summaryrefslogtreecommitdiff
path: root/src/dbusidlprivate.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/dbusidlprivate.h')
-rw-r--r--src/dbusidlprivate.h60
1 files changed, 24 insertions, 36 deletions
diff --git a/src/dbusidlprivate.h b/src/dbusidlprivate.h
index 9649d4f..9a58ea5 100644
--- a/src/dbusidlprivate.h
+++ b/src/dbusidlprivate.h
@@ -31,6 +31,8 @@ struct _DIBase
gchar *decl_filename;
guint decl_lineno;
GList *annotations;
+ DIBase *parent;
+ gchar *namespace;
};
struct _DIAnnotation
@@ -49,9 +51,6 @@ struct _DIType
gchar *signature;
gchar *complete_signature;
-
- /* only set if type is a user supplied type */
- gchar *fully_qualified_name;
};
struct _DIArg
@@ -66,7 +65,6 @@ struct _DIMethod
{
DIBase base;
gchar *name;
- gchar *fully_qualified_name;
GList *args;
gchar *in_signature;
@@ -77,7 +75,6 @@ struct _DISignal
{
DIBase base;
gchar *name;
- gchar *fully_qualified_name;
GList *args;
gchar *signature;
@@ -87,7 +84,6 @@ struct _DIProperty
{
DIBase base;
gchar *name;
- gchar *fully_qualified_name;
DIType *type;
DIPropertyFlags flags;
@@ -98,7 +94,6 @@ struct _DIInterface
{
DIBase base;
gchar *name;
- gchar *fully_qualified_name;
GList *methods;
GList *signals;
GList *properties;
@@ -115,7 +110,6 @@ struct _DIStruct
{
DIBase base;
gchar *name;
- gchar *fully_qualified_name;
GList *members;
gchar *signature;
@@ -125,7 +119,6 @@ struct _DIEnumMember
{
DIBase base;
gchar *name;
- gchar *fully_qualified_name;
guint32 value;
gboolean unset;
};
@@ -134,7 +127,6 @@ struct _DIEnum
{
DIBase base;
gchar *name;
- gchar *fully_qualified_name;
GList *members;
};
@@ -142,27 +134,15 @@ struct _DIErrorMember
{
DIBase base;
gchar *name;
- gchar *fully_qualified_name;
};
struct _DIErrorDomain
{
DIBase base;
gchar *name;
- gchar *fully_qualified_name;
GList *members;
};
-struct _DINamespace
-{
- DIBase base;
- gchar *name;
- GList *interfaces;
- GList *structs;
- GList *enums;
- GList *error_domains;
-};
-
struct _DIComment
{
DIBase base;
@@ -179,10 +159,15 @@ struct _DIComment
struct _DIParser
{
gchar *path_to_current_file;
- GList *namespaces;
- GList *warnings;
- GList *errors;
- GList *comments;
+
+ GList *interfaces;
+ GList *structs;
+ GList *enums;
+ GList *error_domains;
+
+ GList *warnings;
+ GList *errors;
+ GList *comments;
/* hash from fully-qualified name to DIBase* */
GHashTable *symbol_table;
@@ -257,14 +242,6 @@ DIErrorDomain *di_error_domain_new (gchar *decl_filename,
gchar *name,
GList *members,
GList *annotations);
-DINamespace *di_namespace_new (gchar *decl_filename,
- guint decl_lineno,
- gchar *name,
- GList *interfaces,
- GList *structs,
- GList *enums,
- GList *error_domains,
- GList *annotations);
DIComment *di_comment_new (gchar *decl_filename,
guint decl_lineno,
gboolean is_multiline,
@@ -289,11 +266,23 @@ void di_enum_member_free (DIEnumMember *enum_member);
void di_enum_free (DIEnum *enum_);
void di_error_member_free (DIErrorMember *error_member);
void di_error_domain_free (DIErrorDomain *error_domain);
-void di_namespace_free (DINamespace *namespace);
void di_comment_free (DIComment *comment);
/* ---------------------------------------------------------------------------------------------------- */
+void di_base_set_parent (DIBase *object,
+ DIBase *parent);
+
+void di_parser_add (DIParser *parser,
+ DIBase *object);
+
+void di_interface_add_prefix (DIInterface *interface, const gchar *prefix);
+void di_struct_add_prefix (DIStruct *struct_, const gchar *prefix);
+void di_enum_add_prefix (DIEnum *enum_, const gchar *prefix);
+void di_error_domain_add_prefix (DIErrorDomain *error_domain, const gchar *prefix);
+
+/* ---------------------------------------------------------------------------------------------------- */
+
void di_annotation_print (DIAnnotation *annotation, guint indent);
void di_type_print (DIType *type, guint indent);
void di_arg_print (DIArg *arg, guint indent);
@@ -307,7 +296,6 @@ void di_enum_member_print (DIEnumMember *enum_member, guint indent);
void di_enum_print (DIEnum *enum_, guint indent);
void di_error_member_print (DIErrorMember *error_member, guint indent);
void di_error_domain_print (DIErrorDomain *error_domain, guint indent);
-void di_namespace_print (DINamespace *namespace, guint indent);
void di_comment_print (DIComment *comment, guint indent);
/* ---------------------------------------------------------------------------------------------------- */