diff options
author | Rico Tzschichholz <ricotz@ubuntu.com> | 2022-02-06 08:57:35 +0100 |
---|---|---|
committer | Rico Tzschichholz <ricotz@ubuntu.com> | 2022-02-06 12:27:54 +0100 |
commit | 406b3a6de4bdd22f6495f85cae44914a3c6d2027 (patch) | |
tree | 27bde598f62b716ad60881c1b55bc7ee8dd6c3a3 /codegen/valagobjectmodule.vala | |
parent | eb7aac385b168cc7b6bc06c387b7f3ac7942490a (diff) | |
download | vala-406b3a6de4bdd22f6495f85cae44914a3c6d2027.tar.gz |
codegen: Stop generating wrappers for dynamic property access
Diffstat (limited to 'codegen/valagobjectmodule.vala')
-rw-r--r-- | codegen/valagobjectmodule.vala | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/codegen/valagobjectmodule.vala b/codegen/valagobjectmodule.vala index 114692139..638aab367 100644 --- a/codegen/valagobjectmodule.vala +++ b/codegen/valagobjectmodule.vala @@ -24,7 +24,6 @@ public class Vala.GObjectModule : GTypeModule { - int dynamic_property_id; int signal_wrapper_id; public override void visit_class (Class cl) { @@ -654,74 +653,6 @@ public class Vala.GObjectModule : GTypeModule { pop_line (); } - public override string get_dynamic_property_getter_cname (DynamicProperty prop) { - if (prop.dynamic_type.type_symbol == null - || !prop.dynamic_type.type_symbol.is_subtype_of (gobject_type)) { - return base.get_dynamic_property_getter_cname (prop); - } - - string getter_cname = "_dynamic_get_%s%d".printf (prop.name, dynamic_property_id++); - - var func = new CCodeFunction (getter_cname, get_ccode_name (prop.property_type)); - func.modifiers |= CCodeModifiers.STATIC | CCodeModifiers.INLINE; - - func.add_parameter (new CCodeParameter ("obj", get_ccode_name (prop.dynamic_type))); - - push_function (func); - - ccode.add_declaration (get_ccode_name (prop.property_type), new CCodeVariableDeclarator ("result")); - - var call = new CCodeFunctionCall (new CCodeIdentifier ("g_object_get")); - call.add_argument (new CCodeIdentifier ("obj")); - call.add_argument (get_property_canonical_cconstant (prop)); - call.add_argument (new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, new CCodeIdentifier ("result"))); - call.add_argument (new CCodeConstant ("NULL")); - - ccode.add_expression (call); - - ccode.add_return (new CCodeIdentifier ("result")); - - pop_function (); - - // append to C source file - cfile.add_function_declaration (func); - cfile.add_function (func); - - return getter_cname; - } - - public override string get_dynamic_property_setter_cname (DynamicProperty prop) { - if (prop.dynamic_type.type_symbol == null - || !prop.dynamic_type.type_symbol.is_subtype_of (gobject_type)) { - return base.get_dynamic_property_setter_cname (prop); - } - - string setter_cname = "_dynamic_set_%s%d".printf (prop.name, dynamic_property_id++); - - var func = new CCodeFunction (setter_cname, "void"); - func.modifiers |= CCodeModifiers.STATIC | CCodeModifiers.INLINE; - func.add_parameter (new CCodeParameter ("obj", get_ccode_name (prop.dynamic_type))); - func.add_parameter (new CCodeParameter ("value", get_ccode_name (prop.property_type))); - - push_function (func); - - var call = new CCodeFunctionCall (new CCodeIdentifier ("g_object_set")); - call.add_argument (new CCodeIdentifier ("obj")); - call.add_argument (get_property_canonical_cconstant (prop)); - call.add_argument (new CCodeIdentifier ("value")); - call.add_argument (new CCodeConstant ("NULL")); - - ccode.add_expression (call); - - pop_function (); - - // append to C source file - cfile.add_function_declaration (func); - cfile.add_function (func); - - return setter_cname; - } - public override string get_dynamic_signal_cname (DynamicSignal node) { return "dynamic_%s%d_".printf (node.name, signal_wrapper_id++); } |