diff options
Diffstat (limited to 'girepository')
-rw-r--r-- | girepository/gdump.c | 2 | ||||
-rw-r--r-- | girepository/gi-dump-types.c | 34 |
2 files changed, 36 insertions, 0 deletions
diff --git a/girepository/gdump.c b/girepository/gdump.c index aab067b6..c237a81e 100644 --- a/girepository/gdump.c +++ b/girepository/gdump.c @@ -431,6 +431,8 @@ dump_error_quark (GQuark quark, const char *symbol, GOutputStream *out) */ #ifndef G_IREPOSITORY_COMPILATION static gboolean +dump_irepository (const char *arg, GError **error) G_GNUC_UNUSED; +static gboolean dump_irepository (const char *arg, GError **error) #else gboolean diff --git a/girepository/gi-dump-types.c b/girepository/gi-dump-types.c new file mode 100644 index 00000000..eacf8a01 --- /dev/null +++ b/girepository/gi-dump-types.c @@ -0,0 +1,34 @@ +#include "gdump.c" +#include <gio/gunixoutputstream.h> + +int +main (int argc, + char **argv) +{ + int i; + GOutputStream *stdout; + GModule *self; + + g_type_init (); + + stdout = g_unix_output_stream_new (1, FALSE); + + self = g_module_open (NULL, 0); + + for (i = 1; i < argc; i++) + { + GError *error = NULL; + GType type; + + type = invoke_get_type (self, argv[i], &error); + if (!type) + { + g_printerr ("%s\n", error->message); + g_clear_error (&error); + } + else + dump_type (type, argv[i], stdout); + } + + return 0; +} |