From: Rico Tzschichholz Date: Mon, 14 Jan 2019 14:30:36 +0000 (+0100) Subject: codegen: Simplify some code around get_ccode_delegate_target() invocations X-Git-Tag: 0.43.5~15 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=56061d44eb18c6e346f12ae30330b77c1469afc8;p=thirdparty%2Fvala.git codegen: Simplify some code around get_ccode_delegate_target() invocations --- diff --git a/codegen/valaccodebasemodule.vala b/codegen/valaccodebasemodule.vala index e6087db70..fe2550ff1 100644 --- a/codegen/valaccodebasemodule.vala +++ b/codegen/valaccodebasemodule.vala @@ -1101,7 +1101,7 @@ public abstract class Vala.CCodeBaseModule : CodeGenerator { decl_space.add_type_member_declaration (cdecl); } } - } else if (f.variable_type is DelegateType && get_ccode_delegate_target (f)) { + } else if (get_ccode_delegate_target (f)) { var delegate_type = (DelegateType) f.variable_type; if (delegate_type.delegate_symbol.has_target) { // create field to store delegate target @@ -1189,7 +1189,7 @@ public abstract class Vala.CCodeBaseModule : CodeGenerator { var rhs_array_len = get_array_length_cvalue (field_value, 1); ccode.add_assignment (lhs_array_size, rhs_array_len); } - } else if (f.variable_type is DelegateType && get_ccode_delegate_target (f)) { + } else if (get_ccode_delegate_target (f)) { var delegate_type = (DelegateType) f.variable_type; if (delegate_type.delegate_symbol.has_target) { var field_value = get_field_cvalue (f, load_this_parameter ((TypeSymbol) f.parent_symbol)); @@ -1313,7 +1313,7 @@ public abstract class Vala.CCodeBaseModule : CodeGenerator { cfile.add_type_member_declaration (cdecl); } } - } else if (f.variable_type is DelegateType && get_ccode_delegate_target (f)) { + } else if (get_ccode_delegate_target (f)) { var delegate_type = (DelegateType) f.variable_type; if (delegate_type.delegate_symbol.has_target) { // create field to store delegate target diff --git a/codegen/valaccodememberaccessmodule.vala b/codegen/valaccodememberaccessmodule.vala index aa3506ca0..4636626f6 100644 --- a/codegen/valaccodememberaccessmodule.vala +++ b/codegen/valaccodememberaccessmodule.vala @@ -565,7 +565,6 @@ public abstract class Vala.CCodeMemberAccessModule : CCodeControlFlowModule { result.ctype = get_ccode_type (field); var array_type = result.value_type as ArrayType; - var delegate_type = result.value_type as DelegateType; if (field.binding == MemberBinding.INSTANCE) { CCodeExpression pub_inst = null; @@ -629,7 +628,7 @@ public abstract class Vala.CCodeMemberAccessModule : CCodeControlFlowModule { set_array_size_cvalue (result, new CCodeMemberAccess (inst, size_cname)); } } - } else if (delegate_type != null && delegate_type.delegate_symbol.has_target && get_ccode_delegate_target (field)) { + } else if (get_ccode_delegate_target (field)) { string target_cname = get_ccode_delegate_target_name (field); string target_destroy_notify_cname = get_ccode_delegate_target_destroy_notify_name (field); @@ -695,7 +694,7 @@ public abstract class Vala.CCodeMemberAccessModule : CCodeControlFlowModule { if (array_type.rank == 1 && field.is_internal_symbol ()) { set_array_size_cvalue (result, new CCodeIdentifier (get_array_size_cname (get_ccode_name (field)))); } - } else if (delegate_type != null && delegate_type.delegate_symbol.has_target && get_ccode_delegate_target (field)) { + } else if (get_ccode_delegate_target (field)) { result.delegate_target_cvalue = new CCodeIdentifier (get_ccode_delegate_target_name (field)); if (result.value_type.is_disposable ()) { result.delegate_target_destroy_notify_cvalue = new CCodeIdentifier (get_ccode_delegate_target_destroy_notify_name (field)); @@ -744,7 +743,7 @@ public abstract class Vala.CCodeMemberAccessModule : CCodeControlFlowModule { } result.array_size_cvalue = null; } else if (delegate_type != null) { - if (!delegate_type.delegate_symbol.has_target || !get_ccode_delegate_target (variable)) { + if (!get_ccode_delegate_target (variable)) { result.delegate_target_cvalue = new CCodeConstant ("NULL"); } diff --git a/codegen/valaccodestructmodule.vala b/codegen/valaccodestructmodule.vala index e91762fb1..0baa75233 100644 --- a/codegen/valaccodestructmodule.vala +++ b/codegen/valaccodestructmodule.vala @@ -101,7 +101,7 @@ public abstract class Vala.CCodeStructModule : CCodeBaseModule { instance_struct.add_field (length_ctype, get_array_size_cname (get_ccode_name (f))); } } - } else if (f.variable_type is DelegateType && get_ccode_delegate_target (f)) { + } else if (get_ccode_delegate_target (f)) { var delegate_type = (DelegateType) f.variable_type; if (delegate_type.delegate_symbol.has_target) { // create field to store delegate target diff --git a/codegen/valagtypemodule.vala b/codegen/valagtypemodule.vala index 1fec5e531..c3d6b0b37 100644 --- a/codegen/valagtypemodule.vala +++ b/codegen/valagtypemodule.vala @@ -432,7 +432,7 @@ public class Vala.GTypeModule : GErrorModule { instance_struct.add_field (length_ctype, get_array_size_cname (get_ccode_name (f))); } } - } else if (f.variable_type is DelegateType && get_ccode_delegate_target (f)) { + } else if (get_ccode_delegate_target (f)) { var delegate_type = (DelegateType) f.variable_type; if (delegate_type.delegate_symbol.has_target) { // create field to store delegate target @@ -534,7 +534,7 @@ public class Vala.GTypeModule : GErrorModule { instance_priv_struct.add_field (length_ctype, get_array_size_cname (get_ccode_name (f))); } } - } else if (f.variable_type is DelegateType && get_ccode_delegate_target (f)) { + } else if (get_ccode_delegate_target (f)) { var delegate_type = (DelegateType) f.variable_type; if (delegate_type.delegate_symbol.has_target) { // create field to store delegate target