mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-01-12 15:36:17 +01:00
gdbus-codegen: Use direct-access GValue macros for marshallers and GValues
This is the same we're doing in code generated by glib-genmarshaller and what gmarshal does internally. Since the generated gdbus C code can be considered private too, this is safe to do, and will allow faster access to GValue objects.
This commit is contained in:
parent
8943ceae6c
commit
c5d9004236
@ -1486,6 +1486,55 @@ class CodeGenerator:
|
|||||||
"#ifdef G_OS_UNIX\n" "# include <gio/gunixfdlist.h>\n" "#endif\n" "\n"
|
"#ifdef G_OS_UNIX\n" "# include <gio/gunixfdlist.h>\n" "#endif\n" "\n"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
self.outfile.write(
|
||||||
|
"""#ifdef G_ENABLE_DEBUG
|
||||||
|
#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v)
|
||||||
|
#define g_marshal_value_peek_char(v) g_value_get_schar (v)
|
||||||
|
#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v)
|
||||||
|
#define g_marshal_value_peek_int(v) g_value_get_int (v)
|
||||||
|
#define g_marshal_value_peek_uint(v) g_value_get_uint (v)
|
||||||
|
#define g_marshal_value_peek_long(v) g_value_get_long (v)
|
||||||
|
#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v)
|
||||||
|
#define g_marshal_value_peek_int64(v) g_value_get_int64 (v)
|
||||||
|
#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v)
|
||||||
|
#define g_marshal_value_peek_enum(v) g_value_get_enum (v)
|
||||||
|
#define g_marshal_value_peek_flags(v) g_value_get_flags (v)
|
||||||
|
#define g_marshal_value_peek_float(v) g_value_get_float (v)
|
||||||
|
#define g_marshal_value_peek_double(v) g_value_get_double (v)
|
||||||
|
#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v)
|
||||||
|
#define g_marshal_value_peek_param(v) g_value_get_param (v)
|
||||||
|
#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v)
|
||||||
|
#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v)
|
||||||
|
#define g_marshal_value_peek_object(v) g_value_get_object (v)
|
||||||
|
#define g_marshal_value_peek_variant(v) g_value_get_variant (v)
|
||||||
|
#else /* !G_ENABLE_DEBUG */
|
||||||
|
/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
|
||||||
|
* Do not access GValues directly in your code. Instead, use the
|
||||||
|
* g_value_get_*() functions
|
||||||
|
*/
|
||||||
|
#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int
|
||||||
|
#define g_marshal_value_peek_char(v) (v)->data[0].v_int
|
||||||
|
#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint
|
||||||
|
#define g_marshal_value_peek_int(v) (v)->data[0].v_int
|
||||||
|
#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint
|
||||||
|
#define g_marshal_value_peek_long(v) (v)->data[0].v_long
|
||||||
|
#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong
|
||||||
|
#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64
|
||||||
|
#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64
|
||||||
|
#define g_marshal_value_peek_enum(v) (v)->data[0].v_long
|
||||||
|
#define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong
|
||||||
|
#define g_marshal_value_peek_float(v) (v)->data[0].v_float
|
||||||
|
#define g_marshal_value_peek_double(v) (v)->data[0].v_double
|
||||||
|
#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer
|
||||||
|
#endif /* !G_ENABLE_DEBUG */"""
|
||||||
|
"\n\n"
|
||||||
|
)
|
||||||
|
|
||||||
self.outfile.write(
|
self.outfile.write(
|
||||||
"typedef struct\n"
|
"typedef struct\n"
|
||||||
"{\n"
|
"{\n"
|
||||||
|
@ -83,7 +83,7 @@ class Arg:
|
|||||||
self.format_in = "@" + self.signature
|
self.format_in = "@" + self.signature
|
||||||
self.format_out = "@" + self.signature
|
self.format_out = "@" + self.signature
|
||||||
self.gvariant_get = "XXX"
|
self.gvariant_get = "XXX"
|
||||||
self.gvalue_get = "g_value_get_variant"
|
self.gvalue_get = "g_marshal_value_peek_variant"
|
||||||
self.gvalue_set = "g_value_take_variant"
|
self.gvalue_set = "g_value_take_variant"
|
||||||
self.array_annotation = ""
|
self.array_annotation = ""
|
||||||
|
|
||||||
@ -100,7 +100,7 @@ class Arg:
|
|||||||
self.format_in = "b"
|
self.format_in = "b"
|
||||||
self.format_out = "b"
|
self.format_out = "b"
|
||||||
self.gvariant_get = "g_variant_get_boolean"
|
self.gvariant_get = "g_variant_get_boolean"
|
||||||
self.gvalue_get = "g_value_get_boolean"
|
self.gvalue_get = "g_marshal_value_peek_boolean"
|
||||||
self.gvalue_set = "g_value_set_boolean"
|
self.gvalue_set = "g_value_set_boolean"
|
||||||
elif self.signature == "y":
|
elif self.signature == "y":
|
||||||
self.ctype_in_g = "guchar "
|
self.ctype_in_g = "guchar "
|
||||||
@ -112,7 +112,7 @@ class Arg:
|
|||||||
self.format_in = "y"
|
self.format_in = "y"
|
||||||
self.format_out = "y"
|
self.format_out = "y"
|
||||||
self.gvariant_get = "g_variant_get_byte"
|
self.gvariant_get = "g_variant_get_byte"
|
||||||
self.gvalue_get = "g_value_get_uchar"
|
self.gvalue_get = "g_marshal_value_peek_uchar"
|
||||||
self.gvalue_set = "g_value_set_uchar"
|
self.gvalue_set = "g_value_set_uchar"
|
||||||
elif self.signature == "n":
|
elif self.signature == "n":
|
||||||
self.ctype_in_g = "gint "
|
self.ctype_in_g = "gint "
|
||||||
@ -124,7 +124,7 @@ class Arg:
|
|||||||
self.format_in = "n"
|
self.format_in = "n"
|
||||||
self.format_out = "n"
|
self.format_out = "n"
|
||||||
self.gvariant_get = "g_variant_get_int16"
|
self.gvariant_get = "g_variant_get_int16"
|
||||||
self.gvalue_get = "g_value_get_int"
|
self.gvalue_get = "g_marshal_value_peek_int"
|
||||||
self.gvalue_set = "g_value_set_int"
|
self.gvalue_set = "g_value_set_int"
|
||||||
elif self.signature == "q":
|
elif self.signature == "q":
|
||||||
self.ctype_in_g = "guint "
|
self.ctype_in_g = "guint "
|
||||||
@ -136,7 +136,7 @@ class Arg:
|
|||||||
self.format_in = "q"
|
self.format_in = "q"
|
||||||
self.format_out = "q"
|
self.format_out = "q"
|
||||||
self.gvariant_get = "g_variant_get_uint16"
|
self.gvariant_get = "g_variant_get_uint16"
|
||||||
self.gvalue_get = "g_value_get_uint"
|
self.gvalue_get = "g_marshal_value_peek_uint"
|
||||||
self.gvalue_set = "g_value_set_uint"
|
self.gvalue_set = "g_value_set_uint"
|
||||||
elif self.signature == "i":
|
elif self.signature == "i":
|
||||||
self.ctype_in_g = "gint "
|
self.ctype_in_g = "gint "
|
||||||
@ -148,7 +148,7 @@ class Arg:
|
|||||||
self.format_in = "i"
|
self.format_in = "i"
|
||||||
self.format_out = "i"
|
self.format_out = "i"
|
||||||
self.gvariant_get = "g_variant_get_int32"
|
self.gvariant_get = "g_variant_get_int32"
|
||||||
self.gvalue_get = "g_value_get_int"
|
self.gvalue_get = "g_marshal_value_peek_int"
|
||||||
self.gvalue_set = "g_value_set_int"
|
self.gvalue_set = "g_value_set_int"
|
||||||
elif self.signature == "u":
|
elif self.signature == "u":
|
||||||
self.ctype_in_g = "guint "
|
self.ctype_in_g = "guint "
|
||||||
@ -160,7 +160,7 @@ class Arg:
|
|||||||
self.format_in = "u"
|
self.format_in = "u"
|
||||||
self.format_out = "u"
|
self.format_out = "u"
|
||||||
self.gvariant_get = "g_variant_get_uint32"
|
self.gvariant_get = "g_variant_get_uint32"
|
||||||
self.gvalue_get = "g_value_get_uint"
|
self.gvalue_get = "g_marshal_value_peek_uint"
|
||||||
self.gvalue_set = "g_value_set_uint"
|
self.gvalue_set = "g_value_set_uint"
|
||||||
elif self.signature == "x":
|
elif self.signature == "x":
|
||||||
self.ctype_in_g = "gint64 "
|
self.ctype_in_g = "gint64 "
|
||||||
@ -172,7 +172,7 @@ class Arg:
|
|||||||
self.format_in = "x"
|
self.format_in = "x"
|
||||||
self.format_out = "x"
|
self.format_out = "x"
|
||||||
self.gvariant_get = "g_variant_get_int64"
|
self.gvariant_get = "g_variant_get_int64"
|
||||||
self.gvalue_get = "g_value_get_int64"
|
self.gvalue_get = "g_marshal_value_peek_int64"
|
||||||
self.gvalue_set = "g_value_set_int64"
|
self.gvalue_set = "g_value_set_int64"
|
||||||
elif self.signature == "t":
|
elif self.signature == "t":
|
||||||
self.ctype_in_g = "guint64 "
|
self.ctype_in_g = "guint64 "
|
||||||
@ -184,7 +184,7 @@ class Arg:
|
|||||||
self.format_in = "t"
|
self.format_in = "t"
|
||||||
self.format_out = "t"
|
self.format_out = "t"
|
||||||
self.gvariant_get = "g_variant_get_uint64"
|
self.gvariant_get = "g_variant_get_uint64"
|
||||||
self.gvalue_get = "g_value_get_uint64"
|
self.gvalue_get = "g_marshal_value_peek_uint64"
|
||||||
self.gvalue_set = "g_value_set_uint64"
|
self.gvalue_set = "g_value_set_uint64"
|
||||||
elif self.signature == "d":
|
elif self.signature == "d":
|
||||||
self.ctype_in_g = "gdouble "
|
self.ctype_in_g = "gdouble "
|
||||||
@ -196,7 +196,7 @@ class Arg:
|
|||||||
self.format_in = "d"
|
self.format_in = "d"
|
||||||
self.format_out = "d"
|
self.format_out = "d"
|
||||||
self.gvariant_get = "g_variant_get_double"
|
self.gvariant_get = "g_variant_get_double"
|
||||||
self.gvalue_get = "g_value_get_double"
|
self.gvalue_get = "g_marshal_value_peek_double"
|
||||||
self.gvalue_set = "g_value_set_double"
|
self.gvalue_set = "g_value_set_double"
|
||||||
elif self.signature == "s":
|
elif self.signature == "s":
|
||||||
self.ctype_in_g = "const gchar *"
|
self.ctype_in_g = "const gchar *"
|
||||||
@ -209,7 +209,7 @@ class Arg:
|
|||||||
self.format_in = "s"
|
self.format_in = "s"
|
||||||
self.format_out = "s"
|
self.format_out = "s"
|
||||||
self.gvariant_get = "g_variant_get_string"
|
self.gvariant_get = "g_variant_get_string"
|
||||||
self.gvalue_get = "g_value_get_string"
|
self.gvalue_get = "g_marshal_value_peek_string"
|
||||||
self.gvalue_set = "g_value_set_string"
|
self.gvalue_set = "g_value_set_string"
|
||||||
elif self.signature == "o":
|
elif self.signature == "o":
|
||||||
self.ctype_in_g = "const gchar *"
|
self.ctype_in_g = "const gchar *"
|
||||||
@ -222,7 +222,7 @@ class Arg:
|
|||||||
self.format_in = "o"
|
self.format_in = "o"
|
||||||
self.format_out = "o"
|
self.format_out = "o"
|
||||||
self.gvariant_get = "g_variant_get_string"
|
self.gvariant_get = "g_variant_get_string"
|
||||||
self.gvalue_get = "g_value_get_string"
|
self.gvalue_get = "g_marshal_value_peek_string"
|
||||||
self.gvalue_set = "g_value_set_string"
|
self.gvalue_set = "g_value_set_string"
|
||||||
elif self.signature == "g":
|
elif self.signature == "g":
|
||||||
self.ctype_in_g = "const gchar *"
|
self.ctype_in_g = "const gchar *"
|
||||||
@ -235,7 +235,7 @@ class Arg:
|
|||||||
self.format_in = "g"
|
self.format_in = "g"
|
||||||
self.format_out = "g"
|
self.format_out = "g"
|
||||||
self.gvariant_get = "g_variant_get_string"
|
self.gvariant_get = "g_variant_get_string"
|
||||||
self.gvalue_get = "g_value_get_string"
|
self.gvalue_get = "g_marshal_value_peek_string"
|
||||||
self.gvalue_set = "g_value_set_string"
|
self.gvalue_set = "g_value_set_string"
|
||||||
elif self.signature == "ay":
|
elif self.signature == "ay":
|
||||||
self.ctype_in_g = "const gchar *"
|
self.ctype_in_g = "const gchar *"
|
||||||
@ -248,7 +248,7 @@ class Arg:
|
|||||||
self.format_in = "^ay"
|
self.format_in = "^ay"
|
||||||
self.format_out = "^ay"
|
self.format_out = "^ay"
|
||||||
self.gvariant_get = "g_variant_get_bytestring"
|
self.gvariant_get = "g_variant_get_bytestring"
|
||||||
self.gvalue_get = "g_value_get_string"
|
self.gvalue_get = "g_marshal_value_peek_string"
|
||||||
self.gvalue_set = "g_value_set_string"
|
self.gvalue_set = "g_value_set_string"
|
||||||
elif self.signature == "as":
|
elif self.signature == "as":
|
||||||
self.ctype_in_g = "const gchar *const *"
|
self.ctype_in_g = "const gchar *const *"
|
||||||
@ -261,7 +261,7 @@ class Arg:
|
|||||||
self.format_in = "^as"
|
self.format_in = "^as"
|
||||||
self.format_out = "^as"
|
self.format_out = "^as"
|
||||||
self.gvariant_get = "g_variant_get_strv"
|
self.gvariant_get = "g_variant_get_strv"
|
||||||
self.gvalue_get = "g_value_get_boxed"
|
self.gvalue_get = "g_marshal_value_peek_boxed"
|
||||||
self.gvalue_set = "g_value_take_boxed"
|
self.gvalue_set = "g_value_take_boxed"
|
||||||
self.array_annotation = "(array zero-terminated=1)"
|
self.array_annotation = "(array zero-terminated=1)"
|
||||||
elif self.signature == "ao":
|
elif self.signature == "ao":
|
||||||
@ -275,7 +275,7 @@ class Arg:
|
|||||||
self.format_in = "^ao"
|
self.format_in = "^ao"
|
||||||
self.format_out = "^ao"
|
self.format_out = "^ao"
|
||||||
self.gvariant_get = "g_variant_get_objv"
|
self.gvariant_get = "g_variant_get_objv"
|
||||||
self.gvalue_get = "g_value_get_boxed"
|
self.gvalue_get = "g_marshal_value_peek_boxed"
|
||||||
self.gvalue_set = "g_value_take_boxed"
|
self.gvalue_set = "g_value_take_boxed"
|
||||||
self.array_annotation = "(array zero-terminated=1)"
|
self.array_annotation = "(array zero-terminated=1)"
|
||||||
elif self.signature == "aay":
|
elif self.signature == "aay":
|
||||||
@ -289,7 +289,7 @@ class Arg:
|
|||||||
self.format_in = "^aay"
|
self.format_in = "^aay"
|
||||||
self.format_out = "^aay"
|
self.format_out = "^aay"
|
||||||
self.gvariant_get = "g_variant_get_bytestring_array"
|
self.gvariant_get = "g_variant_get_bytestring_array"
|
||||||
self.gvalue_get = "g_value_get_boxed"
|
self.gvalue_get = "g_marshal_value_peek_boxed"
|
||||||
self.gvalue_set = "g_value_take_boxed"
|
self.gvalue_set = "g_value_take_boxed"
|
||||||
self.array_annotation = "(array zero-terminated=1)"
|
self.array_annotation = "(array zero-terminated=1)"
|
||||||
|
|
||||||
@ -358,13 +358,13 @@ class Method:
|
|||||||
|
|
||||||
method_invocation_arg = Arg("method_invocation", None)
|
method_invocation_arg = Arg("method_invocation", None)
|
||||||
method_invocation_arg.ctype_in = "GDBusMethodInvocation *"
|
method_invocation_arg.ctype_in = "GDBusMethodInvocation *"
|
||||||
method_invocation_arg.gvalue_get = "g_value_get_object"
|
method_invocation_arg.gvalue_get = "g_marshal_value_peek_object"
|
||||||
self.marshaller_in_args = [method_invocation_arg] + self.in_args
|
self.marshaller_in_args = [method_invocation_arg] + self.in_args
|
||||||
|
|
||||||
if self.unix_fd:
|
if self.unix_fd:
|
||||||
fd_list_arg = Arg("fd_list", None)
|
fd_list_arg = Arg("fd_list", None)
|
||||||
fd_list_arg.ctype_in = "GUnixFDList *"
|
fd_list_arg.ctype_in = "GUnixFDList *"
|
||||||
fd_list_arg.gvalue_get = "g_value_get_object"
|
fd_list_arg.gvalue_get = "g_marshal_value_peek_object"
|
||||||
self.marshaller_in_args.insert(0, fd_list_arg)
|
self.marshaller_in_args.insert(0, fd_list_arg)
|
||||||
|
|
||||||
for a in self.annotations:
|
for a in self.annotations:
|
||||||
|
@ -147,6 +147,51 @@ class TestCodegen(unittest.TestCase):
|
|||||||
"#ifdef G_OS_UNIX\n"
|
"#ifdef G_OS_UNIX\n"
|
||||||
"# include <gio/gunixfdlist.h>\n"
|
"# include <gio/gunixfdlist.h>\n"
|
||||||
"#endif",
|
"#endif",
|
||||||
|
"private_gvalues_getters": """#ifdef G_ENABLE_DEBUG
|
||||||
|
#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v)
|
||||||
|
#define g_marshal_value_peek_char(v) g_value_get_schar (v)
|
||||||
|
#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v)
|
||||||
|
#define g_marshal_value_peek_int(v) g_value_get_int (v)
|
||||||
|
#define g_marshal_value_peek_uint(v) g_value_get_uint (v)
|
||||||
|
#define g_marshal_value_peek_long(v) g_value_get_long (v)
|
||||||
|
#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v)
|
||||||
|
#define g_marshal_value_peek_int64(v) g_value_get_int64 (v)
|
||||||
|
#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v)
|
||||||
|
#define g_marshal_value_peek_enum(v) g_value_get_enum (v)
|
||||||
|
#define g_marshal_value_peek_flags(v) g_value_get_flags (v)
|
||||||
|
#define g_marshal_value_peek_float(v) g_value_get_float (v)
|
||||||
|
#define g_marshal_value_peek_double(v) g_value_get_double (v)
|
||||||
|
#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v)
|
||||||
|
#define g_marshal_value_peek_param(v) g_value_get_param (v)
|
||||||
|
#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v)
|
||||||
|
#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v)
|
||||||
|
#define g_marshal_value_peek_object(v) g_value_get_object (v)
|
||||||
|
#define g_marshal_value_peek_variant(v) g_value_get_variant (v)
|
||||||
|
#else /* !G_ENABLE_DEBUG */
|
||||||
|
/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
|
||||||
|
* Do not access GValues directly in your code. Instead, use the
|
||||||
|
* g_value_get_*() functions
|
||||||
|
*/
|
||||||
|
#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int
|
||||||
|
#define g_marshal_value_peek_char(v) (v)->data[0].v_int
|
||||||
|
#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint
|
||||||
|
#define g_marshal_value_peek_int(v) (v)->data[0].v_int
|
||||||
|
#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint
|
||||||
|
#define g_marshal_value_peek_long(v) (v)->data[0].v_long
|
||||||
|
#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong
|
||||||
|
#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64
|
||||||
|
#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64
|
||||||
|
#define g_marshal_value_peek_enum(v) (v)->data[0].v_long
|
||||||
|
#define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong
|
||||||
|
#define g_marshal_value_peek_float(v) (v)->data[0].v_float
|
||||||
|
#define g_marshal_value_peek_double(v) (v)->data[0].v_double
|
||||||
|
#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer
|
||||||
|
#endif /* !G_ENABLE_DEBUG */""",
|
||||||
"standard_typedefs_and_helpers": "typedef struct\n"
|
"standard_typedefs_and_helpers": "typedef struct\n"
|
||||||
"{\n"
|
"{\n"
|
||||||
" GDBusArgInfo parent_struct;\n"
|
" GDBusArgInfo parent_struct;\n"
|
||||||
@ -346,6 +391,8 @@ G_END_DECLS
|
|||||||
|
|
||||||
{standard_header_includes}
|
{standard_header_includes}
|
||||||
|
|
||||||
|
{private_gvalues_getters}
|
||||||
|
|
||||||
{standard_typedefs_and_helpers}""".format(
|
{standard_typedefs_and_helpers}""".format(
|
||||||
**result.subs
|
**result.subs
|
||||||
),
|
),
|
||||||
@ -854,7 +901,7 @@ G_END_DECLS
|
|||||||
self.assertIs(stripped_out.count(f"{func_name} ("), 1)
|
self.assertIs(stripped_out.count(f"{func_name} ("), 1)
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count(
|
stripped_out.count(
|
||||||
f"g_value_get_{props['value_type']} (param_values + 1)"
|
f"g_marshal_value_peek_{props['value_type']} (param_values + 1)"
|
||||||
),
|
),
|
||||||
1,
|
1,
|
||||||
)
|
)
|
||||||
@ -897,7 +944,7 @@ G_END_DECLS
|
|||||||
for props in self.ARGUMENTS_TYPES.values():
|
for props in self.ARGUMENTS_TYPES.values():
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count(
|
stripped_out.count(
|
||||||
f"g_value_get_{props['value_type']} (param_values + {index})"
|
f"g_marshal_value_peek_{props['value_type']} (param_values + {index})"
|
||||||
),
|
),
|
||||||
1,
|
1,
|
||||||
)
|
)
|
||||||
@ -931,7 +978,9 @@ G_END_DECLS
|
|||||||
self.assertIs(stripped_out.count(f"{func_name},"), 1)
|
self.assertIs(stripped_out.count(f"{func_name},"), 1)
|
||||||
self.assertIs(stripped_out.count(f"{func_name} ("), 1)
|
self.assertIs(stripped_out.count(f"{func_name} ("), 1)
|
||||||
|
|
||||||
self.assertIs(stripped_out.count("g_value_get_object (param_values + 1)"), 2)
|
self.assertIs(
|
||||||
|
stripped_out.count("g_marshal_value_peek_object (param_values + 1)"), 2
|
||||||
|
)
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count("g_value_set_boolean (return_value, v_return);"), 2
|
stripped_out.count("g_value_set_boolean (return_value, v_return);"), 2
|
||||||
)
|
)
|
||||||
@ -963,14 +1012,14 @@ G_END_DECLS
|
|||||||
self.assertIs(stripped_out.count(f"{func_name},"), 1)
|
self.assertIs(stripped_out.count(f"{func_name},"), 1)
|
||||||
self.assertIs(stripped_out.count(f"{func_name} ("), 1)
|
self.assertIs(stripped_out.count(f"{func_name} ("), 1)
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count("g_value_get_object (param_values + 1)"), 1
|
stripped_out.count("g_marshal_value_peek_object (param_values + 1)"), 1
|
||||||
)
|
)
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count("g_value_set_boolean (return_value, v_return);"), 1
|
stripped_out.count("g_value_set_boolean (return_value, v_return);"), 1
|
||||||
)
|
)
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count(
|
stripped_out.count(
|
||||||
f"g_value_get_{props['value_type']} (param_values + 2)"
|
f"g_marshal_value_peek_{props['value_type']} (param_values + 2)"
|
||||||
),
|
),
|
||||||
1,
|
1,
|
||||||
)
|
)
|
||||||
@ -1002,7 +1051,7 @@ G_END_DECLS
|
|||||||
self.assertIs(stripped_out.count(f"{func_name},"), 1)
|
self.assertIs(stripped_out.count(f"{func_name},"), 1)
|
||||||
self.assertIs(stripped_out.count(f"{func_name} ("), 1)
|
self.assertIs(stripped_out.count(f"{func_name} ("), 1)
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count("g_value_get_object (param_values + 1)"), 1
|
stripped_out.count("g_marshal_value_peek_object (param_values + 1)"), 1
|
||||||
)
|
)
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count("g_value_set_boolean (return_value, v_return);"), 1
|
stripped_out.count("g_value_set_boolean (return_value, v_return);"), 1
|
||||||
@ -1040,14 +1089,15 @@ G_END_DECLS
|
|||||||
# Check access to MultipleArgsMethod arguments
|
# Check access to MultipleArgsMethod arguments
|
||||||
index = 1
|
index = 1
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count(f"g_value_get_object (param_values + {index})"), 1
|
stripped_out.count(f"g_marshal_value_peek_object (param_values + {index})"),
|
||||||
|
1,
|
||||||
)
|
)
|
||||||
index += 1
|
index += 1
|
||||||
|
|
||||||
for props in self.ARGUMENTS_TYPES.values():
|
for props in self.ARGUMENTS_TYPES.values():
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count(
|
stripped_out.count(
|
||||||
f"g_value_get_{props['value_type']} (param_values + {index})"
|
f"g_marshal_value_peek_{props['value_type']} (param_values + {index})"
|
||||||
),
|
),
|
||||||
1,
|
1,
|
||||||
)
|
)
|
||||||
@ -1088,7 +1138,8 @@ G_END_DECLS
|
|||||||
# Check access to MultipleArgsMethod arguments
|
# Check access to MultipleArgsMethod arguments
|
||||||
index = 1
|
index = 1
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count(f"g_value_get_object (param_values + {index})"), 1
|
stripped_out.count(f"g_marshal_value_peek_object (param_values + {index})"),
|
||||||
|
1,
|
||||||
)
|
)
|
||||||
index += 1
|
index += 1
|
||||||
|
|
||||||
@ -1126,17 +1177,20 @@ G_END_DECLS
|
|||||||
|
|
||||||
index = 1
|
index = 1
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count(f"g_value_get_object (param_values + {index})"), 1
|
stripped_out.count(f"g_marshal_value_peek_object (param_values + {index})"),
|
||||||
|
1,
|
||||||
)
|
)
|
||||||
index += 1
|
index += 1
|
||||||
|
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count(f"g_value_get_object (param_values + {index})"), 1
|
stripped_out.count(f"g_marshal_value_peek_object (param_values + {index})"),
|
||||||
|
1,
|
||||||
)
|
)
|
||||||
|
|
||||||
index += 1
|
index += 1
|
||||||
self.assertIs(
|
self.assertIs(
|
||||||
stripped_out.count(f"g_value_get_string (param_values + {index})"), 1
|
stripped_out.count(f"g_marshal_value_peek_string (param_values + {index})"),
|
||||||
|
1,
|
||||||
)
|
)
|
||||||
index += 1
|
index += 1
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user