From dc12fac5f8a36d0276719bc5a98aa63bffe86399 Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Thu, 17 Feb 2005 21:11:18 +0000 Subject: 2005-02-17 Colin Walters * glib/dbus-gparser.c (struct Parser): Add in_annotation boolean. (parse_node, parse_interface, parse_method, parse_signal) (parse_property, parse_annotation): Lose if we're currently in an annotation. (parse_annotation): New function. (parser_start_element, parser_end_element): Handle annotation. (parse_method, parse_interface): Remove support for c_name attribute, switch to annotations. * glib/dbus-gidl.h (interface_info_get_binding_names) (method_info_get_binding_names) (interface_info_get_binding_name, method_info_get_binding_name) (interface_info_set_binding_name, method_info_set_binding_name): Remove. (interface_info_get_annotations, method_info_get_annotations) (interface_info_get_annotation, method_info_get_annotation) (interface_info_add_annotation, method_info_add_annotation): Prototype. * glib/dbus-gidl.c (struct InterfaceInfo): Substitute "annotations" for "bindings". (struct MethodInfo): Ditto. Straightfoward conversion of binding methods into annotation methods as prototyped. * glib/dbus-glib-tool.c (pretty_print): Print annotations. * glib/dbus-binding-tool-glib.h (DBUS_GLIB_ANNOTATION_C_SYMBOL): Define. * glib/dbus-binding-tool-glib.c (gather_marshallers, generate_glue): Use new annotation API. * doc/introspect.dtd: Fix a number of DTD syntax errors. Add annotation element. * doc/dbus-specification.xml: Discuss introspection annotations, include list of well-known annotations. * test/glib/test-service-glib.xml: Make validate against new DTD. --- glib/dbus-gidl.h | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'glib/dbus-gidl.h') diff --git a/glib/dbus-gidl.h b/glib/dbus-gidl.h index 917432ee..539c731f 100644 --- a/glib/dbus-gidl.h +++ b/glib/dbus-gidl.h @@ -90,15 +90,15 @@ InterfaceInfo* interface_info_new (const char *name); InterfaceInfo* interface_info_ref (InterfaceInfo *info); void interface_info_unref (InterfaceInfo *info); const char* interface_info_get_name (InterfaceInfo *info); -GSList* interface_info_get_binding_names(InterfaceInfo *info); -const char* interface_info_get_binding_name(InterfaceInfo*info, - const char *binding_type); +GSList* interface_info_get_annotations(InterfaceInfo *info); +const char* interface_info_get_annotation (InterfaceInfo*info, + const char *annotation); GSList* interface_info_get_methods (InterfaceInfo *info); GSList* interface_info_get_signals (InterfaceInfo *info); GSList* interface_info_get_properties (InterfaceInfo *info); -void interface_info_set_binding_name(InterfaceInfo *info, - const char *name, - const char *value); +void interface_info_add_annotation (InterfaceInfo *info, + const char *name, + const char *value); void interface_info_add_method (InterfaceInfo *info, MethodInfo *method); void interface_info_add_signal (InterfaceInfo *info, @@ -109,12 +109,12 @@ MethodInfo* method_info_new (const char *name); MethodInfo* method_info_ref (MethodInfo *info); void method_info_unref (MethodInfo *info); const char* method_info_get_name (MethodInfo *info); -GSList* method_info_get_binding_names (MethodInfo *info); -const char* method_info_get_binding_name (MethodInfo *info, - const char *binding_type); -void method_info_set_binding_name (MethodInfo *info, - const char *binding_type, - const char *bound_name); +GSList* method_info_get_annotations (MethodInfo *info); +const char* method_info_get_annotation (MethodInfo *info, + const char *annotation); +void method_info_add_annotation (MethodInfo *info, + const char *name, + const char *value); GSList* method_info_get_args (MethodInfo *info); void method_info_add_arg (MethodInfo *info, ArgInfo *arg); -- cgit