David Zeuthen 9695c23d4c GDBus: Make gdbus(1) print annotations when introspecting data
Also make the gdbus-example-server include some example
annotations. The output looks like this:

$ gdbus introspect --session --dest org.gtk.GDBus.TestServer --object-path /org/gtk/GDBus/TestObject
node /org/gtk/GDBus/TestObject {
  interface org.freedesktop.DBus.Properties {
    methods:
      Get(in  s interface_name,
          in  s property_name,
          out v value);
      GetAll(in  s interface_name,
             out a{sv} properties);
      Set(in  s interface_name,
          in  s property_name,
          in  v value);
    signals:
      PropertiesChanged(s interface_name,
                        a{sv} changed_properties);
  };
  interface org.freedesktop.DBus.Introspectable {
    methods:
      Introspect(out s xml_data);
  };
  interface org.freedesktop.DBus.Peer {
    methods:
      Ping();
      GetMachineId(out s machine_uuid);
  };
  @org.gtk.GDBus.Annotation("OnInterface")
  @org.gtk.GDBus.Annotation("AlsoOnInterface")
  interface org.gtk.GDBus.TestInterface {
    methods:
      @org.gtk.GDBus.Annotation("OnMethod")
      HelloWorld(in  s greeting,
                 out s response);
      EmitSignal(@org.gtk.GDBus.Annotation.("OnArg")
                 in  d speed_in_mph);
      GimmeStdout();
    signals:
      @org.gtk.GDBus.Annotation("Onsignal")
      VelocityChanged(d speed_in_mph,
                      @org.gtk.GDBus.Annotation.("OnArg_NonFirst")
                      s speed_as_string);
    properties:
      @org.gtk.GDBus.Annotation("OnProperty")
        @org.gtk.GDBus.Annotation("OnAnnotation_YesThisIsCrazy")
      readonly s FluxCapicitorName = 'DeLorean';
      readwrite s Title = 'Back To C!';
      readonly s ReadingAlwaysThrowsError;
      readwrite s WritingAlwaysThrowsError = "There's no home like home";
      writeonly s OnlyWritable;
      readonly s Foo = 'Tick';
      readonly s Bar = 'Tock';
  };
};
2010-05-12 22:11:18 -04:00
..
2010-01-12 16:34:23 +01:00
2009-11-29 22:54:16 -05:00
2010-04-20 20:13:56 -04:00
2010-02-21 15:55:10 -05:00
2009-11-29 22:54:16 -05:00
2007-11-28 18:45:08 +00:00
2009-03-31 19:39:16 -04:00
2009-12-01 10:44:42 +01:00
2009-11-29 22:54:16 -05:00
2009-08-19 11:02:05 +02:00
2010-03-26 09:30:25 -04:00
2009-11-29 22:54:16 -05:00
2009-11-29 22:54:16 -05:00
2009-11-29 22:54:16 -05:00
2009-11-29 22:54:16 -05:00
2010-05-10 08:07:07 -04:00
2010-05-09 22:13:18 -04:00
2010-05-09 22:13:18 -04:00
2010-05-11 20:57:44 -04:00
2010-05-09 22:13:18 -04:00
2009-12-01 10:44:42 +01:00
2009-11-29 22:54:16 -05:00
2009-06-15 00:45:55 -04:00
2009-11-17 20:27:38 -06:00
2009-10-13 16:21:42 +02:00
2009-06-18 15:27:42 +02:00
2009-05-13 14:42:46 +02:00
2009-12-01 10:44:42 +01:00
2010-04-21 02:32:43 +02:00
2009-09-18 19:20:06 -04:00
2010-01-12 16:34:18 +01:00
2007-12-01 23:49:34 +00:00
2010-03-26 11:05:02 -04:00
2009-09-18 19:20:06 -04:00
2009-05-13 14:42:38 +02:00
2009-12-01 10:44:42 +01:00
2009-11-29 22:54:16 -05:00
2010-03-08 00:12:33 -05:00
2009-12-01 10:44:42 +01:00
2009-05-28 00:30:21 -04:00
2009-11-23 16:22:52 +01:00
2009-11-23 16:22:52 +01:00
2009-12-01 10:44:42 +01:00
2010-04-16 23:23:40 -04:00
2010-01-24 20:50:51 -05:00
2010-05-06 17:42:09 +02:00
2010-04-23 12:31:31 -04:00
2009-06-08 15:30:28 +02:00
2009-09-07 03:14:15 -04:00
2009-11-29 22:54:16 -05:00
2010-05-06 15:31:45 -04:00
2010-05-06 15:31:45 -04:00
2009-11-24 17:55:57 -05:00
2009-11-24 17:55:57 -05:00
2009-11-29 22:54:16 -05:00
2009-11-29 22:54:16 -05:00
2008-07-21 02:19:56 +00:00
2009-07-05 22:35:55 -04:00
2009-12-01 10:44:42 +01:00
2009-09-07 03:01:02 -04:00
2009-11-29 22:54:16 -05:00
2009-11-29 22:54:16 -05:00
2010-05-09 12:41:02 -04:00
2009-05-30 15:29:23 +02:00