[gnome-builder/wip/chergert/dspy: 6/11] dspy: hide args that are generated arg_0, etc
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder/wip/chergert/dspy: 6/11] dspy: hide args that are generated arg_0, etc
- Date: Sun, 14 Apr 2019 20:35:23 +0000 (UTC)
commit 2d49c86ca04ec209f2547829efec0e1c5c6a7996
Author: Christian Hergert <chergert redhat com>
Date: Fri Apr 12 14:00:15 2019 -0700
dspy: hide args that are generated arg_0, etc
src/plugins/dspy/dspy-path-model.c | 44 ++++++++++++++++++++++++++++++++------
1 file changed, 38 insertions(+), 6 deletions(-)
---
diff --git a/src/plugins/dspy/dspy-path-model.c b/src/plugins/dspy/dspy-path-model.c
index db629f9ed..f94fd3876 100644
--- a/src/plugins/dspy/dspy-path-model.c
+++ b/src/plugins/dspy/dspy-path-model.c
@@ -22,6 +22,7 @@
#include "config.h"
+#include <errno.h>
#include <glib/gi18n.h>
#include <stdlib.h>
@@ -42,6 +43,25 @@ static GHashTable *simple_types;
static void dspy_path_model_introspect (DspyPathModel *self,
const gchar *path);
+static gboolean
+arg_name_is_generated (const gchar *str)
+{
+ if (g_str_has_prefix (str, "arg_"))
+ {
+ gchar *endptr = NULL;
+ gint64 val;
+
+ str += strlen ("arg_");
+ errno = 0;
+ val = g_ascii_strtoll (str, &endptr, 10);
+
+ if (val >= 0 && errno == 0 && *endptr == 0)
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
static gint
compare_iface (gconstpointer a,
gconstpointer b)
@@ -155,8 +175,12 @@ method_to_string (GDBusMethodInfo *method)
g_string_append (str, ", ");
add_signature (str, arg->signature);
- g_string_append_c (str, ' ');
- add_arg_name (str, arg->name);
+
+ if (!arg_name_is_generated (arg->name))
+ {
+ g_string_append_c (str, ' ');
+ add_arg_name (str, arg->name);
+ }
}
g_string_append (str, ") ↦ (");
@@ -169,8 +193,12 @@ method_to_string (GDBusMethodInfo *method)
g_string_append (str, ", ");
add_signature (str, arg->signature);
- g_string_append_c (str, ' ');
- add_arg_name (str, arg->name);
+
+ if (!arg_name_is_generated (arg->name))
+ {
+ g_string_append_c (str, ' ');
+ add_arg_name (str, arg->name);
+ }
}
g_string_append_c (str, ')');
@@ -194,8 +222,12 @@ signal_to_string (GDBusSignalInfo *sig)
g_string_append (str, ", ");
add_signature (str, arg->signature);
- g_string_append_c (str, ' ');
- add_arg_name (str, arg->name);
+
+ if (!arg_name_is_generated (arg->name))
+ {
+ g_string_append_c (str, ' ');
+ add_arg_name (str, arg->name);
+ }
}
g_string_append_c (str, ')');
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]