diff options
-rw-r--r-- | Doc/perl/python.perl | 29 | ||||
-rw-r--r-- | Doc/texinputs/python.sty | 5 |
2 files changed, 25 insertions, 9 deletions
diff --git a/Doc/perl/python.perl b/Doc/perl/python.perl index 515b1e8..5d33a6b 100644 --- a/Doc/perl/python.perl +++ b/Doc/perl/python.perl @@ -907,16 +907,29 @@ sub get_refcount{ $TLSTART = '<span class="typelabel">'; $TLEND = '</span>'; -sub do_env_cfuncdesc{ - local($_) = @_; - my $return_type = next_argument(); - my $function_name = next_argument(); - my $arg_list = next_argument(); +sub cfuncline_helper{ + my ($type, $name, $args) = @_; my $idx = make_str_index_entry( - "<tt class=\"cfunction\">$function_name()</tt>" . get_indexsubitem()); + "<tt class=\"cfunction\">$name()</tt>" . get_indexsubitem()); $idx =~ s/ \(.*\)//; $idx =~ s/\(\)//; # ???? - why both of these? - my $result_rc = get_refcount($function_name, ''); + return "$type <b>$idx</b>(<var>$args</var>)"; +} +sub do_cmd_cfuncline{ + local($_) = @_; + my $type = next_argument(); + my $name = next_argument(); + my $args = next_argument(); + my $siginfo = cfuncline_helper($type, $name, $args); + return "<dt>$siginfo\n<dd>" . $_; +} +sub do_env_cfuncdesc{ + local($_) = @_; + my $type = next_argument(); + my $name = next_argument(); + my $args = next_argument(); + my $siginfo = cfuncline_helper($type, $name, $args); + my $result_rc = get_refcount($name, ''); my $rcinfo = ''; if ($result_rc eq '+1') { $rcinfo = 'New reference'; @@ -933,7 +946,7 @@ sub do_env_cfuncdesc{ . "\n <span class=\"value\">$rcinfo.</span>" . "\n</div>"); } - return "<dl><dt>$return_type <b>$idx</b>(<var>$arg_list</var>)\n<dd>" + return "<dl><dt>$siginfo\n<dd>" . $rcinfo . $_ . '</dl>'; diff --git a/Doc/texinputs/python.sty b/Doc/texinputs/python.sty index 5807416..5756213 100644 --- a/Doc/texinputs/python.sty +++ b/Doc/texinputs/python.sty @@ -585,9 +585,12 @@ % \begin{cfuncdesc}[refcount]{type}{name}{arglist} % Note that the [refcount] slot should only be filled in by % tools/anno-api.py; it pulls the value from the refcounts database. +\newcommand{\cfuncline}[3]{ + \item[\code{#1 \bfcode{#2}(\py@varvars{#3})}\index{#2@{\py@idxcode{#2()}}}] +} \newenvironment{cfuncdesc}[4][\py@badkey]{ \begin{fulllineitems} - \item[\code{#2 \bfcode{#3}(\py@varvars{#4})}\index{#3@{\py@idxcode{#3()}}}] + \cfuncline{#2}{#3}{#4} \ifx#1\@undefined\else% \emph{Return value: \textbf{#1}.}\\ \fi |