summaryrefslogtreecommitdiff
path: root/tools/pm/Output.pm
diff options
context:
space:
mode:
authorKjell Ahlstedt <kjell.ahlstedt@bredband.net>2012-03-26 15:15:41 +0200
committerKjell Ahlstedt <kjell.ahlstedt@bredband.net>2012-03-26 15:15:41 +0200
commitd38a3dbd7fafdda778cc2e83d2321d91ae870e80 (patch)
tree8cf817fb9034fe72e2598dd31aaa86b911fb2e79 /tools/pm/Output.pm
parent722b9d793b3873d7ecc0c716843953ed2844a84c (diff)
downloadglibmm-d38a3dbd7fafdda778cc2e83d2321d91ae870e80.tar.gz
gmmproc: _WRAP_SIGNAL(): Mark deprecated signals in the _p.h and .cc files.
* tools/pm/WrapParser.pm: output_wrap_signal(): Pass $deprecated to output_wrap_default_signal_handler_[h|cc](). * tools/pm/Output.pm: output_wrap_default_signal_handler_[h|cc](): Take a 'deprecated' bool parameter and pass it to _SIGNAL_P[H|CC](). * tools/m4/signal.m4: _SIGNAL_PROXY(): Add deprecation info to the .cc file. _SIGNAL_PH(), _SIGNAL_PCC(): Take a 'deprecated' bool parameter.
Diffstat (limited to 'tools/pm/Output.pm')
-rw-r--r--tools/pm/Output.pm33
1 files changed, 21 insertions, 12 deletions
diff --git a/tools/pm/Output.pm b/tools/pm/Output.pm
index 889b7168..33bbe45b 100644
--- a/tools/pm/Output.pm
+++ b/tools/pm/Output.pm
@@ -194,13 +194,16 @@ sub output_wrap_vfunc_cc($$$$$$$)
}
### Convert _WRAP to a signal
-# _SIGNAL_H(signame,rettype, ifdef, `<cppargs>')
-# _SIGNAL_PH(gtkname,crettype, ifdef, cargs and names)
-# void output_wrap_default_signal_handler_h($filename, $line_num, $objCppfunc, $objCDefsFunc, $ifdef. @args)
+# _SIGNAL_H(signame,rettype, `<cppargs>', ifdef)
+# _SIGNAL_PH(gtkname,crettype, cargs and names, ifdef, deprecated)
+# void output_wrap_default_signal_handler_h($filename, $line_num, $objCppfunc,
+# $objCDefsFunc, $ifdef, $deprecated)
sub output_wrap_default_signal_handler_h($$$$$$$)
{
- my ($self, $filename, $line_num, $objCppfunc, $objCDefsFunc, $ifdef) = @_;
+ my ($self, $filename, $line_num, $objCppfunc, $objCDefsFunc, $ifdef, $deprecated) = @_;
+ # The default signal handler is a virtual function.
+ # It's not hidden by deprecation, since that would break ABI.
my $str = sprintf("_SIGNAL_H(%s,%s,\`%s\',%s)dnl\n",
$$objCppfunc{name},
$$objCppfunc{rettype},
@@ -210,22 +213,24 @@ sub output_wrap_default_signal_handler_h($$$$$$$)
$self->append($str);
- #The default callback, which will call *_impl, which will then call the base default callback.
+ #The default callback, which will call on_* or the base default callback.
#Declares the callback in the private *Class class and sets it in the class_init function.
-
- $str = sprintf("_SIGNAL_PH(%s,%s,\`%s\',%s)dnl\n",
+ #This is hidden by deprecation.
+ $str = sprintf("_SIGNAL_PH(%s,%s,\`%s\',%s,%s)dnl\n",
$$objCDefsFunc{name},
$$objCDefsFunc{rettype},
$objCDefsFunc->args_types_and_names(),
- $ifdef
+ $ifdef,
+ $deprecated
);
$self->append($str);
}
-# _SIGNAL_CC(signame, gtkname, rettype, crettype,`<cppargs>',`<cargs>')
+# _SIGNAL_CC(signame, gtkname, rettype, crettype,`<cppargs>',`<cargs>', const, refreturn, ifdef)
sub output_wrap_default_signal_handler_cc($$$$$$$$$)
{
- my ($self, $filename, $line_num, $objCppfunc, $objDefsSignal, $bImplement, $bCustomCCallback, $bRefreturn, $ifdef) = @_;
+ my ($self, $filename, $line_num, $objCppfunc, $objDefsSignal, $bImplement,
+ $bCustomCCallback, $bRefreturn, $ifdef, $deprecated) = @_;
my $cname = $$objDefsSignal{name};
# $cname = $1 if ($args[3] =~ /"(.*)"/); #TODO: What's this about?
@@ -235,6 +240,8 @@ sub output_wrap_default_signal_handler_cc($$$$$$$$$)
my $refreturn = "";
$refreturn = "refreturn" if($bRefreturn eq 1);
+ # The default signal handler is a virtual function.
+ # It's not hidden by deprecation, since that would break ABI.
my $str = sprintf("_SIGNAL_CC(%s,%s,%s,%s,\`%s\',\`%s\',%s,%s,%s)dnl\n",
$$objCppfunc{name},
$cname,
@@ -262,7 +269,8 @@ sub output_wrap_default_signal_handler_cc($$$$$$$$$)
if($bCustomCCallback ne 1)
{
- my $str = sprintf("_SIGNAL_PCC(%s,%s,%s,%s,\`%s\',\`%s\',\`%s\',\`%s\',%s)dnl\n",
+ #This is hidden by deprecation.
+ my $str = sprintf("_SIGNAL_PCC(%s,%s,%s,%s,\`%s\',\`%s\',\`%s\',\`%s\',%s,%s)dnl\n",
$$objCppfunc{name},
$cname,
$$objCppfunc{rettype},
@@ -271,7 +279,8 @@ sub output_wrap_default_signal_handler_cc($$$$$$$$$)
$objDefsSignal->args_names_only(),
convert_args_c_to_cpp($objDefsSignal, $objCppfunc, $line_num),
${$objDefsSignal->get_param_names()}[0],
- $ifdef);
+ $ifdef,
+ $deprecated);
$self->append($str);
}
}