XML-XSH
view release on metacpan or search on metacpan
lib/XML/XSH/Parser.pm view on Meta::CPAN
$return = $item[$#item] unless defined $return;
if (defined $::RD_TRACE)
{
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} .
$return . q{])}, "",
q{_alternation_1_of_production_1_of_rule_local_var},
$tracelevel);
Parse::RecDescent::_trace(q{(consumed: [} .
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])},
Parse::RecDescent::_tracefirst($text),
, q{_alternation_1_of_production_1_of_rule_local_var},
$tracelevel)
}
$_[1] = $text;
return $return;
}
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args)
sub Parse::RecDescent::XML::XSH::Parser::nodetype
{
my $thisparser = $_[0];
use vars q{$tracelevel};
local $tracelevel = ($tracelevel||0)+1;
$ERRORS = 0;
my $thisrule = $thisparser->{"rules"}{"nodetype"};
Parse::RecDescent::_trace(q{Trying rule: [nodetype]},
Parse::RecDescent::_tracefirst($_[1]),
q{nodetype},
$tracelevel)
if defined $::RD_TRACE;
my $err_at = @{$thisparser->{errors}};
my $score;
my $score_return;
my $_tok;
my $return = undef;
my $_matched=0;
my $commit=0;
my @item = ();
my %item = ();
my $repeating = defined($_[2]) && $_[2];
my $_noactions = defined($_[3]) && $_[3];
my @arg = defined $_[4] ? @{ &{$_[4]} } : ();
my %arg = ($#arg & 01) ? @arg : (@arg, undef);
my $text;
my $lastsep="";
my $expectation = new Parse::RecDescent::Expectation($thisrule->expected());
$expectation->at($_[1]);
my $thisline;
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser;
while (!$_matched && !$commit)
{
Parse::RecDescent::_trace(q{Trying production: [/element|attribute|attributes|text|cdata|pi|comment|chunk|entity_reference/]},
Parse::RecDescent::_tracefirst($_[1]),
q{nodetype},
$tracelevel)
if defined $::RD_TRACE;
my $thisprod = $thisrule->{"prods"}[0];
$text = $_[1];
my $_savetext;
@item = (q{nodetype});
%item = (__RULE__ => q{nodetype});
my $repcount = 0;
Parse::RecDescent::_trace(q{Trying terminal: [/element|attribute|attributes|text|cdata|pi|comment|chunk|entity_reference/]}, Parse::RecDescent::_tracefirst($text),
q{nodetype},
$tracelevel)
if defined $::RD_TRACE;
$lastsep = "";
$expectation->is(q{})->at($text);
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ s/\A(?:element|attribute|attributes|text|cdata|pi|comment|chunk|entity_reference)//)
{
$expectation->failed();
Parse::RecDescent::_trace(q{<<Didn't match terminal>>},
Parse::RecDescent::_tracefirst($text))
if defined $::RD_TRACE;
last;
}
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [}
. $& . q{])},
Parse::RecDescent::_tracefirst($text))
if defined $::RD_TRACE;
push @item, $item{__PATTERN1__}=$&;
Parse::RecDescent::_trace(q{>>Matched production: [/element|attribute|attributes|text|cdata|pi|comment|chunk|entity_reference/]<<},
Parse::RecDescent::_tracefirst($text),
q{nodetype},
$tracelevel)
if defined $::RD_TRACE;
$_matched = 1;
last;
}
unless ( $_matched || defined($return) || defined($score) )
{
$_[1] = $text; # NOT SURE THIS IS NEEDED
Parse::RecDescent::_trace(q{<<Didn't match rule>>},
Parse::RecDescent::_tracefirst($_[1]),
q{nodetype},
$tracelevel)
if defined $::RD_TRACE;
return undef;
}
if (!defined($return) && defined($score))
{
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "",
q{nodetype},
$tracelevel)
if defined $::RD_TRACE;
$return = $score_return;
}
splice @{$thisparser->{errors}}, $err_at;
$return = $item[$#item] unless defined $return;
if (defined $::RD_TRACE)
{
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} .
$return . q{])}, "",
q{nodetype},
$tracelevel);
Parse::RecDescent::_trace(q{(consumed: [} .
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])},
Parse::RecDescent::_tracefirst($text),
, q{nodetype},
$tracelevel)
}
$_[1] = $text;
return $return;
}
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args)
sub Parse::RecDescent::XML::XSH::Parser::_alternation_1_of_production_63_of_rule_command
{
my $thisparser = $_[0];
use vars q{$tracelevel};
local $tracelevel = ($tracelevel||0)+1;
$ERRORS = 0;
my $thisrule = $thisparser->{"rules"}{"_alternation_1_of_production_63_of_rule_command"};
Parse::RecDescent::_trace(q{Trying rule: [_alternation_1_of_production_63_of_rule_command]},
Parse::RecDescent::_tracefirst($_[1]),
q{_alternation_1_of_production_63_of_rule_command},
$tracelevel)
lib/XML/XSH/Parser.pm view on Meta::CPAN
'hashname' => '__ACTION1__',
'lookahead' => 0
}, 'Parse::RecDescent::Action' )
],
'actcount' => 1
}, 'Parse::RecDescent::Production' )
],
'calls' => [],
'opcount' => 0,
'changed' => 0,
'vars' => '',
'name' => 'single_quoted_string'
}, 'Parse::RecDescent::Rule' ),
'_alternation_1_of_production_1_of_rule_local_var' => bless( {
'impcount' => 0,
'line' => '816',
'prods' => [
bless( {
'dircount' => 0,
'uncommit' => undef,
'patcount' => 1,
'strcount' => 0,
'number' => 0,
'error' => undef,
'line' => undef,
'items' => [
bless( {
'description' => '/local\\\\s/',
'pattern' => 'local\\s',
'mod' => '',
'hashname' => '__PATTERN1__',
'lookahead' => 0,
'ldelim' => '/',
'line' => '816',
'rdelim' => '/'
}, 'Parse::RecDescent::Token' )
],
'actcount' => 0
}, 'Parse::RecDescent::Production' )
],
'calls' => [],
'opcount' => 0,
'changed' => 0,
'vars' => '',
'name' => '_alternation_1_of_production_1_of_rule_local_var'
}, 'Parse::RecDescent::Rule' ),
'nodetype' => bless( {
'impcount' => 0,
'line' => '757',
'prods' => [
bless( {
'dircount' => 0,
'uncommit' => undef,
'patcount' => 1,
'strcount' => 0,
'number' => 0,
'error' => undef,
'line' => undef,
'items' => [
bless( {
'description' => '/element|attribute|attributes|text|cdata|pi|comment|chunk|entity_reference/',
'pattern' => 'element|attribute|attributes|text|cdata|pi|comment|chunk|entity_reference',
'mod' => '',
'hashname' => '__PATTERN1__',
'lookahead' => 0,
'ldelim' => '/',
'line' => '758',
'rdelim' => '/'
}, 'Parse::RecDescent::Token' )
],
'actcount' => 0
}, 'Parse::RecDescent::Production' )
],
'calls' => [],
'opcount' => 0,
'changed' => 0,
'vars' => '',
'name' => 'nodetype'
}, 'Parse::RecDescent::Rule' ),
'_alternation_1_of_production_63_of_rule_command' => bless( {
'impcount' => 0,
'line' => '816',
'prods' => [
bless( {
'dircount' => 0,
'uncommit' => undef,
'patcount' => 1,
'strcount' => 0,
'number' => 0,
'error' => undef,
'line' => undef,
'items' => [
bless( {
'description' => '/(assign)\\\\s/',
'pattern' => '(assign)\\s',
'mod' => '',
'hashname' => '__PATTERN1__',
'lookahead' => 0,
'ldelim' => '/',
'line' => '816',
'rdelim' => '/'
}, 'Parse::RecDescent::Token' )
],
'actcount' => 0
}, 'Parse::RecDescent::Production' )
],
'calls' => [],
'opcount' => 0,
'changed' => 0,
'vars' => '',
'name' => '_alternation_1_of_production_63_of_rule_command'
}, 'Parse::RecDescent::Rule' ),
'xp' => bless( {
'impcount' => 0,
'line' => '534',
'prods' => [
bless( {
'dircount' => 1,
'uncommit' => undef,
'patcount' => 0,
'strcount' => 0,
'number' => 0,
( run in 0.972 second using v1.01-cache-2.11-cpan-39bf76dae61 )