From: Rico Tzschichholz Date: Tue, 28 Jul 2020 11:53:29 +0000 (+0200) Subject: girwriter: Use appropriate get_ccode_* functions X-Git-Tag: 0.46.12~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8100b4935320b6cce09e81cfc1f36b830943046b;p=thirdparty%2Fvala.git girwriter: Use appropriate get_ccode_* functions This will pick up possible CCode.*name attributes --- diff --git a/codegen/valagirwriter.vala b/codegen/valagirwriter.vala index 9c98be05d..5dab2df44 100644 --- a/codegen/valagirwriter.vala +++ b/codegen/valagirwriter.vala @@ -506,38 +506,32 @@ public class Vala.GIRWriter : CodeVisitor { foreach (Method m in cl.get_methods ()) { if (m.is_abstract || m.is_virtual) { if (m.coroutine) { - string finish_name = m.name; - if (finish_name.has_suffix ("_async")) { - finish_name = finish_name.substring (0, finish_name.length - "_async".length); - } - finish_name += "_finish"; - write_indent (); - buffer.append_printf("\n"); indent++; - do_write_signature (m, "callback", true, m.name, get_ccode_name (m), m.get_async_begin_parameters (), new VoidType (), false, false, false); + do_write_signature (m, "callback", true, get_ccode_vfunc_name (m), get_ccode_name (m), m.get_async_begin_parameters (), new VoidType (), false, false, false); indent--; write_indent (); buffer.append_printf ("\n"); write_indent (); - buffer.append_printf("\n"); indent++; - do_write_signature (m, "callback", true, finish_name, get_ccode_finish_name (m), m.get_async_end_parameters (), m.return_type, m.tree_can_fail, false, false); + do_write_signature (m, "callback", true, get_ccode_finish_vfunc_name (m), get_ccode_finish_name (m), m.get_async_end_parameters (), m.return_type, m.tree_can_fail, false, false); indent--; write_indent (); buffer.append_printf ("\n"); } else { write_indent (); - buffer.append_printf("\n"); indent++; - do_write_signature (m, "callback", true, m.name, get_ccode_name (m), m.get_parameters (), m.return_type, m.tree_can_fail, false, false); + do_write_signature (m, "callback", true, get_ccode_vfunc_name (m), get_ccode_name (m), m.get_parameters (), m.return_type, m.tree_can_fail, false, false); indent--; write_indent (); buffer.append_printf ("\n"); @@ -693,38 +687,32 @@ public class Vala.GIRWriter : CodeVisitor { foreach (Method m in iface.get_methods ()) { if (m.is_abstract || m.is_virtual) { if (m.coroutine) { - string finish_name = m.name; - if (finish_name.has_suffix ("_async")) { - finish_name = finish_name.substring (0, finish_name.length - "_async".length); - } - finish_name += "_finish"; - write_indent (); - buffer.append_printf("\n"); indent++; - do_write_signature (m, "callback", true, m.name, get_ccode_name (m), m.get_async_begin_parameters (), new VoidType (), false, false, false); + do_write_signature (m, "callback", true, get_ccode_vfunc_name (m), get_ccode_name (m), m.get_async_begin_parameters (), new VoidType (), false, false, false); indent--; write_indent (); buffer.append_printf ("\n"); write_indent (); - buffer.append_printf("\n"); indent++; - do_write_signature (m, "callback", true, finish_name, get_ccode_finish_name (m), m.get_async_end_parameters (), m.return_type, m.tree_can_fail, false, false); + do_write_signature (m, "callback", true, get_ccode_finish_vfunc_name (m), get_ccode_finish_name (m), m.get_async_end_parameters (), m.return_type, m.tree_can_fail, false, false); indent--; write_indent (); buffer.append_printf ("\n"); } else { write_indent (); - buffer.append_printf("\n"); indent++; - do_write_signature (m, "callback", true, m.name, get_ccode_name (m), m.get_parameters (), m.return_type, m.tree_can_fail, false, false); + do_write_signature (m, "callback", true, get_ccode_vfunc_name (m), get_ccode_name (m), m.get_parameters (), m.return_type, m.tree_can_fail, false, false); indent--; write_indent (); buffer.append_printf ("\n"); @@ -737,11 +725,11 @@ public class Vala.GIRWriter : CodeVisitor { if (prop.get_accessor != null) { var m = prop.get_accessor.get_method (); write_indent (); - buffer.append_printf("\n"); indent++; - do_write_signature (m, "callback", true, m.name, get_ccode_name (m), m.get_parameters (), m.return_type, m.tree_can_fail, false, false); + do_write_signature (m, "callback", true, get_ccode_vfunc_name (m), get_ccode_name (m), m.get_parameters (), m.return_type, m.tree_can_fail, false, false); indent--; write_indent (); buffer.append_printf ("\n"); @@ -750,11 +738,11 @@ public class Vala.GIRWriter : CodeVisitor { if (prop.set_accessor != null && prop.set_accessor.writable) { var m = prop.set_accessor.get_method (); write_indent (); - buffer.append_printf("\n"); indent++; - do_write_signature (m, "callback", true, m.name, get_ccode_name (m), m.get_parameters (), m.return_type, m.tree_can_fail, false, false); + do_write_signature (m, "callback", true, get_ccode_vfunc_name (m), get_ccode_name (m), m.get_parameters (), m.return_type, m.tree_can_fail, false, false); indent--; write_indent (); buffer.append_printf ("\n"); @@ -1302,15 +1290,10 @@ public class Vala.GIRWriter : CodeVisitor { } if (m.coroutine) { - string finish_name = name; - if (finish_name.has_suffix ("_async")) { - finish_name = finish_name.substring (0, finish_name.length - "_async".length); - } - finish_name += "_finish"; - do_write_signature (m, tag_name, instance, name, get_ccode_name (m), m.get_async_begin_parameters (), new VoidType (), false, true, write_attributes); - do_write_signature (m, tag_name, instance, finish_name, get_ccode_finish_name (m), m.get_async_end_parameters (), m.return_type, m.tree_can_fail, false, write_attributes); + do_write_signature (m, tag_name, instance, get_ccode_vfunc_name (m), get_ccode_name (m), m.get_async_begin_parameters (), new VoidType (), false, true, write_attributes); + do_write_signature (m, tag_name, instance, get_ccode_finish_vfunc_name (m), get_ccode_finish_name (m), m.get_async_end_parameters (), m.return_type, m.tree_can_fail, false, write_attributes); } else { - do_write_signature (m, tag_name, instance, name, get_ccode_name (m), m.get_parameters (), m.return_type, m.tree_can_fail, true, write_attributes); + do_write_signature (m, tag_name, instance, get_ccode_vfunc_name (m), get_ccode_name (m), m.get_parameters (), m.return_type, m.tree_can_fail, true, write_attributes); } } diff --git a/tests/girwriter/GirTest-1.0.gir-expected b/tests/girwriter/GirTest-1.0.gir-expected index 52f41d7de..a1dd5f76d 100644 --- a/tests/girwriter/GirTest-1.0.gir-expected +++ b/tests/girwriter/GirTest-1.0.gir-expected @@ -858,7 +858,7 @@ - +