[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
texinfo/tp Texinfo/Parser.pm t/results/macro/ar...
From: |
Patrice Dumas |
Subject: |
texinfo/tp Texinfo/Parser.pm t/results/macro/ar... |
Date: |
Thu, 30 Sep 2010 06:49:47 +0000 |
CVSROOT: /sources/texinfo
Module name: texinfo
Changes by: Patrice Dumas <pertusus> 10/09/30 06:49:47
Modified files:
tp/Texinfo : Parser.pm
Added files:
tp/t/results/macro: arg_not_closed.pl macro_expansion.pl
Log message:
Expand user macro lines.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Parser.pm?cvsroot=texinfo&r1=1.30&r2=1.31
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/arg_not_closed.pl?cvsroot=texinfo&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/macro_expansion.pl?cvsroot=texinfo&rev=1.1
Patches:
Index: Texinfo/Parser.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Parser.pm,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -b -r1.30 -r1.31
--- Texinfo/Parser.pm 30 Sep 2010 06:02:28 -0000 1.30
+++ Texinfo/Parser.pm 30 Sep 2010 06:49:47 -0000 1.31
@@ -40,7 +40,6 @@
parser
tree_to_texi
parse_texi_text
- parse_texi_line
errors
) ] );
@@ -503,31 +502,51 @@
return $parser;
}
-sub parse_texi_text($$;$)
+sub _text_to_lines($)
{
- my $self = shift;
my $text = shift;
- my $lines_nr = shift;
- if (!ref($text)) {
my $chomped = chomp($text);
- $text = [ map {$_."\n"} split (/\n/, $text, -1) ];
- chomp($text->[-1]) unless ($chomped);
- }
- if (defined($lines_nr) and !ref($lines_nr)) {
- my $first_line = $lines_nr;
+ my $lines = [ map {$_."\n"} split (/\n/, $text, -1) ];
+ chomp($lines->[-1]) unless ($chomped);
+ return $lines;
+}
+
+sub _complete_line_nr($$;$$$)
+{
+ my $lines = shift;
+ my $first_line = shift;
+ my $file = shift;
+ my $macro = shift;
+ my $fixed_line_number = shift;
+ $macro = '' if (!defined($macro));
+ $file = '' if (!defined($file));
+ my $lines_nr;
+
+ my $line_index = $first_line;
+ if (defined($first_line)) {
$lines_nr = [];
- foreach my $index(0..scalar(@$text)-1) {
- $lines_nr->[$index] = { 'line_nr' => ($index+$first_line),
- 'file_name' => '', 'macro' => '' };
+ foreach my $index(0..scalar(@$lines)-1) {
+ $line_index = $index+$first_line if (!$fixed_line_number);
+
+ $lines_nr->[$index] = { 'line_nr' => $line_index,
+ 'file_name' => $file, 'macro' => $macro };
}
}
- return $self->_internal_parse_text($text, $lines_nr);
+ return $lines_nr;
}
-sub parse_texi_line($$;$)
+sub parse_texi_text($$;$)
{
my $self = shift;
- return $self->_internal_parse_text([$_[0]], [$_[1]], 1);
+ my $text = shift;
+ my $lines_nr = shift;
+ if (!ref($text)) {
+ $text = _text_to_lines($text);
+ }
+ if (defined($lines_nr) and !ref($lines_nr)) {
+ $lines_nr = _complete_line_nr($text, $lines_nr);
+ }
+ return $self->_internal_parse_text($text, $lines_nr);
}
sub tree_to_texi ($);
@@ -1168,7 +1187,20 @@
$arguments, $line_nr);
print STDERR "MACROBODY: $expanded".'||||||'."\n"
if ($self->{'debug'});
-
+ my $expanded_lines = _text_to_lines($expanded);
+ $expanded_lines = [''] if !(@$expanded_lines);
+ print STDERR "1MACRO EXPANSION LINES: ".join('|', @$expanded_lines)
+ ."\nEND LINES\n" if ($self->{'debug'});
+ chomp ($expanded_lines->[-1]);
+ my $new_lines_nr = _complete_line_nr($expanded_lines,
+ $line_nr->{'line_nr'}, $line_nr->{'file_name'},
+ $expanded_macro->{'args'}->[0]->{'text'}, 1);
+ unshift @$text, $line;
+ unshift @$lines_array, $line_nr;
+ $line = shift @$expanded_lines;
+ $line_nr = shift @$new_lines_nr;
+ unshift @$text, @$expanded_lines;
+ unshift @$lines_array, @$new_lines_nr;
next;
}
Index: t/results/macro/arg_not_closed.pl
===================================================================
RCS file: t/results/macro/arg_not_closed.pl
diff -N t/results/macro/arg_not_closed.pl
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ t/results/macro/arg_not_closed.pl 30 Sep 2010 06:49:47 -0000 1.1
@@ -0,0 +1,90 @@
+use vars qw(%result_texts %result_trees %result_errors);
+
+$result_trees{'arg_not_closed'} = {
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'parent' => {},
+ 'text' => 'foo',
+ 'type' => 'macro_name'
+ },
+ {
+ 'parent' => {},
+ 'text' => 'arg',
+ 'type' => 'macro_arg'
+ }
+ ],
+ 'cmdname' => 'macro',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'foo
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {},
+ 'special' => {
+ 'args_index' => {
+ 'arg' => 0
+ },
+ 'macro_line' => ' foo {arg}
+',
+ 'macrobody' => 'foo
+'
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'call foo'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ }
+ ]
+};
+$result_trees{'arg_not_closed'}{'contents'}[0]{'args'}[0]{'parent'} =
$result_trees{'arg_not_closed'}{'contents'}[0];
+$result_trees{'arg_not_closed'}{'contents'}[0]{'args'}[1]{'parent'} =
$result_trees{'arg_not_closed'}{'contents'}[0];
+$result_trees{'arg_not_closed'}{'contents'}[0]{'contents'}[0]{'parent'} =
$result_trees{'arg_not_closed'}{'contents'}[0];
+$result_trees{'arg_not_closed'}{'contents'}[0]{'parent'} =
$result_trees{'arg_not_closed'};
+$result_trees{'arg_not_closed'}{'contents'}[1]{'parent'} =
$result_trees{'arg_not_closed'};
+$result_trees{'arg_not_closed'}{'contents'}[2]{'contents'}[0]{'parent'} =
$result_trees{'arg_not_closed'}{'contents'}[2];
+$result_trees{'arg_not_closed'}{'contents'}[2]{'parent'} =
$result_trees{'arg_not_closed'};
+$result_trees{'arg_not_closed'}{'contents'}[3]{'parent'} =
$result_trees{'arg_not_closed'};
+
+$result_texts{'arg_not_closed'} = '@macro foo {arg}
+foo
address@hidden macro
+
+call foo
+';
+
+$result_errors{'arg_not_closed'} = [
+ {
+ 'error_line' => ':5: @foo missing close brace
+',
+ 'file_name' => '',
+ 'line_nr' => 5,
+ 'macro' => '',
+ 'text' => '@foo missing close brace',
+ 'type' => 'error'
+ }
+];
+
+
Index: t/results/macro/macro_expansion.pl
===================================================================
RCS file: t/results/macro/macro_expansion.pl
diff -N t/results/macro/macro_expansion.pl
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ t/results/macro/macro_expansion.pl 30 Sep 2010 06:49:47 -0000 1.1
@@ -0,0 +1,536 @@
+use vars qw(%result_texts %result_trees %result_errors);
+
+$result_trees{'macro_expansion'} = {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'parent' => {},
+ 'text' => 'macro1',
+ 'type' => 'macro_name'
+ },
+ {
+ 'parent' => {},
+ 'text' => 'arg1',
+ 'type' => 'macro_arg'
+ },
+ {
+ 'parent' => {},
+ 'text' => 'arg2',
+ 'type' => 'macro_arg'
+ }
+ ],
+ 'cmdname' => 'macro',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'result of a macro with \\arg1\\ and
+',
+ 'type' => 'raw'
+ },
+ {
+ 'parent' => {},
+ 'text' => '@verbatim
+',
+ 'type' => 'raw'
+ },
+ {
+ 'parent' => {},
+ 'text' => '\\arg2\\
+',
+ 'type' => 'raw'
+ },
+ {
+ 'parent' => {},
+ 'text' => '@end verbatim
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {},
+ 'special' => {
+ 'args_index' => {
+ 'arg1' => 0,
+ 'arg2' => 1
+ },
+ 'macro_line' => ' macro1 {arg1, arg2 }
+',
+ 'macrobody' => 'result of a macro with \\arg1\\ and
address@hidden
+\\arg2\\
address@hidden verbatim
+'
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '2 simple args. result of a macro with first arg and
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'cmdname' => 'verbatim',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'second arg
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {}
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '.
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '3 simple args. result of a macro with one and
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'cmdname' => 'verbatim',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'two, three
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {}
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '.
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'comma in command. result of a macro with aaa '
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'a macro , '
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => 'samp',
+ 'parent' => {},
+ 'remaining_args' => 0
+ },
+ {
+ 'parent' => {},
+ 'text' => ' bbb and
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'cmdname' => 'verbatim',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {}
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '.
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'call on the line. result of a macro with and
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'cmdname' => 'verbatim',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {}
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => ' my arg.
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'recursive call. result of a macro with first arg and
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'cmdname' => 'verbatim',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '@macro1{nested second arg}
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {}
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '.
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'protect stuff. result of a macro with first , arg and
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'cmdname' => 'verbatim',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '{} \\
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {}
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '.
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'multi-line arg. result of a macro with arg 1
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'now and
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'cmdname' => 'verbatim',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'arg3
+',
+ 'type' => 'raw'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'raw'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {}
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '.'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ }
+ ]
+};
+$result_trees{'macro_expansion'}{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[1]{'args'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[1];
+$result_trees{'macro_expansion'}{'contents'}[1]{'args'}[1]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[1];
+$result_trees{'macro_expansion'}{'contents'}[1]{'args'}[2]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[1];
+$result_trees{'macro_expansion'}{'contents'}[1]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[1];
+$result_trees{'macro_expansion'}{'contents'}[1]{'contents'}[1]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[1];
+$result_trees{'macro_expansion'}{'contents'}[1]{'contents'}[2]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[1];
+$result_trees{'macro_expansion'}{'contents'}[1]{'contents'}[3]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[1];
+$result_trees{'macro_expansion'}{'contents'}[1]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[2]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[3]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[3];
+$result_trees{'macro_expansion'}{'contents'}[3]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[4]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[4];
+$result_trees{'macro_expansion'}{'contents'}[4]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[5]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[5];
+$result_trees{'macro_expansion'}{'contents'}[5]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[6]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[7]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[7];
+$result_trees{'macro_expansion'}{'contents'}[7]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[8]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[8];
+$result_trees{'macro_expansion'}{'contents'}[8]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[9]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[9];
+$result_trees{'macro_expansion'}{'contents'}[9]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[10]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[11]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[11];
+$result_trees{'macro_expansion'}{'contents'}[11]{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_expansion'}{'contents'}[11]{'contents'}[1]{'args'}[0];
+$result_trees{'macro_expansion'}{'contents'}[11]{'contents'}[1]{'args'}[0]{'parent'}
= $result_trees{'macro_expansion'}{'contents'}[11]{'contents'}[1];
+$result_trees{'macro_expansion'}{'contents'}[11]{'contents'}[1]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[11];
+$result_trees{'macro_expansion'}{'contents'}[11]{'contents'}[2]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[11];
+$result_trees{'macro_expansion'}{'contents'}[11]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[12]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[12];
+$result_trees{'macro_expansion'}{'contents'}[12]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[13]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[13];
+$result_trees{'macro_expansion'}{'contents'}[13]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[14]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[15]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[15];
+$result_trees{'macro_expansion'}{'contents'}[15]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[16]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[16];
+$result_trees{'macro_expansion'}{'contents'}[16]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[17]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[17];
+$result_trees{'macro_expansion'}{'contents'}[17]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[18]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[19]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[19];
+$result_trees{'macro_expansion'}{'contents'}[19]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[20]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[20];
+$result_trees{'macro_expansion'}{'contents'}[20]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[21]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[21];
+$result_trees{'macro_expansion'}{'contents'}[21]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[22]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[23]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[23];
+$result_trees{'macro_expansion'}{'contents'}[23]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[24]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[24];
+$result_trees{'macro_expansion'}{'contents'}[24]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[25]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[25];
+$result_trees{'macro_expansion'}{'contents'}[25]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[26]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[27]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[27];
+$result_trees{'macro_expansion'}{'contents'}[27]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[28]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[29]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[29];
+$result_trees{'macro_expansion'}{'contents'}[29]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[30]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[30];
+$result_trees{'macro_expansion'}{'contents'}[30]{'contents'}[1]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[30];
+$result_trees{'macro_expansion'}{'contents'}[30]{'contents'}[2]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[30];
+$result_trees{'macro_expansion'}{'contents'}[30]{'parent'} =
$result_trees{'macro_expansion'};
+$result_trees{'macro_expansion'}{'contents'}[31]{'contents'}[0]{'parent'} =
$result_trees{'macro_expansion'}{'contents'}[31];
+$result_trees{'macro_expansion'}{'contents'}[31]{'parent'} =
$result_trees{'macro_expansion'};
+
+$result_texts{'macro_expansion'} = '
address@hidden macro1 {arg1, arg2 }
+result of a macro with \arg1\ and
address@hidden
+\arg2\
address@hidden verbatim
address@hidden macro
+
+2 simple args. result of a macro with first arg and
address@hidden
+second arg
address@hidden verbatim
+.
+
+3 simple args. result of a macro with one and
address@hidden
+two, three
address@hidden verbatim
+.
+
+comma in command. result of a macro with aaa @samp{a macro , } bbb and
address@hidden
+
address@hidden verbatim
+.
+
+call on the line. result of a macro with and
address@hidden
+
address@hidden verbatim
+ my arg.
+
+recursive call. result of a macro with first arg and
address@hidden
address@hidden second arg}
address@hidden verbatim
+.
+
+protect stuff. result of a macro with first , arg and
address@hidden
+{} \
address@hidden verbatim
+.
+
+multi-line arg. result of a macro with arg 1
+
+now and
address@hidden
+arg3
+
+
address@hidden verbatim
+.';
+
+$result_errors{'macro_expansion'} = [
+ {
+ 'error_line' => ':15: warning: @macro1 defined with zero or more than one
argument should be invoked with {}
+',
+ 'file_name' => '',
+ 'line_nr' => 15,
+ 'macro' => '',
+ 'text' => '@macro1 defined with zero or more than one argument should be
invoked with {}',
+ 'type' => 'warning'
+ }
+];
+
+
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- texinfo/tp Texinfo/Parser.pm t/results/macro/ar...,
Patrice Dumas <=