diff --git a/change_log.txt b/change_log.txt
index 22d629601..f214d270f 100644
--- a/change_log.txt
+++ b/change_log.txt
@@ -1,4 +1,7 @@
===== 3.1.32 - dev ===
+05.11.2017 3.1.32-dev-32
+ - lexer/parser optimization
+
26.10.2017 3.1.32-dev-28
- bugfix Smarty version was not filled in header comment of compiled and cached files
- optimization replace internal Smarty::$ds property by DIRECTORY_SEPARATOR
@@ -7,7 +10,7 @@
for backward compatibility code is moved from Smarty class to an external class and still can be
called.
- correction of PHPDoc blocks
- - minor code cleanup
+ - minor code cleanup
21.10.2017
- bugfix custom delimiters could fail since modification of version 3.1.32-dev-23
diff --git a/lexer/smarty_internal_configfilelexer.plex b/lexer/smarty_internal_configfilelexer.plex
index 1741206a8..67887a4a1 100644
--- a/lexer/smarty_internal_configfilelexer.plex
+++ b/lexer/smarty_internal_configfilelexer.plex
@@ -235,7 +235,7 @@ double_quoted_string {
$this->yypopstate();
}
maybe_bool {
- if (!$this->configBooleanize || !in_array(strtolower($this->value), Array("true", "false", "on", "off", "yes", "no")) ) {
+ if (!$this->configBooleanize || !in_array(strtolower($this->value), array('true', 'false', 'on', 'off', 'yes', 'no')) ) {
$this->yypopstate();
$this->yypushstate(self::NAKED_STRING_VALUE);
return true; //reprocess in new state
@@ -250,7 +250,7 @@ naked_string {
}
newline {
$this->token = Smarty_Internal_Configfileparser::TPC_NAKED_STRING;
- $this->value = "";
+ $this->value = '';
$this->yypopstate();
}
@@ -308,7 +308,7 @@ text {
if (isset($match[0][1])) {
$to = $match[0][1];
} else {
- $this->compiler->trigger_template_error ("missing or misspelled literal closing tag");
+ $this->compiler->trigger_template_error ('missing or misspelled literal closing tag');
}
$this->value = substr($this->data,$this->counter,$to-$this->counter);
$this->token = Smarty_Internal_Configfileparser::TPC_TRIPPLE_TEXT;
diff --git a/lexer/smarty_internal_configfileparser.y b/lexer/smarty_internal_configfileparser.y
index 9d7f03f1f..f5e707372 100644
--- a/lexer/smarty_internal_configfileparser.y
+++ b/lexer/smarty_internal_configfileparser.y
@@ -80,7 +80,7 @@ class Smarty_Internal_Configfileparser
*
* @var array
*/
- private static $escapes_single = Array('\\' => '\\',
+ private static $escapes_single = array('\\' => '\\',
'\'' => '\'');
/**
@@ -131,7 +131,7 @@ class Smarty_Internal_Configfileparser
$ss = preg_split('/(\\\\.)/', $escaped_string, - 1, PREG_SPLIT_DELIM_CAPTURE);
- $str = "";
+ $str = '';
foreach ($ss as $s) {
if (strlen($s) === 2 && $s[0] === '\\') {
if (isset(self::$escapes_single[$s[1]])) {
@@ -174,10 +174,10 @@ class Smarty_Internal_Configfileparser
* @param array $var
* @param array $target_array
*/
- private function set_var(Array $var, Array &$target_array)
+ private function set_var(array $var, array &$target_array)
{
- $key = $var["key"];
- $value = $var["value"];
+ $key = $var['key'];
+ $value = $var['value'];
if ($this->configOverwrite || !isset($target_array['vars'][$key])) {
$target_array['vars'][$key] = $value;
@@ -192,10 +192,10 @@ class Smarty_Internal_Configfileparser
*
* @param array $vars
*/
- private function add_global_vars(Array $vars)
+ private function add_global_vars(array $vars)
{
if (!isset($this->compiler->config_data['vars'])) {
- $this->compiler->config_data['vars'] = Array();
+ $this->compiler->config_data['vars'] = array();
}
foreach ($vars as $var) {
$this->set_var($var, $this->compiler->config_data);
@@ -208,10 +208,10 @@ class Smarty_Internal_Configfileparser
* @param string $section_name
* @param array $vars
*/
- private function add_section_vars($section_name, Array $vars)
+ private function add_section_vars($section_name, array $vars)
{
if (!isset($this->compiler->config_data['sections'][$section_name]['vars'])) {
- $this->compiler->config_data['sections'][$section_name]['vars'] = Array();
+ $this->compiler->config_data['sections'][$section_name]['vars'] = array();
}
foreach ($vars as $var) {
$this->set_var($var, $this->compiler->config_data['sections'][$section_name]);
@@ -238,7 +238,7 @@ class Smarty_Internal_Configfileparser
%stack_overflow
{
$this->internalError = true;
- $this->compiler->trigger_config_file_error("Stack overflow in configfile parser");
+ $this->compiler->trigger_config_file_error('Stack overflow in configfile parser');
}
// Complete config file
@@ -279,17 +279,17 @@ var_list(res) ::= var_list(vl) newline. {
}
var_list(res) ::= var_list(vl) var(v). {
- res = array_merge(vl, Array(v));
+ res = array_merge(vl, array(v));
}
var_list(res) ::= . {
- res = Array();
+ res = array();
}
// Var
var(res) ::= ID(id) EQUAL value(v). {
- res = Array("key" => id, "value" => v);
+ res = array('key' => id, 'value' => v);
}
diff --git a/lexer/smarty_internal_templatelexer.plex b/lexer/smarty_internal_templatelexer.plex
index a92653d0d..fb185db1a 100644
--- a/lexer/smarty_internal_templatelexer.plex
+++ b/lexer/smarty_internal_templatelexer.plex
@@ -306,7 +306,7 @@ class Smarty_Internal_Templatelexer
aptr = ~\s*[=][>]\s*~
singlequotestring = ~'[^'\\]*(?:\\.[^'\\]*)*'~
backtick = ~[`]~
- vert = ~[|]~
+ vert = ~[|][@]?~
qmark = ~\s*[?]\s*~
constant = ~[_]+[A-Z0-9][0-9A-Z_]*|[A-Z][0-9A-Z_]*(?![0-9A-Z_]*[a-z])~
attr = ~\s+[0-9]*[a-zA-Z_][a-zA-Z0-9_\-:]*\s*[=]\s*~
@@ -344,7 +344,7 @@ class Smarty_Internal_Templatelexer
if (isset($match[0][1])) {
$to = $match[0][1] + strlen($match[0][0]);
} else {
- $this->compiler->trigger_template_error ("missing or misspelled comment closing tag '*{$this->smarty->getRightDelimiter()}'");
+ $this->compiler->trigger_template_error ("missing or misspelled comment closing tag '{$this->smarty->getRightDelimiter()}'");
}
$this->value = substr($this->data,$this->counter,$to-$this->counter);
return false;
diff --git a/lexer/smarty_internal_templateparser.y b/lexer/smarty_internal_templateparser.y
index 0a11a0cd2..6d6c04b53 100644
--- a/lexer/smarty_internal_templateparser.y
+++ b/lexer/smarty_internal_templateparser.y
@@ -173,7 +173,7 @@ class Smarty_Internal_Templateparser
*/
public function errorRunDown()
{
- while ($this->yystack !== Array()) {
+ while ($this->yystack !== array()) {
$this->yy_pop_parser_stack();
}
if (is_resource($this->yyTraceFILE)) {
@@ -237,139 +237,103 @@ start(res) ::= template. {
res = $this->root_buffer->to_smarty_php($this);
}
- //
- // loop over template elements
- //
- // single template element
-template ::= template_element(e). {
- if (e != null) {
- $this->current_buffer->append_subtree($this, e);
- }
-}
-
- // loop of elements
-template ::= template template_element(e). {
- if (e != null) {
- // because of possible code injection
- $this->current_buffer->append_subtree($this, e);
- }
-}
- // empty template
-template ::= .
-
-//
-// template elements
-//
- // Smarty tag
-template_element(res)::= smartytag(st). {
- if ($this->compiler->has_code) {
- res = $this->mergePrefixCode(st);
- } else {
- res = null;
- }
- $this->compiler->has_variable_string = false;
- $this->block_nesting_level = count($this->compiler->_tag_stack);
-}
-
- // Literal
-template_element(res) ::= literal(l). {
- res = new Smarty_Internal_ParseTree_Text(l);
-}
// php tags
-template_element(res)::= PHP(o). {
- $code = $this->compiler->compileTag('private_php',array(array('code' => o), array('type' => $this->lex->phpType )),array());
+template ::= template PHP(B). {
+ $code = $this->compiler->compileTag('private_php',array(array('code' => B), array('type' => $this->lex->phpType )),array());
if ($this->compiler->has_code && !empty($code)) {
$tmp =''; foreach ($this->compiler->prefix_code as $code) {$tmp.=$code;} $this->compiler->prefix_code=array();
- res = new Smarty_Internal_ParseTree_Tag($this, $this->compiler->processNocacheCode($tmp.$code,true));
- } else {
- res = null;
+ $this->current_buffer->append_subtree($this, new Smarty_Internal_ParseTree_Tag($this, $this->compiler->processNocacheCode($tmp.$code,true)));
}
}
// template text
-template_element(res)::= text_content(t). {
- res = $this->compiler->processText(t);
-}
-
-text_content(res) ::= TEXT(o). {
- res = o;
-}
-
-text_content(res) ::= text_content(t) TEXT(o). {
- res = t . o;
+template ::= template TEXT(B). {
+ $this->current_buffer->append_subtree($this, $this->compiler->processText(B));
}
-
// strip on
-template_element ::= STRIPON(d). {
+template ::= template STRIPON. {
$this->strip = true;
}
// strip off
-template_element ::= STRIPOFF(d). {
+template ::= template STRIPOFF. {
$this->strip = false;
}
- // Litteral
-literal(res) ::= LITERALSTART LITERALEND. {
- res = '';
+ // Literal
+template ::= template LITERALSTART literal_e2(B) LITERALEND. {
+ $this->current_buffer->append_subtree($this, new Smarty_Internal_ParseTree_Text(B));
}
-literal(res) ::= LITERALSTART literal_elements(l) LITERALEND. {
- res = l;
+
+literal_e2(A) ::= literal_e1(B) LITERALSTART literal_e1(C) LITERALEND. {
+ A = B.C;
}
-
-literal_elements(res) ::= literal_elements(l1) literal_element(l2). {
- res = l1.l2;
+literal_e2(A) ::= literal_e1(B). {
+ A = B;
}
-literal_elements(res) ::= . {
- res = '';
-}
+literal_e1(A) ::= literal_e1(B) LITERAL(C). {
+ A = B.C;
-literal_element(res) ::= literal(l). {
- res = l;
}
-literal_element(res) ::= LITERAL(l). {
- res = l;
+literal_e1(A) ::= . {
+ A = '';
}
-
-smartytag(res) ::= tag(t) RDEL. {
- res = t;
+ // Smarty tag
+template ::= template smartytag(B). {
+ if ($this->compiler->has_code) {
+ $this->current_buffer->append_subtree($this, $this->mergePrefixCode(B));
+ }
+ $this->compiler->has_variable_string = false;
+ $this->block_nesting_level = count($this->compiler->_tag_stack);
}
-//
-// output tags start here
-//
-smartytag(res) ::= SIMPELOUTPUT(i). {
- $var = trim(substr(i, $this->compiler->getLdelLength(), -$this->compiler->getRdelLength()), ' $');
+
+
+ // empty template
+template ::= .
+
+smartytag(A) ::= SIMPELOUTPUT(B). {
+ $var = trim(substr(B, $this->compiler->getLdelLength(), -$this->compiler->getRdelLength()), ' $');
if (preg_match('/^(.*)(\s+nocache)$/', $var, $match)) {
- res = $this->compiler->compileTag('private_print_expression',array('nocache'),array('value'=>$this->compiler->compileVariable('\''.$match[1].'\'')));
+ A = $this->compiler->compileTag('private_print_expression',array('nocache'),array('value'=>$this->compiler->compileVariable('\''.$match[1].'\'')));
} else {
- res = $this->compiler->compileTag('private_print_expression',array(),array('value'=>$this->compiler->compileVariable('\''.$var.'\'')));
+ A = $this->compiler->compileTag('private_print_expression',array(),array('value'=>$this->compiler->compileVariable('\''.$var.'\'')));
}
}
- // output with optional attributes
-tag(res) ::= LDEL variable(e). {
- res = $this->compiler->compileTag('private_print_expression',array(),array('value'=>e));
-}
-
-tag(res) ::= LDEL variable(e) attributes(a). {
- res = $this->compiler->compileTag('private_print_expression',a,array('value'=>e));
-}
-tag(res) ::= LDEL value(e). {
- res = $this->compiler->compileTag('private_print_expression',array(),array('value'=>e));
-}
-tag(res) ::= LDEL value(e) attributes(a). {
- res = $this->compiler->compileTag('private_print_expression',a,array('value'=>e));
+// simple tag like {name}
+smartytag(A)::= SIMPLETAG(B). {
+ $tag = trim(substr(B, $this->compiler->getLdelLength(), -$this->compiler->getRdelLength()));
+ if ($tag == 'strip') {
+ $this->strip = true;
+ A = null;;
+ } else {
+ if (defined($tag)) {
+ if ($this->security) {
+ $this->security->isTrustedConstant($tag, $this->compiler);
+ }
+ A = $this->compiler->compileTag('private_print_expression',array(),array('value'=>$tag));
+ } else {
+ if (preg_match('/^(.*)(\s+nocache)$/', $tag, $match)) {
+ A = $this->compiler->compileTag($match[1],array("'nocache'"));
+ } else {
+ A = $this->compiler->compileTag($tag,array());
+ }
+ }
+ }
}
-
-tag(res) ::= LDEL expr(e). {
- res = $this->compiler->compileTag('private_print_expression',array(),array('value'=>e));
+smartytag(A) ::= LDEL tagbody(B) RDEL. {
+ A = B;
}
-tag(res) ::= LDEL expr(e) attributes(a). {
- res = $this->compiler->compileTag('private_print_expression',a,array('value'=>e));
+ smartytag(A) ::= tag(B) RDEL. {
+ A = B;
+ }
+ // output with optional attributes
+tagbody(A) ::= outattr(B). {
+ A = $this->compiler->compileTag('private_print_expression',B[1],array('value'=>B[0]));
}
//
@@ -377,42 +341,30 @@ tag(res) ::= LDEL expr(e) attributes(a). {
//
// assign new style
-tag(res) ::= LDEL DOLLARID(i) EQUAL value(e). {
- res = $this->compiler->compileTag('assign',array(array('value'=>e),array('var'=>'\''.substr(i,1).'\'')));
+tagbody(A) ::= DOLLARID(B) eqoutattr(C). {
+ A = $this->compiler->compileTag('assign',array_merge(array(array('value'=>C[0]),array('var'=>'\''.substr(B,1).'\'')),C[1]));
}
-
-tag(res) ::= LDEL DOLLARID(i) EQUAL expr(e). {
- res = $this->compiler->compileTag('assign',array(array('value'=>e),array('var'=>'\''.substr(i,1).'\'')));
+
+tagbody(A) ::= varindexed(B) eqoutattr(C). {
+ A = $this->compiler->compileTag('assign',array_merge(array(array('value'=>C[0]),array('var'=>B['var'])),C[1]),array('smarty_internal_index'=>B['smarty_internal_index']));
}
-
-tag(res) ::= LDEL DOLLARID(i) EQUAL expr(e) attributes(a). {
- res = $this->compiler->compileTag('assign',array_merge(array(array('value'=>e),array('var'=>'\''.substr(i,1).'\'')),a));
-}
-tag(res) ::= LDEL varindexed(vi) EQUAL expr(e) attributes(a). {
- res = $this->compiler->compileTag('assign',array_merge(array(array('value'=>e),array('var'=>vi['var'])),a),array('smarty_internal_index'=>vi['smarty_internal_index']));
+eqoutattr(A) ::= EQUAL outattr(B). {
+ A = B;
}
-// simple tag like {name}
-smartytag(res)::= SIMPLETAG(t). {
- $tag = trim(substr(t, $this->compiler->getLdelLength(), -$this->compiler->getRdelLength()));
- if ($tag === 'strip') {
- $this->strip = true;
- res = null;;
- } else {
- if (defined($tag)) {
- if ($this->security) {
- $this->security->isTrustedConstant($tag, $this->compiler);
- }
- res = $this->compiler->compileTag('private_print_expression',array(),array('value'=>$tag));
- } else {
- if (preg_match('/^(.*)(\s+nocache)$/', $tag, $match)) {
- res = $this->compiler->compileTag($match[1],array("'nocache'"));
- } else {
- res = $this->compiler->compileTag($tag,array());
- }
- }
- }
+outattr(A) ::= output(B) attributes(C). {
+ A = array(B,C);
+}
+
+output(A) ::= variable(B). {
+ A = B;
+}
+output(A) ::= value(B). {
+ A = B;
+}
+output(A) ::= expr(B). {
+ A = B;
}
// tag with optional Smarty2 style attributes
@@ -776,7 +728,7 @@ value(res) ::= function(f). {
// expression
value(res) ::= OPENP expr(e) CLOSEP. {
- res = "(". e .")";
+ res = '('. e .')';
}
value(res) ::= variable(v1) INSTANCEOF(i) ns1(v2). {
@@ -800,9 +752,9 @@ value(res) ::= doublequoted_with_quotes(s). {
value(res) ::= varindexed(vi) DOUBLECOLON static_class_access(r). {
$prefixVar = $this->compiler->getNewPrefixVariable();
if (vi['var'] === '\'smarty\'') {
- $this->compiler->appendPrefixCode("compiler->compileTag('private_special_variable',array(),vi['smarty_internal_index']).';?>');
+ $this->compiler->appendPrefixCode("compiler->compileTag('private_special_variable',array(),vi['smarty_internal_index']).';?>');
} else {
- $this->compiler->appendPrefixCode("compiler->compileVariable(vi['var']).vi['smarty_internal_index'].';?>');
+ $this->compiler->appendPrefixCode("compiler->compileVariable(vi['var']).vi['smarty_internal_index'].';?>');
}
res = $prefixVar .'::'.r[0].r[1];
}
@@ -811,7 +763,7 @@ value(res) ::= varindexed(vi) DOUBLECOLON static_class_access(r). {
value(res) ::= smartytag(st). {
$prefixVar = $this->compiler->getNewPrefixVariable();
$tmp = $this->compiler->appendCode('', st);
- $this->compiler->appendPrefixCode($this->compiler->appendCode($tmp, "'));
+ $this->compiler->appendPrefixCode($this->compiler->appendCode($tmp, ""));
res = $prefixVar;
}
@@ -882,11 +834,11 @@ variable(res) ::= object(o). {
// config variable
variable(res) ::= HATCH ID(i) HATCH. {
- res = $this->compiler->compileConfigVariable("'" . i . "'");
+ res = $this->compiler->compileConfigVariable('\'' . i . '\'');
}
variable(res) ::= HATCH ID(i) HATCH arrayindex(a). {
- res = '(is_array($tmp = ' . $this->compiler->compileConfigVariable("'" . i . "'") . ') ? $tmp'.a.' :null)';
+ res = '(is_array($tmp = ' . $this->compiler->compileConfigVariable('\'' . i . '\'') . ') ? $tmp'.a.' :null)';
}
variable(res) ::= HATCH variable(v) HATCH. {
@@ -931,7 +883,7 @@ indexdef(res) ::= DOT varvar(v) AT ID(p). {
}
indexdef(res) ::= DOT ID(i). {
- res = "['". i ."']";
+ res = '[\''. i .'\']';
}
indexdef(res) ::= DOT INTEGER(n). {
@@ -988,7 +940,7 @@ varvar(res) ::= DOLLARID(i). {
}
// single $
varvar(res) ::= DOLLAR. {
- res = "''";
+ res = '\'\'';
}
// sequence of identifier elements
@@ -1081,7 +1033,7 @@ method(res) ::= ID(f) OPENP params(p) CLOSEP. {
if ($this->security && substr(f,0,1) === '_') {
$this->compiler->trigger_template_error (self::Err1);
}
- res = f . "(". implode(',',p) .")";
+ res = f . '('. implode(',',p) .')';
}
method(res) ::= DOLLARID(f) OPENP params(p) CLOSEP. {
@@ -1089,7 +1041,7 @@ method(res) ::= DOLLARID(f) OPENP params(p) CLOSEP. {
$this->compiler->trigger_template_error (self::Err2);
}
$prefixVar = $this->compiler->getNewPrefixVariable();
- $this->compiler->appendPrefixCode("compiler->compileVariable('\''.substr(f,1).'\'').';?>');
+ $this->compiler->appendPrefixCode("compiler->compileVariable('\''.substr(f,1).'\'').';?>');
res = $prefixVar .'('. implode(',',p) .')';
}
@@ -1260,7 +1212,7 @@ arrayelement(res) ::= expr(e). {
// double quoted strings
//
doublequoted_with_quotes(res) ::= QUOTE QUOTE. {
- res = "''";
+ res = '\'\'';
}
doublequoted_with_quotes(res) ::= QUOTE doublequoted(s) QUOTE. {
diff --git a/libs/Smarty.class.php b/libs/Smarty.class.php
index a0ad2d182..4bae469d7 100644
--- a/libs/Smarty.class.php
+++ b/libs/Smarty.class.php
@@ -112,7 +112,7 @@ class Smarty extends Smarty_Internal_TemplateBase
/**
* smarty version
*/
- const SMARTY_VERSION = '3.1.32-dev-31';
+ const SMARTY_VERSION = '3.1.32-dev-32';
/**
* define variable scopes
*/
diff --git a/libs/sysplugins/smarty_internal_configfilelexer.php b/libs/sysplugins/smarty_internal_configfilelexer.php
index 374d4492d..454c9f828 100644
--- a/libs/sysplugins/smarty_internal_configfilelexer.php
+++ b/libs/sysplugins/smarty_internal_configfilelexer.php
@@ -21,12 +21,12 @@
*/
class Smarty_Internal_Configfilelexer
{
- const START = 1;
- const VALUE = 2;
+ const START = 1;
+ const VALUE = 2;
const NAKED_STRING_VALUE = 3;
- const COMMENT = 4;
- const SECTION = 5;
- const TRIPPLE = 6;
+ const COMMENT = 4;
+ const SECTION = 5;
+ const TRIPPLE = 6;
/**
* Source
*
@@ -124,13 +124,13 @@ class Smarty_Internal_Configfilelexer
private $yy_global_pattern4 = null;
private $yy_global_pattern5 = null;
private $yy_global_pattern6 = null;
- private $_yy_state = 1;
- private $_yy_stack = array();
+ private $_yy_state = 1;
+ private $_yy_stack = array();
/**
* constructor
*
- * @param string $data template source
+ * @param string $data template source
* @param Smarty_Internal_Config_File_Compiler $compiler
*/
function __construct($data, Smarty_Internal_Config_File_Compiler $compiler)
@@ -139,7 +139,7 @@ function __construct($data, Smarty_Internal_Config_File_Compiler $compiler)
$this->dataLength = strlen($data);
$this->counter = 0;
if (preg_match('/^\xEF\xBB\xBF/', $this->data, $match)) {
- $this->counter += strlen($match[0]);
+ $this->counter += strlen($match[ 0 ]);
}
$this->line = 1;
$this->compiler = $compiler;
@@ -147,15 +147,61 @@ function __construct($data, Smarty_Internal_Config_File_Compiler $compiler)
$this->configBooleanize = $this->smarty->config_booleanize;
}
+ public function replace($input)
+ {
+ return $input;
+ } // end function
+
public function PrintTrace()
{
$this->yyTraceFILE = fopen('php://output', 'w');
$this->yyTracePrompt = '
';
- } // end function
+ }
+
+ public function yylex()
+ {
+ return $this->{'yylex' . $this->_yy_state}();
+ }
+
+ public function yypushstate($state)
+ {
+ if ($this->yyTraceFILE) {
+ fprintf($this->yyTraceFILE,
+ "%sState push %s\n",
+ $this->yyTracePrompt,
+ isset($this->state_name[ $this->_yy_state ]) ? $this->state_name[ $this->_yy_state ] :
+ $this->_yy_state);
+ }
+ array_push($this->_yy_stack, $this->_yy_state);
+ $this->_yy_state = $state;
+ if ($this->yyTraceFILE) {
+ fprintf($this->yyTraceFILE,
+ "%snew State %s\n",
+ $this->yyTracePrompt,
+ isset($this->state_name[ $this->_yy_state ]) ? $this->state_name[ $this->_yy_state ] :
+ $this->_yy_state);
+ }
+ }
+
+ public function yypopstate()
+ {
+ if ($this->yyTraceFILE) {
+ fprintf($this->yyTraceFILE,
+ "%sState pop %s\n",
+ $this->yyTracePrompt,
+ isset($this->state_name[ $this->_yy_state ]) ? $this->state_name[ $this->_yy_state ] :
+ $this->_yy_state);
+ }
+ $this->_yy_state = array_pop($this->_yy_stack);
+ if ($this->yyTraceFILE) {
+ fprintf($this->yyTraceFILE,
+ "%snew State %s\n",
+ $this->yyTracePrompt,
+ isset($this->state_name[ $this->_yy_state ]) ? $this->state_name[ $this->_yy_state ] :
+ $this->_yy_state);
+ }
+ }
- /**
- * @param $state
- */
public function yybegin($state)
{
$this->_yy_state = $state;
@@ -168,10 +214,6 @@ public function yybegin($state)
}
}
- /**
- * @return bool
- * @throws \Exception
- */
public function yylex1()
{
if (!isset($this->yy_global_pattern1)) {
@@ -184,19 +226,18 @@ public function yylex1()
if ($this->counter >= $this->dataLength) {
return false; // end of input
}
-
do {
if (preg_match($this->yy_global_pattern1, $this->data, $yymatches, 0, $this->counter)) {
- if (!isset($yymatches[0][1])) {
+ if (!isset($yymatches[ 0 ][ 1 ])) {
$yymatches = preg_grep("/(.|\s)+/", $yymatches);
} else {
$yymatches = array_filter($yymatches);
}
if (empty($yymatches)) {
- throw new Exception('Error: lexing failed because a rule matched' . ' an empty string. Input "' .
- substr($this->data,
- $this->counter,
- 5) . '... state START');
+ throw new Exception('Error: lexing failed because a rule matched' .
+ ' an empty string. Input "' . substr($this->data,
+ $this->counter,
+ 5) . '... state START');
}
next($yymatches); // skip global match
$this->token = key($yymatches); // token number
@@ -221,112 +262,56 @@ public function yylex1()
continue;
}
} else {
- throw new Exception('Unexpected input at line' . $this->line . ': ' . $this->data[ $this->counter ]);
+ throw new Exception('Unexpected input at line' . $this->line .
+ ': ' . $this->data[ $this->counter ]);
}
break;
} while (true);
-
- }
-
- /**
- * @param $input
- *
- * @return mixed
- */
- public function replace($input)
- {
- return $input;
- }
-
- /**
- * @return mixed
- */
- public function yylex()
- {
- return $this->{'yylex' . $this->_yy_state}();
}
function yy_r1_1()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_COMMENTSTART;
$this->yypushstate(self::COMMENT);
}
- /**
- * @param $state
- */
- public function yypushstate($state)
- {
- if ($this->yyTraceFILE) {
- fprintf($this->yyTraceFILE,
- "%sState push %s\n",
- $this->yyTracePrompt,
- isset($this->state_name[ $this->_yy_state ]) ? $this->state_name[ $this->_yy_state ] :
- $this->_yy_state);
- }
- array_push($this->_yy_stack, $this->_yy_state);
- $this->_yy_state = $state;
- if ($this->yyTraceFILE) {
- fprintf($this->yyTraceFILE,
- "%snew State %s\n",
- $this->yyTracePrompt,
- isset($this->state_name[ $this->_yy_state ]) ? $this->state_name[ $this->_yy_state ] :
- $this->_yy_state);
- }
- }
-
function yy_r1_2()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_OPENB;
$this->yypushstate(self::SECTION);
}
function yy_r1_3()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_CLOSEB;
}
function yy_r1_4()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_EQUAL;
$this->yypushstate(self::VALUE);
- }
+ } // end function
- /**
- * @return bool
- */
function yy_r1_5()
{
-
return false;
- } // end function
+ }
function yy_r1_6()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_NEWLINE;
}
function yy_r1_7()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_ID;
}
function yy_r1_8()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_OTHER;
}
- /**
- * @return bool
- * @throws \Exception
- */
public function yylex2()
{
if (!isset($this->yy_global_pattern2)) {
@@ -339,19 +324,18 @@ public function yylex2()
if ($this->counter >= $this->dataLength) {
return false; // end of input
}
-
do {
if (preg_match($this->yy_global_pattern2, $this->data, $yymatches, 0, $this->counter)) {
- if (!isset($yymatches[0][1])) {
+ if (!isset($yymatches[ 0 ][ 1 ])) {
$yymatches = preg_grep("/(.|\s)+/", $yymatches);
} else {
$yymatches = array_filter($yymatches);
}
if (empty($yymatches)) {
- throw new Exception('Error: lexing failed because a rule matched' . ' an empty string. Input "' .
- substr($this->data,
- $this->counter,
- 5) . '... state VALUE');
+ throw new Exception('Error: lexing failed because a rule matched' .
+ ' an empty string. Input "' . substr($this->data,
+ $this->counter,
+ 5) . '... state VALUE');
}
next($yymatches); // skip global match
$this->token = key($yymatches); // token number
@@ -376,85 +360,52 @@ public function yylex2()
continue;
}
} else {
- throw new Exception('Unexpected input at line' . $this->line . ': ' . $this->data[ $this->counter ]);
+ throw new Exception('Unexpected input at line' . $this->line .
+ ': ' . $this->data[ $this->counter ]);
}
break;
} while (true);
-
}
- /**
- * @return bool
- */
function yy_r2_1()
{
-
return false;
}
function yy_r2_2()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_FLOAT;
$this->yypopstate();
}
- public function yypopstate()
- {
- if ($this->yyTraceFILE) {
- fprintf($this->yyTraceFILE,
- "%sState pop %s\n",
- $this->yyTracePrompt,
- isset($this->state_name[ $this->_yy_state ]) ? $this->state_name[ $this->_yy_state ] :
- $this->_yy_state);
- }
- $this->_yy_state = array_pop($this->_yy_stack);
- if ($this->yyTraceFILE) {
- fprintf($this->yyTraceFILE,
- "%snew State %s\n",
- $this->yyTracePrompt,
- isset($this->state_name[ $this->_yy_state ]) ? $this->state_name[ $this->_yy_state ] :
- $this->_yy_state);
- }
-
- }
-
function yy_r2_3()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_INT;
$this->yypopstate();
}
function yy_r2_4()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_TRIPPLE_QUOTES;
$this->yypushstate(self::TRIPPLE);
}
function yy_r2_5()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_SINGLE_QUOTED_STRING;
$this->yypopstate();
}
function yy_r2_6()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_DOUBLE_QUOTED_STRING;
$this->yypopstate();
} // end function
- /**
- * @return bool
- */
function yy_r2_7()
{
-
if (!$this->configBooleanize ||
- !in_array(strtolower($this->value), Array("true", "false", "on", "off", "yes", "no"))) {
+ !in_array(strtolower($this->value), array('true', 'false', 'on', 'off', 'yes', 'no'))) {
$this->yypopstate();
$this->yypushstate(self::NAKED_STRING_VALUE);
return true; //reprocess in new state
@@ -466,23 +417,17 @@ function yy_r2_7()
function yy_r2_8()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_NAKED_STRING;
$this->yypopstate();
}
function yy_r2_9()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_NAKED_STRING;
- $this->value = "";
+ $this->value = '';
$this->yypopstate();
} // end function
- /**
- * @return bool
- * @throws \Exception
- */
public function yylex3()
{
if (!isset($this->yy_global_pattern3)) {
@@ -494,19 +439,18 @@ public function yylex3()
if ($this->counter >= $this->dataLength) {
return false; // end of input
}
-
do {
if (preg_match($this->yy_global_pattern3, $this->data, $yymatches, 0, $this->counter)) {
- if (!isset($yymatches[0][1])) {
+ if (!isset($yymatches[ 0 ][ 1 ])) {
$yymatches = preg_grep("/(.|\s)+/", $yymatches);
} else {
$yymatches = array_filter($yymatches);
}
if (empty($yymatches)) {
- throw new Exception('Error: lexing failed because a rule matched' . ' an empty string. Input "' .
- substr($this->data,
- $this->counter,
- 5) . '... state NAKED_STRING_VALUE');
+ throw new Exception('Error: lexing failed because a rule matched' .
+ ' an empty string. Input "' . substr($this->data,
+ $this->counter,
+ 5) . '... state NAKED_STRING_VALUE');
}
next($yymatches); // skip global match
$this->token = key($yymatches); // token number
@@ -531,24 +475,19 @@ public function yylex3()
continue;
}
} else {
- throw new Exception('Unexpected input at line' . $this->line . ': ' . $this->data[ $this->counter ]);
+ throw new Exception('Unexpected input at line' . $this->line .
+ ': ' . $this->data[ $this->counter ]);
}
break;
} while (true);
-
}
function yy_r3_1()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_NAKED_STRING;
$this->yypopstate();
}
- /**
- * @return bool
- * @throws \Exception
- */
public function yylex4()
{
if (!isset($this->yy_global_pattern4)) {
@@ -560,19 +499,18 @@ public function yylex4()
if ($this->counter >= $this->dataLength) {
return false; // end of input
}
-
do {
if (preg_match($this->yy_global_pattern4, $this->data, $yymatches, 0, $this->counter)) {
- if (!isset($yymatches[0][1])) {
+ if (!isset($yymatches[ 0 ][ 1 ])) {
$yymatches = preg_grep("/(.|\s)+/", $yymatches);
} else {
$yymatches = array_filter($yymatches);
}
if (empty($yymatches)) {
- throw new Exception('Error: lexing failed because a rule matched' . ' an empty string. Input "' .
- substr($this->data,
- $this->counter,
- 5) . '... state COMMENT');
+ throw new Exception('Error: lexing failed because a rule matched' .
+ ' an empty string. Input "' . substr($this->data,
+ $this->counter,
+ 5) . '... state COMMENT');
}
next($yymatches); // skip global match
$this->token = key($yymatches); // token number
@@ -597,39 +535,29 @@ public function yylex4()
continue;
}
} else {
- throw new Exception('Unexpected input at line' . $this->line . ': ' . $this->data[ $this->counter ]);
+ throw new Exception('Unexpected input at line' . $this->line .
+ ': ' . $this->data[ $this->counter ]);
}
break;
} while (true);
-
}
- /**
- * @return bool
- */
function yy_r4_1()
{
-
return false;
}
function yy_r4_2()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_NAKED_STRING;
} // end function
function yy_r4_3()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_NEWLINE;
$this->yypopstate();
}
- /**
- * @return bool
- * @throws \Exception
- */
public function yylex5()
{
if (!isset($this->yy_global_pattern5)) {
@@ -641,19 +569,18 @@ public function yylex5()
if ($this->counter >= $this->dataLength) {
return false; // end of input
}
-
do {
if (preg_match($this->yy_global_pattern5, $this->data, $yymatches, 0, $this->counter)) {
- if (!isset($yymatches[0][1])) {
+ if (!isset($yymatches[ 0 ][ 1 ])) {
$yymatches = preg_grep("/(.|\s)+/", $yymatches);
} else {
$yymatches = array_filter($yymatches);
}
if (empty($yymatches)) {
- throw new Exception('Error: lexing failed because a rule matched' . ' an empty string. Input "' .
- substr($this->data,
- $this->counter,
- 5) . '... state SECTION');
+ throw new Exception('Error: lexing failed because a rule matched' .
+ ' an empty string. Input "' . substr($this->data,
+ $this->counter,
+ 5) . '... state SECTION');
}
next($yymatches); // skip global match
$this->token = key($yymatches); // token number
@@ -678,30 +605,24 @@ public function yylex5()
continue;
}
} else {
- throw new Exception('Unexpected input at line' . $this->line . ': ' . $this->data[ $this->counter ]);
+ throw new Exception('Unexpected input at line' . $this->line .
+ ': ' . $this->data[ $this->counter ]);
}
break;
} while (true);
-
}
function yy_r5_1()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_DOT;
}
function yy_r5_2()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_SECTION;
$this->yypopstate();
} // end function
- /**
- * @return bool
- * @throws \Exception
- */
public function yylex6()
{
if (!isset($this->yy_global_pattern6)) {
@@ -713,19 +634,18 @@ public function yylex6()
if ($this->counter >= $this->dataLength) {
return false; // end of input
}
-
do {
if (preg_match($this->yy_global_pattern6, $this->data, $yymatches, 0, $this->counter)) {
- if (!isset($yymatches[0][1])) {
+ if (!isset($yymatches[ 0 ][ 1 ])) {
$yymatches = preg_grep("/(.|\s)+/", $yymatches);
} else {
$yymatches = array_filter($yymatches);
}
if (empty($yymatches)) {
- throw new Exception('Error: lexing failed because a rule matched' . ' an empty string. Input "' .
- substr($this->data,
- $this->counter,
- 5) . '... state TRIPPLE');
+ throw new Exception('Error: lexing failed because a rule matched' .
+ ' an empty string. Input "' . substr($this->data,
+ $this->counter,
+ 5) . '... state TRIPPLE');
}
next($yymatches); // skip global match
$this->token = key($yymatches); // token number
@@ -750,16 +670,15 @@ public function yylex6()
continue;
}
} else {
- throw new Exception('Unexpected input at line' . $this->line . ': ' . $this->data[ $this->counter ]);
+ throw new Exception('Unexpected input at line' . $this->line .
+ ': ' . $this->data[ $this->counter ]);
}
break;
} while (true);
-
}
function yy_r6_1()
{
-
$this->token = Smarty_Internal_Configfileparser::TPC_TRIPPLE_QUOTES_END;
$this->yypopstate();
$this->yypushstate(self::START);
@@ -767,17 +686,14 @@ function yy_r6_1()
function yy_r6_2()
{
-
$to = strlen($this->data);
preg_match("/\"\"\"[ \t\r]*[\n#;]/", $this->data, $match, PREG_OFFSET_CAPTURE, $this->counter);
- if (isset($match[0][1])) {
- $to = $match[0][1];
+ if (isset($match[ 0 ][ 1 ])) {
+ $to = $match[ 0 ][ 1 ];
} else {
- $this->compiler->trigger_template_error("missing or misspelled literal closing tag");
+ $this->compiler->trigger_template_error('missing or misspelled literal closing tag');
}
$this->value = substr($this->data, $this->counter, $to - $this->counter);
$this->token = Smarty_Internal_Configfileparser::TPC_TRIPPLE_TEXT;
}
-
-
}
diff --git a/libs/sysplugins/smarty_internal_configfileparser.php b/libs/sysplugins/smarty_internal_configfileparser.php
index aa0d6d4bd..2be0ec2e5 100644
--- a/libs/sysplugins/smarty_internal_configfileparser.php
+++ b/libs/sysplugins/smarty_internal_configfileparser.php
@@ -1,101 +1,5 @@
string = $s->string;
- $this->metadata = $s->metadata;
- } else {
- $this->string = (string)$s;
- if ($m instanceof TPC_yyToken) {
- $this->metadata = $m->metadata;
- } else if (is_array($m)) {
- $this->metadata = $m;
- }
- }
- }
-
- /**
- * @return string
- */
- public function __toString()
- {
- return $this->string;
- }
-
- /**
- * @param mixed $offset
- *
- * @return bool
- */
- public function offsetExists($offset)
- {
- return isset($this->metadata[ $offset ]);
- }
-
- /**
- * @param mixed $offset
- *
- * @return mixed
- */
- public function offsetGet($offset)
- {
- return $this->metadata[ $offset ];
- }
-
- /**
- * @param mixed $offset
- * @param mixed $value
- */
- public function offsetSet($offset, $value)
- {
- if ($offset === null) {
- if (isset($value[0])) {
- $x = ($value instanceof TPC_yyToken) ? $value->metadata : $value;
- $this->metadata = array_merge($this->metadata, $x);
-
- return;
- }
- $offset = count($this->metadata);
- }
- if ($value === null) {
- return;
- }
- if ($value instanceof TPC_yyToken) {
- if ($value->metadata) {
- $this->metadata[ $offset ] = $value->metadata;
- }
- } else if ($value) {
- $this->metadata[ $offset ] = $value;
- }
- }
-
- /**
- * @param mixed $offset
- */
- public function offsetUnset($offset)
- {
- unset($this->metadata[ $offset ]);
- }
-}
-
-/**
- * Class TPC_yyStackEntry
- */
class TPC_yyStackEntry
{
public $stateno; /* The state-number */
@@ -106,8 +10,6 @@ class TPC_yyStackEntry
}
;
-
-
#line 12 "../smarty/lexer/smarty_internal_configfileparser.y"
/**
@@ -123,7 +25,6 @@ class TPC_yyStackEntry
class Smarty_Internal_Configfileparser
{
#line 25 "../smarty/lexer/smarty_internal_configfileparser.y"
-
const TPC_OPENB = 1;
const TPC_SECTION = 2;
const TPC_CLOSEB = 3;
@@ -145,62 +46,162 @@ class Smarty_Internal_Configfileparser
const YY_NO_ACTION = 60;
const YY_ACCEPT_ACTION = 59;
const YY_ERROR_ACTION = 58;
- const YY_SZ_ACTTAB = 38;
- const YY_SHIFT_USE_DFLT = -8;
- const YY_SHIFT_MAX = 19;
- const YY_REDUCE_USE_DFLT = -17;
- const YY_REDUCE_MAX = 10;
- const YYNOCODE = 29;
- const YYSTACKDEPTH = 100;
- const YYNSTATE = 36;
- const YYNRULE = 22;
- const YYERRORSYMBOL = 19;
- const YYERRSYMDT = 'yy0';
- const YYFALLBACK = 0;
- static public $yy_action = array(32, 31, 30, 29, 35, 13, 19, 3, 24, 26, 59, 9, 14, 1, 16, 25, 11, 28, 25, 11, 17,
- 27, 34, 20, 18, 15, 23, 5, 6, 22, 10, 8, 4, 12, 2, 33, 7, 21,);
- static public $yy_lookahead = array(7, 8, 9, 10, 11, 12, 5, 23, 15, 16, 20, 21, 2, 23, 4, 17, 18, 14, 17, 18, 13,
- 14, 25, 26, 15, 2, 17, 3, 3, 17, 25, 25, 6, 1, 23, 27, 22, 24,);
- static public $yy_shift_ofst = array(-8, 1, 1, 1, -7, -2, -2, 32, -8, -8, -8, 9, 10, 7, 25, 24, 23, 3, 12, 26,);
- static public $yy_reduce_ofst = array(-10, -3, -3, -3, 8, 6, 5, 13, 11, 14, -16,);
- static public $yyExpectedTokens = array(array(), array(5, 17, 18,), array(5, 17, 18,), array(5, 17, 18,),
- array(7, 8, 9, 10, 11, 12, 15, 16,), array(17, 18,), array(17, 18,),
- array(1,), array(), array(), array(), array(15, 17,), array(2, 4,),
- array(13, 14,), array(3,), array(3,), array(2,), array(14,), array(17,),
- array(6,), array(), array(), array(), array(), array(), array(), array(),
- array(), array(), array(), array(), array(), array(), array(), array(),
- array(),);
- static public $yy_default = array(44, 37, 41, 40, 58, 58, 58, 36, 44, 39, 44, 58, 58, 58, 58, 58, 58, 58, 58,
- 58, 43, 38, 57, 56, 53, 55, 54, 52, 51, 49, 48, 47, 46, 45, 42, 50,);
- public static $yyFallback = array();
- public static $yyRuleName = array('start ::= global_vars sections', 'global_vars ::= var_list',
- 'sections ::= sections section', 'sections ::=',
- 'section ::= OPENB SECTION CLOSEB newline var_list',
- 'section ::= OPENB DOT SECTION CLOSEB newline var_list',
- 'var_list ::= var_list newline', 'var_list ::= var_list var', 'var_list ::=',
- 'var ::= ID EQUAL value', 'value ::= FLOAT', 'value ::= INT', 'value ::= BOOL',
- 'value ::= SINGLE_QUOTED_STRING', 'value ::= DOUBLE_QUOTED_STRING',
- 'value ::= TRIPPLE_QUOTES TRIPPLE_TEXT TRIPPLE_QUOTES_END',
- 'value ::= TRIPPLE_QUOTES TRIPPLE_QUOTES_END', 'value ::= NAKED_STRING',
- 'value ::= OTHER', 'newline ::= NEWLINE', 'newline ::= COMMENTSTART NEWLINE',
- 'newline ::= COMMENTSTART NAKED_STRING NEWLINE',);
- public static $yyRuleInfo = array(array(0 => 20, 1 => 2), array(0 => 21, 1 => 1), array(0 => 22, 1 => 2),
- array(0 => 22, 1 => 0), array(0 => 24, 1 => 5), array(0 => 24, 1 => 6),
- array(0 => 23, 1 => 2), array(0 => 23, 1 => 2), array(0 => 23, 1 => 0),
- array(0 => 26, 1 => 3), array(0 => 27, 1 => 1), array(0 => 27, 1 => 1),
- array(0 => 27, 1 => 1), array(0 => 27, 1 => 1), array(0 => 27, 1 => 1),
- array(0 => 27, 1 => 3), array(0 => 27, 1 => 2), array(0 => 27, 1 => 1),
- array(0 => 27, 1 => 1), array(0 => 25, 1 => 1), array(0 => 25, 1 => 2),
- array(0 => 25, 1 => 3),);
- public static $yyReduceMap = array(0 => 0, 2 => 0, 3 => 0, 19 => 0, 20 => 0, 21 => 0, 1 => 1, 4 => 4, 5 => 5,
- 6 => 6, 7 => 7, 8 => 8, 9 => 9, 10 => 10, 11 => 11, 12 => 12, 13 => 13, 14 => 14,
- 15 => 15, 16 => 16, 17 => 17, 18 => 17,);
+ const YY_SZ_ACTTAB = 38;
+ const YY_SHIFT_USE_DFLT = -8;
+ const YY_SHIFT_MAX = 19;
+ const YY_REDUCE_USE_DFLT = -21;
+ const YY_REDUCE_MAX = 10;
+ const YYNOCODE = 29;
+ const YYSTACKDEPTH = 100;
+ const YYNSTATE = 36;
+ const YYNRULE = 22;
+ const YYERRORSYMBOL = 19;
+ const YYERRSYMDT = 'yy0';
+ const YYFALLBACK = 0;
+ static public $yy_action = array(
+ 29, 30, 34, 33, 24, 13, 19, 25, 35, 21,
+ 59, 8, 3, 1, 20, 12, 14, 31, 20, 12,
+ 15, 17, 23, 18, 27, 26, 4, 5, 6, 32,
+ 2, 11, 28, 22, 16, 9, 7, 10,
+ );
+ static public $yy_lookahead = array(
+ 7, 8, 9, 10, 11, 12, 5, 27, 15, 16,
+ 20, 21, 23, 23, 17, 18, 13, 14, 17, 18,
+ 15, 2, 17, 4, 25, 26, 6, 3, 3, 14,
+ 23, 1, 24, 17, 2, 25, 22, 25,
+ );
+ static public $yy_shift_ofst = array(
+ -8, 1, 1, 1, -7, -3, -3, 30, -8, -8,
+ -8, 19, 5, 3, 15, 16, 24, 25, 32, 20,
+ );
+ static public $yy_reduce_ofst = array(
+ -10, -1, -1, -1, -20, 10, 12, 8, 14, 7,
+ -11,
+ );
+ static public $yyExpectedTokens = array(
+ array(),
+ array(5, 17, 18,),
+ array(5, 17, 18,),
+ array(5, 17, 18,),
+ array(7, 8, 9, 10, 11, 12, 15, 16,),
+ array(17, 18,),
+ array(17, 18,),
+ array(1,),
+ array(),
+ array(),
+ array(),
+ array(2, 4,),
+ array(15, 17,),
+ array(13, 14,),
+ array(14,),
+ array(17,),
+ array(3,),
+ array(3,),
+ array(2,),
+ array(6,),
+ array(),
+ array(),
+ array(),
+ array(),
+ array(),
+ array(),
+ array(),
+ array(),
+ array(),
+ array(),
+ array(),
+ array(),
+ array(),
+ array(),
+ array(),
+ array(),
+ );
+ static public $yy_default = array(
+ 44, 37, 41, 40, 58, 58, 58, 36, 39, 44,
+ 44, 58, 58, 58, 58, 58, 58, 58, 58, 58,
+ 55, 54, 57, 56, 50, 45, 43, 42, 38, 46,
+ 47, 52, 51, 49, 48, 53,
+ );
+ public static $yyFallback = array();
+ public static $yyRuleName = array(
+ 'start ::= global_vars sections',
+ 'global_vars ::= var_list',
+ 'sections ::= sections section',
+ 'sections ::=',
+ 'section ::= OPENB SECTION CLOSEB newline var_list',
+ 'section ::= OPENB DOT SECTION CLOSEB newline var_list',
+ 'var_list ::= var_list newline',
+ 'var_list ::= var_list var',
+ 'var_list ::=',
+ 'var ::= ID EQUAL value',
+ 'value ::= FLOAT',
+ 'value ::= INT',
+ 'value ::= BOOL',
+ 'value ::= SINGLE_QUOTED_STRING',
+ 'value ::= DOUBLE_QUOTED_STRING',
+ 'value ::= TRIPPLE_QUOTES TRIPPLE_TEXT TRIPPLE_QUOTES_END',
+ 'value ::= TRIPPLE_QUOTES TRIPPLE_QUOTES_END',
+ 'value ::= NAKED_STRING',
+ 'value ::= OTHER',
+ 'newline ::= NEWLINE',
+ 'newline ::= COMMENTSTART NEWLINE',
+ 'newline ::= COMMENTSTART NAKED_STRING NEWLINE',
+ );
+ public static $yyRuleInfo = array(
+ array(0 => 20, 1 => 2),
+ array(0 => 21, 1 => 1),
+ array(0 => 22, 1 => 2),
+ array(0 => 22, 1 => 0),
+ array(0 => 24, 1 => 5),
+ array(0 => 24, 1 => 6),
+ array(0 => 23, 1 => 2),
+ array(0 => 23, 1 => 2),
+ array(0 => 23, 1 => 0),
+ array(0 => 26, 1 => 3),
+ array(0 => 27, 1 => 1),
+ array(0 => 27, 1 => 1),
+ array(0 => 27, 1 => 1),
+ array(0 => 27, 1 => 1),
+ array(0 => 27, 1 => 1),
+ array(0 => 27, 1 => 3),
+ array(0 => 27, 1 => 2),
+ array(0 => 27, 1 => 1),
+ array(0 => 27, 1 => 1),
+ array(0 => 25, 1 => 1),
+ array(0 => 25, 1 => 2),
+ array(0 => 25, 1 => 3),
+ );
+ public static $yyReduceMap = array(
+ 0 => 0,
+ 2 => 0,
+ 3 => 0,
+ 19 => 0,
+ 20 => 0,
+ 21 => 0,
+ 1 => 1,
+ 4 => 4,
+ 5 => 5,
+ 6 => 6,
+ 7 => 7,
+ 8 => 8,
+ 9 => 9,
+ 10 => 10,
+ 11 => 11,
+ 12 => 12,
+ 13 => 13,
+ 14 => 14,
+ 15 => 15,
+ 16 => 16,
+ 17 => 17,
+ 18 => 17,
+ );
/**
* helper map
*
* @var array
*/
- private static $escapes_single = Array('\\' => '\\', '\'' => '\'');
+ private static $escapes_single = array('\\' => '\\',
+ '\'' => '\'');
/**
* result status
*
@@ -228,16 +229,21 @@ class Smarty_Internal_Configfileparser
*
* @var Smarty
*/
- public $smarty = null;
+ public $smarty = null;
public $yyTraceFILE;
public $yyTracePrompt;
-public $yyidx;
-public $yyerrcnt;
-public $yystack = array();
- public $yyTokenName = array('$', 'OPENB', 'SECTION', 'CLOSEB', 'DOT', 'ID', 'EQUAL', 'FLOAT', 'INT', 'BOOL',
- 'SINGLE_QUOTED_STRING', 'DOUBLE_QUOTED_STRING', 'TRIPPLE_QUOTES', 'TRIPPLE_TEXT',
- 'TRIPPLE_QUOTES_END', 'NAKED_STRING', 'OTHER', 'NEWLINE', 'COMMENTSTART', 'error',
- 'start', 'global_vars', 'sections', 'var_list', 'section', 'newline', 'var', 'value',);
+ public $yyidx;
+ public $yyerrcnt;
+ public $yystack = array();
+ public $yyTokenName = array(
+ '$', 'OPENB', 'SECTION', 'CLOSEB',
+ 'DOT', 'ID', 'EQUAL', 'FLOAT',
+ 'INT', 'BOOL', 'SINGLE_QUOTED_STRING', 'DOUBLE_QUOTED_STRING',
+ 'TRIPPLE_QUOTES', 'TRIPPLE_TEXT', 'TRIPPLE_QUOTES_END', 'NAKED_STRING',
+ 'OTHER', 'NEWLINE', 'COMMENTSTART', 'error',
+ 'start', 'global_vars', 'sections', 'var_list',
+ 'section', 'newline', 'var', 'value',
+ );
/**
* lexer object
*
@@ -279,10 +285,61 @@ function __construct(Smarty_Internal_Configfilelexer $lex, Smarty_Internal_Confi
$this->configReadHidden = $this->smarty->config_read_hidden;
}
+ public static function yy_destructor($yymajor, $yypminor)
+ {
+ switch ($yymajor) {
+ default:
+ break; /* If no destructor action specified: do nothing */
+ }
+ }
+
+ /**
+ * parse single quoted string
+ * remove outer quotes
+ * unescape inner quotes
+ *
+ * @param string $qstr
+ *
+ * @return string
+ */
+ private static function parse_single_quoted_string($qstr)
+ {
+ $escaped_string = substr($qstr, 1, strlen($qstr) - 2); //remove outer quotes
+ $ss = preg_split('/(\\\\.)/', $escaped_string, -1, PREG_SPLIT_DELIM_CAPTURE);
+ $str = '';
+ foreach ($ss as $s) {
+ if (strlen($s) === 2 && $s[ 0 ] === '\\') {
+ if (isset(self::$escapes_single[ $s[ 1 ] ])) {
+ $s = self::$escapes_single[ $s[ 1 ] ];
+ }
+ }
+ $str .= $s;
+ }
+ return $str;
+ } /* Index of top element in stack */
+ /**
+ * parse double quoted string
+ *
+ * @param string $qstr
+ *
+ * @return string
+ */
+ private static function parse_double_quoted_string($qstr)
+ {
+ $inner_str = substr($qstr, 1, strlen($qstr) - 2);
+ return stripcslashes($inner_str);
+ } /* Shifts left before out of the error */
/**
- * @param $TraceFILE
- * @param $zTracePrompt
+ * parse triple quoted string
+ *
+ * @param string $qstr
+ *
+ * @return string
*/
+ private static function parse_tripple_double_quoted_string($qstr)
+ {
+ return stripcslashes($qstr);
+ } /* The parser's stack */
public function Trace($TraceFILE, $zTracePrompt)
{
if (!$TraceFILE) {
@@ -298,12 +355,8 @@ public function PrintTrace()
{
$this->yyTraceFILE = fopen('php://output', 'w');
$this->yyTracePrompt = '
';
- } /* Index of top element in stack */
- /**
- * @param $tokenType
- *
- * @return mixed|string
- */
+ }
+
public function tokenName($tokenType)
{
if ($tokenType === 0) {
@@ -314,17 +367,7 @@ public function tokenName($tokenType)
} else {
return "Unknown";
}
- } /* Shifts left before out of the error */
-
- public function __destruct()
- {
- while ($this->yystack !== Array()) {
- $this->yy_pop_parser_stack();
- }
- if (is_resource($this->yyTraceFILE)) {
- fclose($this->yyTraceFILE);
- }
- } /* The parser's stack */
+ }
public function yy_pop_parser_stack()
{
@@ -334,32 +377,25 @@ public function yy_pop_parser_stack()
$yytos = array_pop($this->yystack);
if ($this->yyTraceFILE && $this->yyidx >= 0) {
fwrite($this->yyTraceFILE,
- $this->yyTracePrompt . 'Popping ' . $this->yyTokenName[ $yytos->major ] . "\n");
+ $this->yyTracePrompt . 'Popping ' . $this->yyTokenName[ $yytos->major ] .
+ "\n");
}
$yymajor = $yytos->major;
self::yy_destructor($yymajor, $yytos->minor);
$this->yyidx--;
-
return $yymajor;
}
- /**
- * @param $yymajor
- * @param $yypminor
- */
- public static function yy_destructor($yymajor, $yypminor)
+ public function __destruct()
{
- switch ($yymajor) {
- default:
- break; /* If no destructor action specified: do nothing */
+ while ($this->yystack !== Array()) {
+ $this->yy_pop_parser_stack();
+ }
+ if (is_resource($this->yyTraceFILE)) {
+ fclose($this->yyTraceFILE);
}
}
- /**
- * @param $token
- *
- * @return array|mixed
- */
public function yy_get_expected_tokens($token)
{
static $res3 = array();
@@ -383,7 +419,7 @@ public function yy_get_expected_tokens($token)
// reduce action
$done = 0;
do {
- if ($done++ == 100) {
+ if ($done++ === 100) {
$this->yyidx = $yyidx;
$this->yystack = $stack;
// too much recursion prevents proper detection
@@ -391,9 +427,10 @@ public function yy_get_expected_tokens($token)
return array_unique($expected);
}
$yyruleno = $yyact - self::YYNSTATE;
- $this->yyidx -= self::$yyRuleInfo[ $yyruleno ][1];
- $nextstate = $this->yy_find_reduce_action($this->yystack[ $this->yyidx ]->stateno,
- self::$yyRuleInfo[ $yyruleno ][0]);
+ $this->yyidx -= self::$yyRuleInfo[ $yyruleno ][ 1 ];
+ $nextstate = $this->yy_find_reduce_action(
+ $this->yystack[ $this->yyidx ]->stateno,
+ self::$yyRuleInfo[ $yyruleno ][ 0 ]);
if (isset(self::$yyExpectedTokens[ $nextstate ])) {
$expected = array_merge($expected, self::$yyExpectedTokens[ $nextstate ]);
if (isset($res4[ $nextstate ][ $token ])) {
@@ -416,10 +453,10 @@ public function yy_get_expected_tokens($token)
$this->yyidx++;
$x = new TPC_yyStackEntry;
$x->stateno = $nextstate;
- $x->major = self::$yyRuleInfo[ $yyruleno ][0];
+ $x->major = self::$yyRuleInfo[ $yyruleno ][ 0 ];
$this->yystack[ $this->yyidx ] = $x;
continue 2;
- } else if ($nextstate == self::YYNSTATE + self::YYNRULE + 1) {
+ } else if ($nextstate === self::YYNSTATE + self::YYNRULE + 1) {
$this->yyidx = $yyidx;
$this->yystack = $stack;
// the last token was just ignored, we can't accept
@@ -440,19 +477,101 @@ public function yy_get_expected_tokens($token)
} while (true);
$this->yyidx = $yyidx;
$this->yystack = $stack;
-
return array_unique($expected);
}
- /**
- * @param $iLookAhead
- *
- * @return int|mixed
- */
+ public function yy_is_expected_token($token)
+ {
+ static $res = array();
+ static $res2 = array();
+ if ($token === 0) {
+ return true; // 0 is not part of this
+ }
+ $state = $this->yystack[ $this->yyidx ]->stateno;
+ if (isset($res[ $state ][ $token ])) {
+ if ($res[ $state ][ $token ]) {
+ return true;
+ }
+ } else {
+ if ($res[ $state ][ $token ] = in_array($token, self::$yyExpectedTokens[ $state ], true)) {
+ return true;
+ }
+ }
+ $stack = $this->yystack;
+ $yyidx = $this->yyidx;
+ do {
+ $yyact = $this->yy_find_shift_action($token);
+ if ($yyact >= self::YYNSTATE && $yyact < self::YYNSTATE + self::YYNRULE) {
+ // reduce action
+ $done = 0;
+ do {
+ if ($done++ === 100) {
+ $this->yyidx = $yyidx;
+ $this->yystack = $stack;
+ // too much recursion prevents proper detection
+ // so give up
+ return true;
+ }
+ $yyruleno = $yyact - self::YYNSTATE;
+ $this->yyidx -= self::$yyRuleInfo[ $yyruleno ][ 1 ];
+ $nextstate = $this->yy_find_reduce_action(
+ $this->yystack[ $this->yyidx ]->stateno,
+ self::$yyRuleInfo[ $yyruleno ][ 0 ]);
+ if (isset($res2[ $nextstate ][ $token ])) {
+ if ($res2[ $nextstate ][ $token ]) {
+ $this->yyidx = $yyidx;
+ $this->yystack = $stack;
+ return true;
+ }
+ } else {
+ if ($res2[ $nextstate ][ $token ] = (isset(self::$yyExpectedTokens[ $nextstate ]) &&
+ in_array($token,
+ self::$yyExpectedTokens[ $nextstate ],
+ true))) {
+ $this->yyidx = $yyidx;
+ $this->yystack = $stack;
+ return true;
+ }
+ }
+ if ($nextstate < self::YYNSTATE) {
+ // we need to shift a non-terminal
+ $this->yyidx++;
+ $x = new TPC_yyStackEntry;
+ $x->stateno = $nextstate;
+ $x->major = self::$yyRuleInfo[ $yyruleno ][ 0 ];
+ $this->yystack[ $this->yyidx ] = $x;
+ continue 2;
+ } else if ($nextstate === self::YYNSTATE + self::YYNRULE + 1) {
+ $this->yyidx = $yyidx;
+ $this->yystack = $stack;
+ if (!$token) {
+ // end of input: this is valid
+ return true;
+ }
+ // the last token was just ignored, we can't accept
+ // by ignoring input, this is in essence ignoring a
+ // syntax error!
+ return false;
+ } else if ($nextstate === self::YY_NO_ACTION) {
+ $this->yyidx = $yyidx;
+ $this->yystack = $stack;
+ // input accepted, but not shifted (I guess)
+ return true;
+ } else {
+ $yyact = $nextstate;
+ }
+ } while (true);
+ }
+ break;
+ } while (true);
+ $this->yyidx = $yyidx;
+ $this->yystack = $stack;
+ return true;
+ }
+
public function yy_find_shift_action($iLookAhead)
{
$stateno = $this->yystack[ $this->yyidx ]->stateno;
-
/* if ($this->yyidx < 0) return self::YY_NO_ACTION; */
if (!isset(self::$yy_shift_ofst[ $stateno ])) {
// no shift actions
@@ -462,123 +581,104 @@ public function yy_find_shift_action($iLookAhead)
if ($i === self::YY_SHIFT_USE_DFLT) {
return self::$yy_default[ $stateno ];
}
- if ($iLookAhead == self::YYNOCODE) {
+ if ($iLookAhead === self::YYNOCODE) {
return self::YY_NO_ACTION;
}
$i += $iLookAhead;
- if ($i < 0 || $i >= self::YY_SZ_ACTTAB || self::$yy_lookahead[ $i ] != $iLookAhead) {
- if (count(self::$yyFallback) && $iLookAhead < count(self::$yyFallback) &&
- ($iFallback = self::$yyFallback[ $iLookAhead ]) != 0) {
+ if ($i < 0 || $i >= self::YY_SZ_ACTTAB ||
+ self::$yy_lookahead[ $i ] != $iLookAhead) {
+ if (count(self::$yyFallback) && $iLookAhead < count(self::$yyFallback)
+ && ($iFallback = self::$yyFallback[ $iLookAhead ]) != 0) {
if ($this->yyTraceFILE) {
fwrite($this->yyTraceFILE,
- $this->yyTracePrompt . "FALLBACK " . $this->yyTokenName[ $iLookAhead ] . " => " .
+ $this->yyTracePrompt . "FALLBACK " .
+ $this->yyTokenName[ $iLookAhead ] . " => " .
$this->yyTokenName[ $iFallback ] . "\n");
}
-
return $this->yy_find_shift_action($iFallback);
}
-
return self::$yy_default[ $stateno ];
} else {
return self::$yy_action[ $i ];
}
}
- /**
- * @param $stateno
- * @param $iLookAhead
- *
- * @return int|mixed
- */
public function yy_find_reduce_action($stateno, $iLookAhead)
{
/* $stateno = $this->yystack[$this->yyidx]->stateno; */
-
if (!isset(self::$yy_reduce_ofst[ $stateno ])) {
return self::$yy_default[ $stateno ];
}
$i = self::$yy_reduce_ofst[ $stateno ];
- if ($i == self::YY_REDUCE_USE_DFLT) {
+ if ($i === self::YY_REDUCE_USE_DFLT) {
return self::$yy_default[ $stateno ];
}
- if ($iLookAhead == self::YYNOCODE) {
+ if ($iLookAhead === self::YYNOCODE) {
return self::YY_NO_ACTION;
}
$i += $iLookAhead;
- if ($i < 0 || $i >= self::YY_SZ_ACTTAB || self::$yy_lookahead[ $i ] != $iLookAhead) {
+ if ($i < 0 || $i >= self::YY_SZ_ACTTAB ||
+ self::$yy_lookahead[ $i ] != $iLookAhead) {
return self::$yy_default[ $stateno ];
} else {
return self::$yy_action[ $i ];
}
}
- function yy_r0()
- {
- $this->_retvalue = null;
- }
-
- function yy_r1()
- {
- $this->add_global_vars($this->yystack[ $this->yyidx + 0 ]->minor);
- $this->_retvalue = null;
- }
-
- /**
- * add config variable to global vars
- *
- * @param array $vars
- */
- private function add_global_vars(Array $vars)
+ public function yy_shift($yyNewState, $yyMajor, $yypMinor)
{
- if (!isset($this->compiler->config_data['vars'])) {
- $this->compiler->config_data['vars'] = Array();
- }
- foreach ($vars as $var) {
- $this->set_var($var, $this->compiler->config_data);
- }
- }
-
- /**
- * set a config variable in target array
- *
- * @param array $var
- * @param array $target_array
- */
- private function set_var(Array $var, Array &$target_array)
- {
- $key = $var["key"];
- $value = $var["value"];
-
- if ($this->configOverwrite || !isset($target_array['vars'][ $key ])) {
- $target_array['vars'][ $key ] = $value;
- } else {
- settype($target_array['vars'][ $key ], 'array');
- $target_array['vars'][ $key ][] = $value;
+ $this->yyidx++;
+ if ($this->yyidx >= self::YYSTACKDEPTH) {
+ $this->yyidx--;
+ if ($this->yyTraceFILE) {
+ fprintf($this->yyTraceFILE, "%sStack Overflow!\n", $this->yyTracePrompt);
+ }
+ while ($this->yyidx >= 0) {
+ $this->yy_pop_parser_stack();
+ }
+ #line 239 "../smarty/lexer/smarty_internal_configfileparser.y"
+ $this->internalError = true;
+ $this->compiler->trigger_config_file_error('Stack overflow in configfile parser');
+ return;
+ }
+ $yytos = new TPC_yyStackEntry;
+ $yytos->stateno = $yyNewState;
+ $yytos->major = $yyMajor;
+ $yytos->minor = $yypMinor;
+ $this->yystack[] = $yytos;
+ if ($this->yyTraceFILE && $this->yyidx > 0) {
+ fprintf($this->yyTraceFILE,
+ "%sShift %d\n",
+ $this->yyTracePrompt,
+ $yyNewState);
+ fprintf($this->yyTraceFILE, "%sStack:", $this->yyTracePrompt);
+ for ($i = 1; $i <= $this->yyidx; $i++) {
+ fprintf($this->yyTraceFILE,
+ " %s",
+ $this->yyTokenName[ $this->yystack[ $i ]->major ]);
+ }
+ fwrite($this->yyTraceFILE, "\n");
}
}
- function yy_r4()
+ function yy_r0()
{
- $this->add_section_vars($this->yystack[ $this->yyidx + -3 ]->minor, $this->yystack[ $this->yyidx + 0 ]->minor);
$this->_retvalue = null;
}
- /**
- * add config variable to section
- *
- * @param string $section_name
- * @param array $vars
- */
- private function add_section_vars($section_name, Array $vars)
+ function yy_r1()
{
- if (!isset($this->compiler->config_data['sections'][ $section_name ]['vars'])) {
- $this->compiler->config_data['sections'][ $section_name ]['vars'] = Array();
- }
- foreach ($vars as $var) {
- $this->set_var($var, $this->compiler->config_data['sections'][ $section_name ]);
- }
+ $this->add_global_vars($this->yystack[ $this->yyidx + 0 ]->minor);
+ $this->_retvalue = null;
+ }
+
+ function yy_r4()
+ {
+ $this->add_section_vars($this->yystack[ $this->yyidx + -3 ]->minor, $this->yystack[ $this->yyidx + 0 ]->minor);
+ $this->_retvalue = null;
}
+ #line 245 "../smarty/lexer/smarty_internal_configfileparser.y"
function yy_r5()
{
if ($this->configReadHidden) {
@@ -588,180 +688,159 @@ function yy_r5()
$this->_retvalue = null;
}
+ #line 250 "../smarty/lexer/smarty_internal_configfileparser.y"
function yy_r6()
{
$this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor;
}
- #line 245 "../smarty/lexer/smarty_internal_configfileparser.y"
-
+ #line 264 "../smarty/lexer/smarty_internal_configfileparser.y"
function yy_r7()
{
$this->_retvalue =
- array_merge($this->yystack[ $this->yyidx + -1 ]->minor, Array($this->yystack[ $this->yyidx + 0 ]->minor));
+ array_merge($this->yystack[ $this->yyidx + -1 ]->minor, array($this->yystack[ $this->yyidx + 0 ]->minor));
}
- #line 250 "../smarty/lexer/smarty_internal_configfileparser.y"
-
+ #line 269 "../smarty/lexer/smarty_internal_configfileparser.y"
function yy_r8()
{
- $this->_retvalue = Array();
+ $this->_retvalue = array();
}
- #line 264 "../smarty/lexer/smarty_internal_configfileparser.y"
-
+ #line 277 "../smarty/lexer/smarty_internal_configfileparser.y"
function yy_r9()
{
- $this->_retvalue = Array("key" => $this->yystack[ $this->yyidx + -2 ]->minor,
- "value" => $this->yystack[ $this->yyidx + 0 ]->minor);
+ $this->_retvalue = array('key' => $this->yystack[ $this->yyidx + -2 ]->minor,
+ 'value' => $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 269 "../smarty/lexer/smarty_internal_configfileparser.y"
-
+ #line 281 "../smarty/lexer/smarty_internal_configfileparser.y"
function yy_r10()
{
$this->_retvalue = (float)$this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 277 "../smarty/lexer/smarty_internal_configfileparser.y"
-
+ #line 285 "../smarty/lexer/smarty_internal_configfileparser.y"
function yy_r11()
{
$this->_retvalue = (int)$this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 281 "../smarty/lexer/smarty_internal_configfileparser.y"
-
+ #line 291 "../smarty/lexer/smarty_internal_configfileparser.y"
function yy_r12()
{
$this->_retvalue = $this->parse_bool($this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 285 "../smarty/lexer/smarty_internal_configfileparser.y"
-
- /**
- * parse optional boolean keywords
- *
- * @param string $str
- *
- * @return bool
- */
- private function parse_bool($str)
- {
- $str = strtolower($str);
- if (in_array($str, array('on', 'yes', 'true'))) {
- $res = true;
- } else {
- $res = false;
- }
- return $res;
- }
-
- #line 291 "../smarty/lexer/smarty_internal_configfileparser.y"
-
+ #line 296 "../smarty/lexer/smarty_internal_configfileparser.y"
function yy_r13()
{
$this->_retvalue = self::parse_single_quoted_string($this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 296 "../smarty/lexer/smarty_internal_configfileparser.y"
-
- /**
- * parse single quoted string
- * remove outer quotes
- * unescape inner quotes
- *
- * @param string $qstr
- *
- * @return string
- */
- private static function parse_single_quoted_string($qstr)
- {
- $escaped_string = substr($qstr, 1, strlen($qstr) - 2); //remove outer quotes
-
- $ss = preg_split('/(\\\\.)/', $escaped_string, -1, PREG_SPLIT_DELIM_CAPTURE);
-
- $str = "";
- foreach ($ss as $s) {
- if (strlen($s) === 2 && $s[0] === '\\') {
- if (isset(self::$escapes_single[ $s[1] ])) {
- $s = self::$escapes_single[ $s[1] ];
- }
- }
- $str .= $s;
- }
- return $str;
- }
-
#line 300 "../smarty/lexer/smarty_internal_configfileparser.y"
-
function yy_r14()
{
$this->_retvalue = self::parse_double_quoted_string($this->yystack[ $this->yyidx + 0 ]->minor);
}
#line 304 "../smarty/lexer/smarty_internal_configfileparser.y"
-
- /**
- * parse double quoted string
- *
- * @param string $qstr
- *
- * @return string
- */
- private static function parse_double_quoted_string($qstr)
+ function yy_r15()
{
- $inner_str = substr($qstr, 1, strlen($qstr) - 2);
- return stripcslashes($inner_str);
+ $this->_retvalue = self::parse_tripple_double_quoted_string($this->yystack[ $this->yyidx + -1 ]->minor);
}
#line 308 "../smarty/lexer/smarty_internal_configfileparser.y"
-
- function yy_r15()
+ function yy_r16()
{
- $this->_retvalue = self::parse_tripple_double_quoted_string($this->yystack[ $this->yyidx + -1 ]->minor);
+ $this->_retvalue = '';
}
#line 312 "../smarty/lexer/smarty_internal_configfileparser.y"
-
- /**
- * parse triple quoted string
- *
- * @param string $qstr
- *
- * @return string
- */
- private static function parse_tripple_double_quoted_string($qstr)
+ function yy_r17()
{
- return stripcslashes($qstr);
+ $this->_retvalue = $this->yystack[ $this->yyidx + 0 ]->minor;
}
#line 316 "../smarty/lexer/smarty_internal_configfileparser.y"
-
- function yy_r16()
+ public function yy_reduce($yyruleno)
{
- $this->_retvalue = '';
+ if ($this->yyTraceFILE && $yyruleno >= 0
+ && $yyruleno < count(self::$yyRuleName)) {
+ fprintf($this->yyTraceFILE,
+ "%sReduce (%d) [%s].\n",
+ $this->yyTracePrompt,
+ $yyruleno,
+ self::$yyRuleName[ $yyruleno ]);
+ }
+ $this->_retvalue = $yy_lefthand_side = null;
+ if (isset(self::$yyReduceMap[ $yyruleno ])) {
+ // call the action
+ $this->_retvalue = null;
+ $this->{'yy_r' . self::$yyReduceMap[ $yyruleno ]}();
+ $yy_lefthand_side = $this->_retvalue;
+ }
+ $yygoto = self::$yyRuleInfo[ $yyruleno ][ 0 ];
+ $yysize = self::$yyRuleInfo[ $yyruleno ][ 1 ];
+ $this->yyidx -= $yysize;
+ for ($i = $yysize; $i; $i--) {
+ // pop all of the right-hand side parameters
+ array_pop($this->yystack);
+ }
+ $yyact = $this->yy_find_reduce_action($this->yystack[ $this->yyidx ]->stateno, $yygoto);
+ if ($yyact < self::YYNSTATE) {
+ if (!$this->yyTraceFILE && $yysize) {
+ $this->yyidx++;
+ $x = new TPC_yyStackEntry;
+ $x->stateno = $yyact;
+ $x->major = $yygoto;
+ $x->minor = $yy_lefthand_side;
+ $this->yystack[ $this->yyidx ] = $x;
+ } else {
+ $this->yy_shift($yyact, $yygoto, $yy_lefthand_side);
+ }
+ } else if ($yyact === self::YYNSTATE + self::YYNRULE + 1) {
+ $this->yy_accept();
+ }
}
#line 320 "../smarty/lexer/smarty_internal_configfileparser.y"
-
- function yy_r17()
+ public function yy_parse_failed()
{
- $this->_retvalue = $this->yystack[ $this->yyidx + 0 ]->minor;
+ if ($this->yyTraceFILE) {
+ fprintf($this->yyTraceFILE, "%sFail!\n", $this->yyTracePrompt);
+ }
+ while ($this->yyidx >= 0) {
+ $this->yy_pop_parser_stack();
+ }
}
#line 324 "../smarty/lexer/smarty_internal_configfileparser.y"
+ public function yy_syntax_error($yymajor, $TOKEN)
+ {
+ #line 232 "../smarty/lexer/smarty_internal_configfileparser.y"
+ $this->internalError = true;
+ $this->yymajor = $yymajor;
+ $this->compiler->trigger_config_file_error();
+ }
+
+ public function yy_accept()
+ {
+ if ($this->yyTraceFILE) {
+ fprintf($this->yyTraceFILE, "%sAccept!\n", $this->yyTracePrompt);
+ }
+ while ($this->yyidx >= 0) {
+ $this->yy_pop_parser_stack();
+ }
+ #line 225 "../smarty/lexer/smarty_internal_configfileparser.y"
+ $this->successful = !$this->internalError;
+ $this->internalError = false;
+ $this->retvalue = $this->_retvalue;
+ }
- /**
- * @param $yymajor
- * @param $yytokenvalue
- *
- * @throws \SmartyCompilerException
- */
public function doParse($yymajor, $yytokenvalue)
{
$yyerrorhit = 0; /* True if yymajor has invoked an error */
-
if ($this->yyidx === null || $this->yyidx < 0) {
$this->yyidx = 0;
$this->yyerrcnt = -1;
@@ -772,17 +851,16 @@ public function doParse($yymajor, $yytokenvalue)
$this->yystack[] = $x;
}
$yyendofinput = ($yymajor == 0);
-
if ($this->yyTraceFILE) {
fprintf($this->yyTraceFILE,
"%sInput %s\n",
$this->yyTracePrompt,
$this->yyTokenName[ $yymajor ]);
}
-
do {
$yyact = $this->yy_find_shift_action($yymajor);
- if ($yymajor < self::YYERRORSYMBOL && !$this->yy_is_expected_token($yymajor)) {
+ if ($yymajor < self::YYERRORSYMBOL &&
+ !$this->yy_is_expected_token($yymajor)) {
// force a syntax error
$yyact = self::YY_ERROR_ACTION;
}
@@ -796,7 +874,7 @@ public function doParse($yymajor, $yytokenvalue)
}
} else if ($yyact < self::YYNSTATE + self::YYNRULE) {
$this->yy_reduce($yyact - self::YYNSTATE);
- } else if ($yyact == self::YY_ERROR_ACTION) {
+ } else if ($yyact === self::YY_ERROR_ACTION) {
if ($this->yyTraceFILE) {
fprintf($this->yyTraceFILE,
"%sSyntax Error!\n",
@@ -807,7 +885,7 @@ public function doParse($yymajor, $yytokenvalue)
$this->yy_syntax_error($yymajor, $yytokenvalue);
}
$yymx = $this->yystack[ $this->yyidx ]->major;
- if ($yymx == self::YYERRORSYMBOL || $yyerrorhit) {
+ if ($yymx === self::YYERRORSYMBOL || $yyerrorhit) {
if ($this->yyTraceFILE) {
fprintf($this->yyTraceFILE,
"%sDiscard input token %s\n",
@@ -817,15 +895,17 @@ public function doParse($yymajor, $yytokenvalue)
$this->yy_destructor($yymajor, $yytokenvalue);
$yymajor = self::YYNOCODE;
} else {
- while ($this->yyidx >= 0 && $yymx != self::YYERRORSYMBOL &&
- ($yyact = $this->yy_find_shift_action(self::YYERRORSYMBOL)) >= self::YYNSTATE) {
+ while ($this->yyidx >= 0 &&
+ $yymx !== self::YYERRORSYMBOL &&
+ ($yyact = $this->yy_find_shift_action(self::YYERRORSYMBOL)) >= self::YYNSTATE
+ ) {
$this->yy_pop_parser_stack();
}
if ($this->yyidx < 0 || $yymajor == 0) {
$this->yy_destructor($yymajor, $yytokenvalue);
$this->yy_parse_failed();
$yymajor = self::YYNOCODE;
- } else if ($yymx != self::YYERRORSYMBOL) {
+ } else if ($yymx !== self::YYERRORSYMBOL) {
$u2 = 0;
$this->yy_shift($yyact, self::YYERRORSYMBOL, $u2);
}
@@ -847,231 +927,73 @@ public function doParse($yymajor, $yytokenvalue)
$this->yy_accept();
$yymajor = self::YYNOCODE;
}
- } while ($yymajor != self::YYNOCODE && $this->yyidx >= 0);
+ } while ($yymajor !== self::YYNOCODE && $this->yyidx >= 0);
}
/**
- * @param $token
+ * parse optional boolean keywords
+ *
+ * @param string $str
*
* @return bool
*/
- public function yy_is_expected_token($token)
+ private function parse_bool($str)
{
- static $res = array();
- static $res2 = array();
- if ($token === 0) {
- return true; // 0 is not part of this
- }
- $state = $this->yystack[ $this->yyidx ]->stateno;
- if (isset($res[ $state ][ $token ])) {
- if ($res[ $state ][ $token ]) {
- return true;
- }
+ $str = strtolower($str);
+ if (in_array($str, array('on', 'yes', 'true'))) {
+ $res = true;
} else {
- if ($res[ $state ][ $token ] = in_array($token, self::$yyExpectedTokens[ $state ], true)) {
- return true;
- }
+ $res = false;
}
- $stack = $this->yystack;
- $yyidx = $this->yyidx;
- do {
- $yyact = $this->yy_find_shift_action($token);
- if ($yyact >= self::YYNSTATE && $yyact < self::YYNSTATE + self::YYNRULE) {
- // reduce action
- $done = 0;
- do {
- if ($done++ == 100) {
- $this->yyidx = $yyidx;
- $this->yystack = $stack;
- // too much recursion prevents proper detection
- // so give up
- return true;
- }
- $yyruleno = $yyact - self::YYNSTATE;
- $this->yyidx -= self::$yyRuleInfo[ $yyruleno ][1];
- $nextstate = $this->yy_find_reduce_action($this->yystack[ $this->yyidx ]->stateno,
- self::$yyRuleInfo[ $yyruleno ][0]);
- if (isset($res2[ $nextstate ][ $token ])) {
- if ($res2[ $nextstate ][ $token ]) {
- $this->yyidx = $yyidx;
- $this->yystack = $stack;
- return true;
- }
- } else {
- if ($res2[ $nextstate ][ $token ] = (isset(self::$yyExpectedTokens[ $nextstate ]) &&
- in_array($token,
- self::$yyExpectedTokens[ $nextstate ],
- true))) {
- $this->yyidx = $yyidx;
- $this->yystack = $stack;
- return true;
- }
- }
- if ($nextstate < self::YYNSTATE) {
- // we need to shift a non-terminal
- $this->yyidx++;
- $x = new TPC_yyStackEntry;
- $x->stateno = $nextstate;
- $x->major = self::$yyRuleInfo[ $yyruleno ][0];
- $this->yystack[ $this->yyidx ] = $x;
- continue 2;
- } else if ($nextstate == self::YYNSTATE + self::YYNRULE + 1) {
- $this->yyidx = $yyidx;
- $this->yystack = $stack;
- if (!$token) {
- // end of input: this is valid
- return true;
- }
- // the last token was just ignored, we can't accept
- // by ignoring input, this is in essence ignoring a
- // syntax error!
- return false;
- } else if ($nextstate === self::YY_NO_ACTION) {
- $this->yyidx = $yyidx;
- $this->yystack = $stack;
- // input accepted, but not shifted (I guess)
- return true;
- } else {
- $yyact = $nextstate;
- }
- } while (true);
- }
- break;
- } while (true);
- $this->yyidx = $yyidx;
- $this->yystack = $stack;
-
- return true;
+ return $res;
}
/**
- * @param $yyNewState
- * @param $yyMajor
- * @param $yypMinor
+ * set a config variable in target array
*
- * @throws \SmartyCompilerException
+ * @param array $var
+ * @param array $target_array
*/
- public function yy_shift($yyNewState, $yyMajor, $yypMinor)
+ private function set_var(array $var, array &$target_array)
{
- $this->yyidx++;
- if ($this->yyidx >= self::YYSTACKDEPTH) {
- $this->yyidx--;
- if ($this->yyTraceFILE) {
- fprintf($this->yyTraceFILE, "%sStack Overflow!\n", $this->yyTracePrompt);
- }
- while ($this->yyidx >= 0) {
- $this->yy_pop_parser_stack();
- }
- #line 239 "../smarty/lexer/smarty_internal_configfileparser.y"
-
- $this->internalError = true;
- $this->compiler->trigger_config_file_error("Stack overflow in configfile parser");
-
- return;
- }
- $yytos = new TPC_yyStackEntry;
- $yytos->stateno = $yyNewState;
- $yytos->major = $yyMajor;
- $yytos->minor = $yypMinor;
- $this->yystack[] = $yytos;
- if ($this->yyTraceFILE && $this->yyidx > 0) {
- fprintf($this->yyTraceFILE,
- "%sShift %d\n",
- $this->yyTracePrompt,
- $yyNewState);
- fprintf($this->yyTraceFILE, "%sStack:", $this->yyTracePrompt);
- for ($i = 1; $i <= $this->yyidx; $i++) {
- fprintf($this->yyTraceFILE,
- " %s",
- $this->yyTokenName[ $this->yystack[ $i ]->major ]);
- }
- fwrite($this->yyTraceFILE, "\n");
+ $key = $var[ 'key' ];
+ $value = $var[ 'value' ];
+ if ($this->configOverwrite || !isset($target_array[ 'vars' ][ $key ])) {
+ $target_array[ 'vars' ][ $key ] = $value;
+ } else {
+ settype($target_array[ 'vars' ][ $key ], 'array');
+ $target_array[ 'vars' ][ $key ][] = $value;
}
}
/**
- * @param $yyruleno
+ * add config variable to global vars
*
- * @throws \SmartyCompilerException
+ * @param array $vars
*/
- public function yy_reduce($yyruleno)
+ private function add_global_vars(array $vars)
{
- if ($this->yyTraceFILE && $yyruleno >= 0 && $yyruleno < count(self::$yyRuleName)) {
- fprintf($this->yyTraceFILE,
- "%sReduce (%d) [%s].\n",
- $this->yyTracePrompt,
- $yyruleno,
- self::$yyRuleName[ $yyruleno ]);
+ if (!isset($this->compiler->config_data[ 'vars' ])) {
+ $this->compiler->config_data[ 'vars' ] = array();
}
-
- $this->_retvalue = $yy_lefthand_side = null;
- if (isset(self::$yyReduceMap[ $yyruleno ])) {
- // call the action
- $this->_retvalue = null;
- $this->{'yy_r' . self::$yyReduceMap[ $yyruleno ]}();
- $yy_lefthand_side = $this->_retvalue;
- }
- $yygoto = self::$yyRuleInfo[ $yyruleno ][0];
- $yysize = self::$yyRuleInfo[ $yyruleno ][1];
- $this->yyidx -= $yysize;
- for ($i = $yysize; $i; $i--) {
- // pop all of the right-hand side parameters
- array_pop($this->yystack);
- }
- $yyact = $this->yy_find_reduce_action($this->yystack[ $this->yyidx ]->stateno, $yygoto);
- if ($yyact < self::YYNSTATE) {
- if (!$this->yyTraceFILE && $yysize) {
- $this->yyidx++;
- $x = new TPC_yyStackEntry;
- $x->stateno = $yyact;
- $x->major = $yygoto;
- $x->minor = $yy_lefthand_side;
- $this->yystack[ $this->yyidx ] = $x;
- } else {
- $this->yy_shift($yyact, $yygoto, $yy_lefthand_side);
- }
- } else if ($yyact == self::YYNSTATE + self::YYNRULE + 1) {
- $this->yy_accept();
- }
- }
-
- public function yy_accept()
- {
- if ($this->yyTraceFILE) {
- fprintf($this->yyTraceFILE, "%sAccept!\n", $this->yyTracePrompt);
- }
- while ($this->yyidx >= 0) {
- $this->yy_pop_parser_stack();
+ foreach ($vars as $var) {
+ $this->set_var($var, $this->compiler->config_data);
}
- #line 225 "../smarty/lexer/smarty_internal_configfileparser.y"
-
- $this->successful = !$this->internalError;
- $this->internalError = false;
- $this->retvalue = $this->_retvalue;
}
/**
- * @param $yymajor
- * @param $TOKEN
+ * add config variable to section
*
- * @throws \SmartyCompilerException
+ * @param string $section_name
+ * @param array $vars
*/
- public function yy_syntax_error($yymajor, $TOKEN)
- {
- #line 232 "../smarty/lexer/smarty_internal_configfileparser.y"
-
- $this->internalError = true;
- $this->yymajor = $yymajor;
- $this->compiler->trigger_config_file_error();
- }
-
- public function yy_parse_failed()
+ private function add_section_vars($section_name, array $vars)
{
- if ($this->yyTraceFILE) {
- fprintf($this->yyTraceFILE, "%sFail!\n", $this->yyTracePrompt);
+ if (!isset($this->compiler->config_data[ 'sections' ][ $section_name ][ 'vars' ])) {
+ $this->compiler->config_data[ 'sections' ][ $section_name ][ 'vars' ] = array();
}
- while ($this->yyidx >= 0) {
- $this->yy_pop_parser_stack();
+ foreach ($vars as $var) {
+ $this->set_var($var, $this->compiler->config_data[ 'sections' ][ $section_name ]);
}
}
}
diff --git a/libs/sysplugins/smarty_internal_templatelexer.php b/libs/sysplugins/smarty_internal_templatelexer.php
index 3da1a2dab..02587c435 100644
--- a/libs/sysplugins/smarty_internal_templatelexer.php
+++ b/libs/sysplugins/smarty_internal_templatelexer.php
@@ -250,17 +250,11 @@ public function isAutoLiteral()
strpos(" \n\t\r", $this->value[ $this->compiler->getLdelLength() ]) !== false : false;
} // end function
- /**
- * @return mixed
- */
public function yylex()
{
return $this->{'yylex' . $this->_yy_state}();
}
- /**
- * @param $state
- */
public function yypushstate($state)
{
if ($this->yyTraceFILE) {
@@ -300,9 +294,6 @@ public function yypopstate()
}
}
- /**
- * @param $state
- */
public function yybegin($state)
{
$this->_yy_state = $state;
@@ -315,10 +306,6 @@ public function yybegin($state)
}
}
- /**
- * @return bool
- * @throws \Exception
- */
public function yylex1()
{
if (!isset($this->yy_global_pattern1)) {
@@ -379,17 +366,13 @@ function yy_r1_1()
$this->token = Smarty_Internal_Templateparser::TP_TEXT;
}
- /**
- * @return bool
- * @throws \SmartyCompilerException
- */
function yy_r1_2()
{
preg_match("/[*]{$this->compiler->getRdelPreg()}/", $this->data, $match, PREG_OFFSET_CAPTURE, $this->counter);
if (isset($match[ 0 ][ 1 ])) {
$to = $match[ 0 ][ 1 ] + strlen($match[ 0 ][ 0 ]);
} else {
- $this->compiler->trigger_template_error("missing or misspelled comment closing tag '*{$this->smarty->getRightDelimiter()}'");
+ $this->compiler->trigger_template_error("missing or misspelled comment closing tag '{$this->smarty->getRightDelimiter()}'");
}
$this->value = substr($this->data, $this->counter, $to - $this->counter);
return false;
@@ -417,9 +400,6 @@ function yy_r1_12()
$this->yypushstate(self::LITERAL);
} // end function
- /**
- * @return bool
- */
function yy_r1_14()
{
$this->yypushstate(self::TAG);
@@ -436,10 +416,6 @@ function yy_r1_19()
$this->token = Smarty_Internal_Templateparser::TP_TEXT;
}
- /**
- * @return bool
- * @throws \Exception
- */
public function yylex2()
{
if (!isset($this->yy_global_pattern2)) {
@@ -572,15 +548,11 @@ function yy_r2_22()
$this->taglineno = $this->line;
}
- /**
- * @return bool
- * @throws \Exception
- */
public function yylex3()
{
if (!isset($this->yy_global_pattern3)) {
$this->yy_global_pattern3 =
- $this->replace("/\G(\\s*SMARTYrdel)|\G((SMARTYldel)SMARTYal)|\G([\"])|\G('[^'\\\\]*(?:\\\\.[^'\\\\]*)*')|\G([$][0-9]*[a-zA-Z_]\\w*)|\G([$])|\G(\\s+is\\s+in\\s+)|\G(\\s+as\\s+)|\G(\\s+to\\s+)|\G(\\s+step\\s+)|\G(\\s+instanceof\\s+)|\G(\\s*([!=][=]{1,2}|[<][=>]?|[>][=]?|[&|]{2})\\s*)|\G(\\s+(eq|ne|neq|gt|ge|gte|lt|le|lte|mod|and|or|xor)\\s+)|\G(\\s+is\\s+(not\\s+)?(odd|even|div)\\s+by\\s+)|\G(\\s+is\\s+(not\\s+)?(odd|even))|\G([!]\\s*|not\\s+)|\G([(](int(eger)?|bool(ean)?|float|double|real|string|binary|array|object)[)]\\s*)|\G(\\s*[(]\\s*)|\G(\\s*[)])|\G(\\[\\s*)|\G(\\s*\\])|\G(\\s*[-][>]\\s*)|\G(\\s*[=][>]\\s*)|\G(\\s*[=]\\s*)|\G(([+]|[-]){2})|\G(\\s*([+]|[-])\\s*)|\G(\\s*([*]{1,2}|[%\/^&]|[<>]{2})\\s*)|\G([@])|\G([#])|\G(\\s+[0-9]*[a-zA-Z_][a-zA-Z0-9_\-:]*\\s*[=]\\s*)|\G(([0-9]*[a-zA-Z_]\\w*)?(\\\\[0-9]*[a-zA-Z_]\\w*)+)|\G([0-9]*[a-zA-Z_]\\w*)|\G(\\d+)|\G([`])|\G([|])|\G([.])|\G(\\s*[,]\\s*)|\G(\\s*[;]\\s*)|\G([:]{2})|\G(\\s*[:]\\s*)|\G(\\s*[?]\\s*)|\G(0[xX][0-9a-fA-F]+)|\G(\\s+)|\G([\S\s])/isS");
+ $this->replace("/\G(\\s*SMARTYrdel)|\G((SMARTYldel)SMARTYal)|\G([\"])|\G('[^'\\\\]*(?:\\\\.[^'\\\\]*)*')|\G([$][0-9]*[a-zA-Z_]\\w*)|\G([$])|\G(\\s+is\\s+in\\s+)|\G(\\s+as\\s+)|\G(\\s+to\\s+)|\G(\\s+step\\s+)|\G(\\s+instanceof\\s+)|\G(\\s*([!=][=]{1,2}|[<][=>]?|[>][=]?|[&|]{2})\\s*)|\G(\\s+(eq|ne|neq|gt|ge|gte|lt|le|lte|mod|and|or|xor)\\s+)|\G(\\s+is\\s+(not\\s+)?(odd|even|div)\\s+by\\s+)|\G(\\s+is\\s+(not\\s+)?(odd|even))|\G([!]\\s*|not\\s+)|\G([(](int(eger)?|bool(ean)?|float|double|real|string|binary|array|object)[)]\\s*)|\G(\\s*[(]\\s*)|\G(\\s*[)])|\G(\\[\\s*)|\G(\\s*\\])|\G(\\s*[-][>]\\s*)|\G(\\s*[=][>]\\s*)|\G(\\s*[=]\\s*)|\G(([+]|[-]){2})|\G(\\s*([+]|[-])\\s*)|\G(\\s*([*]{1,2}|[%\/^&]|[<>]{2})\\s*)|\G([@])|\G([#])|\G(\\s+[0-9]*[a-zA-Z_][a-zA-Z0-9_\-:]*\\s*[=]\\s*)|\G(([0-9]*[a-zA-Z_]\\w*)?(\\\\[0-9]*[a-zA-Z_]\\w*)+)|\G([0-9]*[a-zA-Z_]\\w*)|\G(\\d+)|\G([`])|\G([|][@]?)|\G([.])|\G(\\s*[,]\\s*)|\G(\\s*[;]\\s*)|\G([:]{2})|\G(\\s*[:]\\s*)|\G(\\s*[?]\\s*)|\G(0[xX][0-9a-fA-F]+)|\G(\\s+)|\G([\S\s])/isS");
}
if (!isset($this->dataLength)) {
$this->dataLength = strlen($this->data);
@@ -637,9 +609,6 @@ function yy_r3_1()
$this->yypopstate();
}
- /**
- * @return bool
- */
function yy_r3_2()
{
$this->yypushstate(self::TAG);
@@ -867,10 +836,6 @@ function yy_r3_59()
$this->token = Smarty_Internal_Templateparser::TP_TEXT;
}
- /**
- * @return bool
- * @throws \Exception
- */
public function yylex4()
{
if (!isset($this->yy_global_pattern4)) {
@@ -948,10 +913,6 @@ function yy_r4_5()
$this->token = Smarty_Internal_Templateparser::TP_LITERAL;
} // end function
- /**
- * @return bool
- * @throws \Exception
- */
public function yylex5()
{
if (!isset($this->yy_global_pattern5)) {
@@ -1022,18 +983,12 @@ function yy_r5_5()
$this->token = Smarty_Internal_Templateparser::TP_TEXT;
}
- /**
- * @return bool
- */
function yy_r5_7()
{
$this->yypushstate(self::TAG);
return true;
}
- /**
- * @return bool
- */
function yy_r5_9()
{
$this->yypushstate(self::TAG);
diff --git a/libs/sysplugins/smarty_internal_templateparser.php b/libs/sysplugins/smarty_internal_templateparser.php
index 7f2bb322a..66d72b5ea 100644
--- a/libs/sysplugins/smarty_internal_templateparser.php
+++ b/libs/sysplugins/smarty_internal_templateparser.php
@@ -1,101 +1,5 @@
string = $s->string;
- $this->metadata = $s->metadata;
- } else {
- $this->string = (string)$s;
- if ($m instanceof TP_yyToken) {
- $this->metadata = $m->metadata;
- } else if (is_array($m)) {
- $this->metadata = $m;
- }
- }
- }
-
- /**
- * @return string
- */
- public function __toString()
- {
- return $this->string;
- }
-
- /**
- * @param mixed $offset
- *
- * @return bool
- */
- public function offsetExists($offset)
- {
- return isset($this->metadata[ $offset ]);
- }
-
- /**
- * @param mixed $offset
- *
- * @return mixed
- */
- public function offsetGet($offset)
- {
- return $this->metadata[ $offset ];
- }
-
- /**
- * @param mixed $offset
- * @param mixed $value
- */
- public function offsetSet($offset, $value)
- {
- if ($offset === null) {
- if (isset($value[ 0 ])) {
- $x = ($value instanceof TP_yyToken) ?
- $value->metadata : $value;
- $this->metadata = array_merge($this->metadata, $x);
- return;
- }
- $offset = count($this->metadata);
- }
- if ($value === null) {
- return;
- }
- if ($value instanceof TP_yyToken) {
- if ($value->metadata) {
- $this->metadata[ $offset ] = $value->metadata;
- }
- } else if ($value) {
- $this->metadata[ $offset ] = $value;
- }
- }
-
- /**
- * @param mixed $offset
- */
- public function offsetUnset($offset)
- {
- unset($this->metadata[ $offset ]);
- }
-}
-
-/**
- * Class TP_yyStackEntry
- */
class TP_yyStackEntry
{
public $stateno; /* The state-number */
@@ -132,12 +36,12 @@ class Smarty_Internal_Templateparser
const TP_LITERALSTART = 8;
const TP_LITERALEND = 9;
const TP_LITERAL = 10;
- const TP_RDEL = 11;
- const TP_SIMPELOUTPUT = 12;
+ const TP_SIMPELOUTPUT = 11;
+ const TP_SIMPLETAG = 12;
const TP_LDEL = 13;
- const TP_DOLLARID = 14;
- const TP_EQUAL = 15;
- const TP_SIMPLETAG = 16;
+ const TP_RDEL = 14;
+ const TP_DOLLARID = 15;
+ const TP_EQUAL = 16;
const TP_ID = 17;
const TP_PTR = 18;
const TP_LDELMAKENOCACHE = 19;
@@ -181,553 +85,523 @@ class Smarty_Internal_Templateparser
const TP_SINGLECOND = 57;
const TP_QUOTE = 58;
const TP_BACKTICK = 59;
- const YY_NO_ACTION = 521;
- const YY_ACCEPT_ACTION = 520;
- const YY_ERROR_ACTION = 519;
- const YY_SZ_ACTTAB = 2078;
- const YY_SHIFT_USE_DFLT = -34;
- const YY_SHIFT_MAX = 231;
+ const YY_NO_ACTION = 509;
+ const YY_ACCEPT_ACTION = 508;
+ const YY_ERROR_ACTION = 507;
+ const YY_SZ_ACTTAB = 1956;
+ const YY_SHIFT_USE_DFLT = -13;
+ const YY_SHIFT_MAX = 227;
const YY_REDUCE_USE_DFLT = -75;
- const YY_REDUCE_MAX = 185;
- const YYNOCODE = 106;
+ const YY_REDUCE_MAX = 176;
+ const YYNOCODE = 107;
const YYSTACKDEPTH = 500;
- const YYNSTATE = 327;
- const YYNRULE = 192;
+ const YYNSTATE = 322;
+ const YYNRULE = 185;
const YYERRORSYMBOL = 60;
const YYERRSYMDT = 'yy0';
const YYFALLBACK = 0;
static public $yy_action = array(
- 41, 21, 4, 290, 16, 189, 176, 119, 275, 325,
- 35, 128, 99, 273, 190, 134, 214, 5, 84, 306,
- 347, 289, 8, 107, 318, 274, 13, 226, 277, 211,
- 448, 205, 284, 9, 233, 284, 36, 448, 44, 42,
- 261, 223, 34, 208, 324, 202, 36, 82, 1, 241,
- 324, 41, 34, 22, 78, 79, 96, 78, 279, 15,
- 325, 35, 132, 280, 273, 201, 206, 214, 5, 84,
- 119, 295, 25, 224, 107, 99, 168, 436, 226, 277,
- 211, 320, 230, 231, 9, 111, 284, 318, 436, 44,
- 42, 261, 223, 284, 265, 216, 202, 36, 82, 1,
- 41, 324, 215, 34, 227, 199, 79, 104, 78, 325,
- 35, 132, 324, 273, 201, 78, 214, 5, 84, 245,
- 237, 232, 212, 107, 284, 228, 148, 226, 277, 211,
- 91, 187, 29, 9, 133, 96, 281, 288, 44, 42,
- 261, 223, 10, 265, 244, 202, 78, 82, 1, 41,
- 324, 93, 26, 250, 185, 79, 279, 15, 325, 35,
- 132, 280, 273, 188, 111, 214, 5, 84, 287, 197,
- 82, 252, 107, 324, 197, 3, 226, 277, 211, 388,
- 196, 136, 9, 133, 391, 154, 207, 44, 42, 261,
- 223, 197, 265, 213, 202, 388, 82, 1, 41, 324,
- 391, 388, 283, 88, 79, 158, 391, 325, 35, 129,
- 324, 273, 80, 19, 214, 5, 84, 36, 197, 82,
- 324, 107, 324, 34, 435, 226, 277, 211, 349, 230,
- 262, 9, 210, 137, 222, 435, 44, 42, 261, 223,
- 255, 265, 231, 202, 36, 82, 1, 41, 324, 285,
- 34, 172, 298, 79, 464, 464, 325, 35, 133, 464,
- 273, 201, 14, 214, 5, 84, 464, 464, 34, 27,
- 107, 464, 324, 147, 226, 277, 211, 173, 230, 215,
- 12, 225, 90, 281, 104, 44, 42, 261, 223, 156,
- 265, 464, 202, 301, 82, 1, 41, 324, 228, 279,
- 15, 185, 79, 103, 280, 325, 35, 132, 276, 273,
- 186, 2, 214, 5, 84, 177, 293, 322, 10, 107,
- 243, 326, 106, 226, 277, 211, 10, 230, 257, 9,
- 144, 31, 85, 308, 44, 42, 261, 223, 435, 265,
- 281, 202, 142, 82, 1, 41, 324, 305, 164, 435,
- 282, 79, 281, 282, 325, 35, 130, 174, 273, 201,
- 435, 214, 5, 84, 139, 282, 282, 7, 107, 151,
- 448, 435, 226, 277, 211, 301, 230, 448, 6, 281,
- 228, 185, 276, 44, 42, 261, 223, 96, 265, 38,
- 202, 141, 82, 1, 41, 324, 197, 181, 231, 310,
- 79, 281, 309, 325, 35, 132, 239, 273, 191, 272,
- 214, 5, 84, 134, 173, 296, 123, 107, 138, 181,
- 8, 226, 277, 211, 215, 230, 234, 9, 281, 104,
- 179, 298, 44, 42, 261, 223, 152, 265, 185, 202,
- 153, 82, 1, 41, 324, 104, 281, 291, 96, 79,
- 197, 178, 325, 35, 131, 180, 273, 201, 217, 214,
- 5, 84, 197, 169, 100, 175, 107, 219, 197, 157,
- 226, 277, 211, 268, 230, 185, 9, 111, 92, 281,
- 123, 44, 42, 261, 223, 197, 265, 185, 202, 166,
- 82, 1, 41, 324, 96, 353, 32, 319, 79, 281,
- 258, 325, 35, 133, 181, 273, 201, 108, 214, 5,
- 84, 197, 38, 256, 313, 107, 263, 171, 209, 226,
- 277, 211, 165, 230, 161, 12, 40, 17, 271, 242,
- 44, 42, 261, 223, 22, 265, 236, 202, 254, 82,
- 286, 185, 324, 170, 298, 278, 267, 79, 259, 182,
- 83, 228, 203, 251, 110, 68, 112, 3, 11, 118,
- 323, 99, 269, 24, 264, 312, 113, 282, 285, 260,
- 194, 266, 86, 318, 135, 155, 299, 162, 235, 246,
- 238, 304, 177, 198, 303, 87, 325, 35, 167, 299,
- 273, 299, 299, 214, 5, 84, 299, 299, 299, 299,
- 107, 299, 267, 299, 226, 277, 211, 228, 203, 299,
- 117, 57, 102, 299, 225, 299, 299, 99, 140, 299,
- 264, 312, 171, 299, 299, 260, 194, 266, 281, 318,
- 267, 40, 17, 271, 299, 228, 203, 299, 117, 47,
- 102, 299, 114, 299, 299, 99, 185, 299, 264, 312,
- 197, 299, 39, 260, 194, 266, 299, 318, 267, 299,
- 299, 299, 299, 228, 203, 299, 110, 68, 112, 299,
- 299, 299, 299, 99, 299, 299, 264, 312, 299, 299,
- 145, 260, 194, 266, 171, 318, 218, 43, 37, 299,
- 281, 299, 267, 40, 17, 271, 302, 228, 203, 299,
- 117, 66, 112, 317, 315, 314, 311, 99, 185, 299,
- 264, 312, 299, 307, 299, 260, 194, 266, 299, 318,
- 325, 28, 300, 299, 273, 299, 204, 214, 5, 84,
- 299, 299, 279, 15, 107, 307, 299, 280, 226, 277,
- 211, 299, 325, 28, 300, 299, 273, 36, 299, 214,
- 5, 84, 299, 34, 143, 299, 107, 299, 89, 299,
- 226, 277, 211, 299, 281, 299, 297, 30, 520, 52,
- 249, 237, 232, 212, 299, 267, 228, 299, 299, 299,
- 228, 203, 185, 117, 66, 112, 279, 15, 299, 30,
- 99, 280, 299, 264, 312, 299, 299, 299, 260, 194,
- 266, 36, 318, 163, 299, 267, 299, 34, 299, 200,
- 228, 203, 299, 117, 66, 112, 299, 299, 299, 299,
- 99, 299, 299, 264, 312, 197, 299, 299, 260, 194,
- 266, 299, 318, 299, 299, 359, 299, 299, 299, 195,
- 267, 299, 221, 299, 299, 228, 203, 299, 117, 77,
- 112, 36, 299, 299, 299, 99, 299, 34, 264, 312,
- 435, 299, 299, 260, 194, 266, 299, 318, 299, 299,
- 267, 435, 299, 299, 299, 228, 203, 299, 117, 74,
- 112, 299, 299, 299, 299, 99, 299, 299, 264, 312,
- 299, 299, 299, 260, 194, 266, 299, 318, 299, 299,
- 299, 299, 299, 299, 267, 299, 401, 401, 401, 228,
- 203, 299, 97, 72, 112, 299, 299, 299, 299, 99,
- 299, 299, 264, 312, 299, 299, 299, 260, 194, 266,
- 267, 318, 299, 299, 299, 228, 203, 299, 117, 69,
- 112, 435, 299, 401, 401, 99, 299, 299, 264, 312,
- 299, 299, 435, 260, 194, 266, 299, 318, 267, 401,
- 401, 401, 401, 228, 203, 299, 117, 60, 112, 299,
- 299, 299, 299, 99, 299, 299, 264, 312, 299, 299,
- 299, 260, 194, 266, 267, 318, 197, 299, 39, 228,
- 94, 299, 81, 51, 101, 299, 253, 299, 299, 99,
- 299, 299, 264, 312, 299, 299, 299, 260, 194, 266,
- 267, 318, 299, 299, 299, 228, 203, 299, 97, 53,
- 112, 299, 299, 43, 37, 99, 299, 299, 264, 312,
- 299, 299, 299, 260, 194, 266, 299, 318, 267, 317,
- 315, 314, 311, 228, 203, 299, 98, 75, 112, 299,
- 299, 299, 299, 99, 299, 299, 264, 312, 299, 299,
- 299, 260, 194, 266, 267, 318, 197, 299, 39, 228,
- 192, 299, 117, 55, 112, 299, 183, 299, 299, 99,
- 299, 299, 264, 312, 299, 299, 299, 260, 194, 266,
- 267, 318, 299, 299, 299, 228, 203, 299, 117, 67,
- 112, 299, 299, 43, 37, 99, 299, 299, 264, 312,
- 299, 299, 299, 260, 194, 266, 299, 318, 267, 317,
- 315, 314, 311, 228, 193, 299, 115, 54, 112, 299,
- 299, 299, 299, 99, 299, 299, 264, 312, 299, 299,
- 299, 260, 194, 266, 267, 318, 197, 20, 39, 228,
- 203, 299, 117, 71, 112, 299, 299, 299, 299, 99,
- 299, 299, 264, 312, 299, 299, 299, 260, 194, 266,
- 267, 318, 299, 299, 299, 228, 203, 299, 117, 70,
- 112, 299, 299, 43, 37, 99, 299, 299, 264, 312,
- 299, 299, 299, 260, 194, 266, 299, 318, 267, 317,
- 315, 314, 311, 228, 203, 299, 117, 76, 112, 299,
- 299, 299, 299, 99, 299, 299, 264, 312, 299, 299,
- 299, 260, 194, 266, 267, 318, 197, 299, 39, 228,
- 203, 299, 117, 57, 112, 299, 184, 299, 299, 99,
- 299, 299, 264, 312, 299, 299, 299, 260, 194, 266,
- 267, 318, 299, 299, 299, 228, 203, 299, 109, 49,
- 112, 299, 299, 43, 37, 99, 299, 299, 264, 312,
- 299, 299, 299, 260, 194, 266, 299, 318, 267, 317,
- 315, 314, 311, 228, 203, 299, 117, 65, 112, 299,
- 299, 299, 299, 99, 299, 299, 264, 312, 299, 299,
- 299, 260, 194, 266, 267, 318, 197, 299, 39, 228,
- 203, 299, 117, 64, 112, 299, 247, 299, 299, 99,
- 299, 299, 264, 312, 299, 299, 299, 260, 194, 266,
- 267, 318, 299, 299, 299, 228, 203, 299, 117, 56,
- 112, 299, 299, 43, 37, 99, 299, 299, 264, 312,
- 299, 299, 299, 260, 194, 266, 299, 318, 267, 317,
- 315, 314, 311, 228, 203, 299, 117, 50, 112, 299,
- 299, 299, 299, 99, 299, 299, 264, 312, 299, 299,
- 299, 260, 194, 266, 267, 318, 197, 299, 39, 228,
- 95, 299, 81, 46, 101, 299, 299, 299, 299, 99,
- 299, 299, 264, 312, 299, 299, 299, 260, 194, 266,
- 267, 318, 299, 299, 299, 228, 203, 299, 117, 48,
- 112, 299, 240, 43, 37, 99, 299, 299, 264, 312,
- 299, 299, 299, 260, 194, 266, 299, 318, 267, 317,
- 315, 314, 311, 228, 203, 299, 117, 58, 112, 299,
- 299, 299, 299, 99, 299, 299, 264, 312, 299, 299,
- 299, 260, 194, 266, 267, 318, 197, 299, 39, 228,
- 203, 299, 117, 73, 112, 299, 299, 299, 299, 99,
- 299, 299, 264, 312, 299, 299, 299, 260, 194, 266,
- 267, 318, 299, 150, 299, 228, 203, 299, 117, 45,
- 112, 299, 299, 43, 37, 99, 299, 299, 264, 312,
- 299, 299, 299, 260, 194, 266, 299, 318, 267, 317,
- 315, 314, 311, 228, 203, 299, 117, 62, 112, 299,
- 39, 299, 299, 99, 299, 299, 264, 312, 299, 299,
- 299, 260, 194, 266, 267, 318, 299, 299, 299, 228,
- 203, 299, 117, 61, 112, 299, 299, 299, 299, 99,
- 299, 299, 264, 312, 299, 43, 37, 260, 194, 266,
- 267, 318, 299, 299, 299, 228, 203, 299, 117, 59,
- 112, 317, 315, 314, 311, 99, 299, 299, 264, 312,
- 299, 299, 299, 260, 194, 266, 299, 318, 267, 299,
- 197, 299, 39, 228, 203, 299, 117, 63, 112, 197,
- 299, 39, 299, 99, 299, 299, 264, 312, 299, 321,
- 299, 260, 194, 266, 23, 318, 36, 299, 299, 299,
- 299, 299, 34, 299, 267, 36, 299, 43, 37, 228,
- 203, 34, 127, 299, 112, 299, 43, 37, 299, 99,
- 299, 299, 299, 317, 315, 314, 311, 260, 194, 266,
- 299, 318, 317, 315, 314, 311, 299, 267, 229, 299,
- 299, 299, 228, 203, 299, 125, 299, 112, 464, 464,
- 299, 21, 99, 464, 448, 299, 248, 299, 299, 299,
- 260, 194, 266, 197, 318, 39, 299, 267, 299, 299,
- 299, 299, 228, 203, 299, 124, 299, 112, 299, 299,
- 448, 299, 99, 448, 299, 464, 270, 448, 299, 36,
- 260, 194, 266, 299, 318, 34, 299, 267, 299, 299,
- 43, 37, 228, 203, 299, 116, 299, 112, 299, 299,
- 299, 299, 99, 299, 299, 299, 317, 315, 314, 311,
- 260, 194, 266, 299, 318, 267, 299, 299, 299, 299,
- 228, 203, 299, 121, 299, 112, 299, 299, 299, 299,
- 99, 299, 299, 299, 299, 299, 299, 299, 260, 194,
- 266, 267, 318, 229, 299, 299, 228, 203, 299, 120,
- 299, 112, 299, 464, 464, 299, 99, 299, 464, 448,
- 299, 299, 299, 299, 260, 194, 266, 299, 318, 299,
- 299, 267, 299, 299, 299, 299, 228, 203, 299, 122,
- 299, 112, 299, 299, 299, 448, 99, 299, 448, 229,
- 464, 299, 448, 292, 260, 194, 266, 299, 318, 464,
- 464, 299, 18, 267, 464, 448, 299, 299, 228, 203,
- 197, 126, 39, 112, 299, 299, 299, 299, 99, 299,
- 197, 299, 39, 299, 299, 299, 260, 194, 266, 299,
- 318, 448, 299, 299, 448, 299, 464, 299, 448, 33,
- 299, 105, 299, 299, 299, 299, 299, 43, 37, 464,
- 464, 299, 299, 299, 464, 448, 299, 43, 37, 299,
- 299, 316, 299, 317, 315, 314, 311, 229, 197, 299,
- 39, 299, 299, 317, 315, 314, 311, 464, 464, 299,
- 299, 448, 464, 448, 448, 299, 464, 299, 448, 299,
- 299, 299, 299, 299, 299, 464, 464, 299, 299, 299,
- 464, 448, 197, 299, 39, 43, 37, 299, 299, 448,
- 299, 299, 448, 299, 464, 299, 448, 299, 299, 299,
- 299, 317, 315, 314, 311, 299, 294, 448, 299, 299,
- 448, 299, 464, 146, 448, 299, 299, 171, 395, 43,
- 37, 299, 299, 281, 299, 299, 40, 17, 271, 395,
- 299, 395, 299, 299, 395, 317, 315, 314, 311, 299,
- 395, 185, 395, 299, 395, 299, 299, 299, 159, 299,
- 299, 231, 171, 299, 299, 299, 160, 299, 281, 299,
- 171, 40, 17, 271, 149, 299, 281, 299, 171, 40,
- 17, 271, 299, 299, 281, 299, 185, 40, 17, 271,
- 299, 389, 299, 299, 185, 220, 299, 299, 299, 299,
- 299, 299, 185, 299, 299, 299, 299, 389, 299, 299,
- 299, 299, 299, 389, 299, 299, 435, 299, 299, 299,
- 299, 299, 299, 299, 299, 299, 299, 435,
+ 41, 15, 301, 113, 209, 252, 254, 12, 274, 275,
+ 1, 251, 124, 95, 183, 165, 211, 10, 79, 141,
+ 14, 204, 248, 107, 6, 316, 17, 212, 250, 215,
+ 452, 188, 452, 13, 9, 23, 452, 436, 42, 38,
+ 258, 213, 287, 225, 41, 193, 32, 77, 3, 230,
+ 302, 295, 274, 275, 1, 75, 128, 132, 189, 83,
+ 211, 10, 79, 436, 200, 204, 436, 107, 452, 153,
+ 436, 212, 250, 215, 452, 206, 452, 26, 85, 4,
+ 452, 436, 42, 38, 258, 213, 306, 310, 41, 193,
+ 246, 77, 3, 116, 302, 302, 274, 275, 1, 75,
+ 127, 247, 189, 171, 211, 10, 79, 436, 7, 18,
+ 436, 107, 452, 166, 436, 212, 250, 215, 452, 206,
+ 452, 13, 202, 74, 452, 436, 42, 38, 258, 213,
+ 238, 310, 41, 193, 97, 77, 3, 175, 302, 205,
+ 274, 275, 1, 75, 127, 247, 179, 240, 211, 10,
+ 79, 436, 321, 204, 436, 107, 452, 190, 436, 212,
+ 250, 215, 452, 194, 452, 13, 253, 74, 452, 436,
+ 42, 38, 258, 213, 37, 310, 41, 193, 168, 77,
+ 3, 294, 302, 14, 274, 275, 1, 75, 127, 17,
+ 177, 149, 211, 10, 79, 436, 266, 267, 436, 107,
+ 452, 265, 436, 212, 250, 215, 452, 206, 452, 13,
+ 190, 190, 452, 436, 42, 38, 258, 213, 129, 310,
+ 41, 193, 190, 77, 3, 11, 302, 201, 274, 275,
+ 1, 75, 126, 436, 189, 22, 211, 10, 79, 436,
+ 436, 17, 436, 107, 452, 167, 436, 212, 250, 215,
+ 128, 206, 255, 13, 39, 28, 307, 87, 42, 38,
+ 258, 213, 312, 310, 41, 193, 89, 77, 3, 175,
+ 302, 232, 274, 275, 1, 75, 127, 173, 189, 267,
+ 211, 10, 79, 261, 252, 77, 12, 107, 302, 279,
+ 251, 212, 250, 215, 35, 178, 182, 13, 260, 21,
+ 14, 92, 42, 38, 258, 213, 17, 310, 41, 193,
+ 158, 77, 3, 138, 302, 259, 274, 275, 1, 75,
+ 127, 252, 184, 12, 211, 10, 79, 251, 219, 30,
+ 104, 107, 423, 5, 302, 212, 250, 215, 31, 206,
+ 226, 13, 144, 423, 105, 291, 42, 38, 258, 213,
+ 151, 310, 41, 193, 20, 77, 3, 205, 302, 207,
+ 274, 275, 1, 75, 125, 452, 189, 452, 211, 10,
+ 79, 452, 161, 292, 24, 107, 233, 6, 302, 212,
+ 250, 215, 128, 206, 218, 8, 21, 4, 136, 92,
+ 42, 38, 258, 213, 308, 310, 41, 193, 265, 77,
+ 3, 116, 302, 452, 274, 275, 1, 75, 91, 252,
+ 76, 12, 211, 10, 79, 251, 171, 77, 104, 107,
+ 302, 164, 423, 212, 250, 215, 301, 206, 209, 13,
+ 220, 315, 135, 423, 42, 38, 258, 213, 229, 310,
+ 41, 193, 265, 77, 3, 175, 302, 222, 274, 275,
+ 1, 75, 128, 452, 189, 452, 211, 10, 79, 452,
+ 171, 190, 241, 107, 237, 80, 298, 212, 250, 215,
+ 34, 206, 92, 26, 24, 231, 244, 423, 42, 38,
+ 258, 213, 247, 310, 23, 193, 78, 77, 423, 33,
+ 302, 305, 214, 209, 280, 75, 84, 103, 129, 181,
+ 94, 56, 302, 131, 74, 11, 95, 170, 101, 256,
+ 245, 16, 436, 424, 309, 192, 311, 281, 316, 436,
+ 305, 214, 209, 280, 424, 84, 103, 190, 180, 94,
+ 64, 175, 253, 163, 262, 95, 160, 292, 256, 245,
+ 376, 302, 216, 309, 192, 311, 305, 316, 209, 217,
+ 196, 100, 99, 376, 195, 106, 68, 175, 133, 376,
+ 19, 95, 86, 283, 256, 245, 154, 236, 265, 309,
+ 192, 311, 305, 316, 209, 276, 265, 100, 103, 205,
+ 180, 94, 64, 187, 297, 282, 175, 95, 155, 264,
+ 256, 245, 377, 257, 227, 309, 192, 311, 265, 316,
+ 271, 272, 273, 270, 122, 377, 269, 274, 275, 1,
+ 24, 377, 290, 284, 423, 211, 10, 79, 169, 134,
+ 221, 249, 107, 88, 216, 423, 212, 250, 215, 265,
+ 305, 210, 209, 152, 99, 98, 263, 343, 195, 114,
+ 50, 172, 210, 265, 228, 95, 247, 175, 256, 245,
+ 343, 190, 278, 309, 192, 311, 343, 316, 117, 299,
+ 142, 137, 264, 264, 344, 274, 275, 2, 74, 300,
+ 161, 292, 216, 211, 10, 79, 268, 344, 209, 239,
+ 107, 299, 99, 344, 212, 250, 215, 274, 275, 2,
+ 157, 300, 190, 37, 167, 211, 10, 79, 92, 139,
+ 265, 110, 107, 39, 28, 307, 212, 250, 215, 99,
+ 303, 143, 286, 27, 305, 190, 209, 43, 175, 98,
+ 147, 265, 195, 114, 45, 277, 108, 104, 262, 95,
+ 265, 81, 256, 245, 285, 27, 109, 309, 192, 311,
+ 305, 316, 209, 264, 113, 100, 148, 208, 195, 106,
+ 68, 82, 40, 36, 95, 95, 162, 292, 256, 245,
+ 190, 508, 90, 309, 192, 311, 316, 316, 320, 318,
+ 317, 314, 305, 379, 209, 203, 199, 100, 296, 138,
+ 195, 114, 63, 130, 92, 289, 379, 95, 264, 150,
+ 256, 245, 379, 293, 247, 309, 192, 311, 343, 316,
+ 305, 159, 209, 293, 343, 100, 197, 293, 195, 114,
+ 63, 293, 293, 293, 293, 95, 74, 293, 256, 245,
+ 293, 293, 293, 309, 192, 311, 293, 316, 293, 293,
+ 305, 293, 209, 293, 198, 100, 293, 293, 195, 114,
+ 63, 293, 293, 293, 293, 95, 293, 293, 256, 245,
+ 293, 293, 293, 309, 192, 311, 293, 316, 293, 293,
+ 293, 305, 293, 209, 191, 293, 100, 293, 293, 195,
+ 114, 49, 293, 190, 293, 43, 95, 293, 293, 256,
+ 245, 293, 293, 293, 309, 192, 311, 293, 316, 305,
+ 293, 209, 293, 293, 100, 293, 293, 195, 114, 61,
+ 293, 293, 293, 293, 95, 293, 293, 256, 245, 293,
+ 40, 36, 309, 192, 311, 305, 316, 209, 293, 293,
+ 100, 293, 293, 195, 114, 69, 320, 318, 317, 314,
+ 95, 293, 293, 256, 245, 293, 293, 293, 309, 192,
+ 311, 293, 316, 293, 293, 305, 293, 209, 293, 293,
+ 100, 293, 293, 195, 114, 66, 293, 190, 293, 43,
+ 95, 293, 293, 256, 245, 293, 293, 293, 309, 192,
+ 311, 293, 316, 305, 293, 209, 293, 293, 100, 293,
+ 293, 195, 114, 54, 146, 293, 293, 293, 95, 293,
+ 293, 256, 245, 293, 40, 36, 309, 192, 311, 305,
+ 316, 209, 293, 293, 100, 293, 293, 195, 114, 53,
+ 320, 318, 317, 314, 95, 293, 293, 256, 245, 293,
+ 293, 293, 309, 192, 311, 293, 316, 293, 293, 305,
+ 293, 209, 293, 293, 100, 293, 293, 195, 114, 47,
+ 293, 190, 25, 43, 95, 293, 293, 256, 245, 293,
+ 293, 293, 309, 192, 311, 293, 316, 305, 293, 209,
+ 293, 293, 100, 293, 293, 195, 96, 59, 293, 293,
+ 293, 293, 95, 293, 293, 256, 245, 293, 40, 36,
+ 309, 192, 311, 305, 316, 209, 293, 293, 100, 293,
+ 293, 195, 114, 73, 320, 318, 317, 314, 95, 293,
+ 293, 256, 245, 293, 293, 293, 309, 192, 311, 293,
+ 316, 293, 293, 305, 293, 209, 293, 293, 100, 293,
+ 293, 195, 114, 71, 293, 190, 293, 43, 95, 293,
+ 293, 256, 245, 293, 293, 293, 309, 192, 311, 293,
+ 316, 305, 293, 209, 293, 293, 100, 293, 293, 185,
+ 102, 52, 293, 293, 293, 293, 95, 293, 293, 256,
+ 245, 234, 40, 36, 309, 192, 311, 305, 316, 209,
+ 293, 293, 100, 293, 293, 195, 93, 65, 320, 318,
+ 317, 314, 95, 293, 293, 256, 245, 293, 293, 293,
+ 309, 192, 311, 293, 316, 293, 293, 305, 293, 209,
+ 293, 293, 100, 293, 293, 195, 114, 46, 293, 190,
+ 293, 43, 95, 293, 293, 256, 245, 293, 293, 293,
+ 309, 192, 311, 293, 316, 305, 293, 209, 293, 293,
+ 100, 293, 293, 195, 114, 58, 293, 293, 293, 293,
+ 95, 293, 293, 256, 245, 223, 40, 36, 309, 192,
+ 311, 305, 316, 209, 293, 293, 100, 293, 293, 195,
+ 114, 50, 320, 318, 317, 314, 95, 293, 293, 256,
+ 245, 293, 293, 293, 309, 192, 311, 293, 316, 293,
+ 293, 305, 293, 209, 293, 293, 100, 293, 293, 195,
+ 114, 44, 293, 190, 293, 43, 95, 293, 293, 256,
+ 245, 293, 293, 293, 309, 192, 311, 293, 316, 305,
+ 293, 209, 293, 293, 100, 293, 293, 195, 114, 48,
+ 293, 293, 293, 293, 95, 293, 293, 256, 245, 293,
+ 40, 36, 309, 192, 311, 305, 316, 209, 293, 293,
+ 100, 293, 293, 195, 114, 72, 320, 318, 317, 314,
+ 95, 293, 293, 256, 245, 293, 293, 293, 309, 192,
+ 311, 293, 316, 293, 293, 305, 293, 209, 293, 293,
+ 100, 293, 293, 195, 114, 51, 293, 293, 293, 43,
+ 95, 293, 293, 256, 245, 293, 293, 293, 309, 192,
+ 311, 293, 316, 305, 293, 209, 293, 293, 100, 293,
+ 293, 195, 114, 67, 293, 293, 293, 293, 95, 293,
+ 293, 256, 245, 293, 40, 36, 309, 192, 311, 305,
+ 316, 209, 293, 293, 100, 293, 293, 186, 114, 57,
+ 320, 318, 317, 314, 95, 293, 293, 256, 245, 293,
+ 293, 293, 309, 192, 311, 293, 316, 293, 293, 305,
+ 293, 209, 293, 293, 100, 293, 293, 195, 114, 60,
+ 293, 293, 293, 293, 95, 293, 293, 256, 245, 293,
+ 293, 293, 309, 192, 311, 293, 316, 305, 293, 209,
+ 293, 293, 100, 293, 293, 195, 114, 62, 293, 293,
+ 293, 293, 95, 293, 293, 256, 245, 293, 293, 293,
+ 309, 192, 311, 305, 316, 209, 293, 293, 100, 293,
+ 293, 195, 114, 70, 293, 293, 293, 293, 95, 293,
+ 293, 256, 245, 293, 293, 293, 309, 192, 311, 293,
+ 316, 293, 293, 305, 293, 209, 293, 293, 100, 293,
+ 293, 195, 93, 55, 389, 389, 389, 293, 95, 293,
+ 293, 256, 245, 293, 293, 293, 309, 192, 311, 293,
+ 316, 305, 293, 209, 293, 293, 100, 293, 293, 195,
+ 118, 293, 293, 293, 293, 293, 95, 293, 293, 423,
+ 304, 389, 389, 293, 309, 192, 311, 190, 316, 43,
+ 423, 190, 293, 43, 293, 293, 293, 389, 389, 389,
+ 389, 293, 293, 293, 293, 293, 293, 305, 293, 209,
+ 293, 29, 100, 14, 293, 195, 123, 14, 293, 17,
+ 293, 293, 95, 17, 40, 36, 243, 293, 40, 36,
+ 309, 192, 311, 293, 316, 293, 293, 293, 293, 293,
+ 320, 318, 317, 314, 320, 318, 317, 314, 204, 293,
+ 293, 293, 293, 305, 293, 209, 293, 452, 100, 452,
+ 293, 195, 121, 452, 436, 293, 293, 293, 95, 293,
+ 293, 293, 293, 293, 293, 293, 309, 192, 311, 305,
+ 316, 209, 293, 190, 100, 43, 293, 195, 112, 293,
+ 436, 293, 293, 436, 95, 452, 174, 436, 313, 293,
+ 293, 293, 309, 192, 311, 293, 316, 305, 293, 209,
+ 293, 293, 100, 140, 293, 195, 111, 167, 293, 293,
+ 40, 36, 95, 265, 293, 293, 39, 28, 307, 293,
+ 309, 192, 311, 293, 316, 293, 320, 318, 317, 314,
+ 293, 175, 305, 293, 209, 293, 293, 100, 293, 293,
+ 195, 119, 293, 305, 293, 209, 293, 95, 100, 293,
+ 293, 195, 115, 293, 293, 309, 192, 311, 95, 316,
+ 293, 293, 293, 293, 293, 293, 309, 192, 311, 293,
+ 316, 305, 190, 209, 43, 293, 100, 293, 293, 195,
+ 120, 293, 293, 293, 293, 293, 95, 293, 293, 293,
+ 293, 293, 293, 293, 309, 192, 311, 293, 316, 293,
+ 190, 156, 43, 293, 190, 167, 43, 293, 293, 40,
+ 36, 265, 293, 235, 39, 28, 307, 288, 293, 293,
+ 293, 293, 293, 319, 293, 320, 318, 317, 314, 175,
+ 190, 293, 43, 293, 190, 293, 43, 40, 36, 293,
+ 293, 40, 36, 242, 293, 293, 293, 176, 293, 293,
+ 293, 293, 293, 320, 318, 317, 314, 320, 318, 317,
+ 314, 293, 293, 293, 293, 293, 293, 40, 36, 293,
+ 293, 40, 36, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 320, 318, 317, 314, 320, 318, 317,
+ 314, 293, 190, 293, 293, 293, 293, 293, 383, 293,
+ 293, 293, 293, 293, 293, 347, 383, 293, 383, 224,
+ 293, 383, 293, 293, 293, 293, 293, 383, 14, 383,
+ 293, 383, 293, 252, 17, 12, 293, 423, 205, 251,
+ 293, 293, 293, 293, 293, 293, 293, 293, 423, 14,
+ 293, 145, 293, 293, 293, 17,
);
static public $yy_lookahead = array(
- 3, 15, 35, 70, 13, 14, 80, 74, 17, 12,
- 13, 14, 79, 16, 17, 44, 19, 20, 21, 52,
- 11, 88, 51, 26, 91, 34, 15, 30, 31, 32,
- 44, 34, 23, 36, 23, 23, 27, 51, 41, 42,
- 43, 44, 33, 46, 53, 48, 27, 50, 51, 52,
- 53, 3, 33, 15, 45, 58, 18, 45, 12, 13,
- 12, 13, 14, 17, 16, 17, 70, 19, 20, 21,
- 74, 59, 13, 14, 26, 79, 17, 36, 30, 31,
- 32, 11, 34, 44, 36, 47, 23, 91, 47, 41,
- 42, 43, 44, 23, 46, 49, 48, 27, 50, 51,
- 3, 53, 74, 33, 76, 77, 58, 79, 45, 12,
- 13, 14, 53, 16, 17, 45, 19, 20, 21, 63,
- 64, 65, 66, 26, 23, 69, 71, 30, 31, 32,
- 75, 34, 15, 36, 14, 18, 81, 17, 41, 42,
- 43, 44, 35, 46, 37, 48, 45, 50, 51, 3,
- 53, 80, 13, 52, 99, 58, 12, 13, 12, 13,
- 14, 17, 16, 17, 47, 19, 20, 21, 48, 1,
- 50, 14, 26, 53, 1, 36, 30, 31, 32, 11,
- 34, 14, 36, 14, 11, 92, 17, 41, 42, 43,
- 44, 1, 46, 49, 48, 27, 50, 51, 3, 53,
- 27, 33, 17, 36, 58, 92, 33, 12, 13, 14,
- 53, 16, 17, 15, 19, 20, 21, 27, 1, 50,
- 53, 26, 53, 33, 36, 30, 31, 32, 11, 34,
- 17, 36, 44, 14, 49, 47, 41, 42, 43, 44,
- 52, 46, 44, 48, 27, 50, 51, 3, 53, 93,
- 33, 95, 96, 58, 12, 13, 12, 13, 14, 17,
- 16, 17, 27, 19, 20, 21, 12, 13, 33, 22,
- 26, 17, 53, 71, 30, 31, 32, 75, 34, 74,
- 36, 76, 35, 81, 79, 41, 42, 43, 44, 92,
- 46, 49, 48, 64, 50, 51, 3, 53, 69, 12,
- 13, 99, 58, 79, 17, 12, 13, 14, 100, 16,
- 17, 36, 19, 20, 21, 8, 9, 10, 35, 26,
- 37, 97, 47, 30, 31, 32, 35, 34, 37, 36,
- 71, 29, 103, 104, 41, 42, 43, 44, 36, 46,
- 81, 48, 71, 50, 51, 3, 53, 9, 92, 47,
- 94, 58, 81, 94, 12, 13, 14, 75, 16, 17,
- 36, 19, 20, 21, 92, 94, 94, 36, 26, 71,
- 44, 47, 30, 31, 32, 64, 34, 51, 36, 81,
- 69, 99, 100, 41, 42, 43, 44, 18, 46, 2,
- 48, 71, 50, 51, 3, 53, 1, 99, 44, 65,
- 58, 81, 68, 12, 13, 14, 52, 16, 17, 90,
- 19, 20, 21, 44, 75, 104, 97, 26, 71, 99,
- 51, 30, 31, 32, 74, 34, 76, 36, 81, 79,
- 95, 96, 41, 42, 43, 44, 71, 46, 99, 48,
- 74, 50, 51, 3, 53, 79, 81, 52, 18, 58,
- 1, 75, 12, 13, 14, 14, 16, 17, 17, 19,
- 20, 21, 1, 75, 67, 80, 26, 18, 1, 71,
- 30, 31, 32, 90, 34, 99, 36, 47, 92, 81,
- 97, 41, 42, 43, 44, 1, 46, 99, 48, 71,
- 50, 51, 3, 53, 18, 11, 29, 96, 58, 81,
- 34, 12, 13, 14, 99, 16, 17, 17, 19, 20,
- 21, 1, 2, 5, 17, 26, 14, 75, 17, 30,
- 31, 32, 50, 34, 50, 36, 84, 85, 86, 52,
- 41, 42, 43, 44, 15, 46, 37, 48, 52, 50,
- 17, 99, 53, 95, 96, 17, 64, 58, 34, 17,
- 17, 69, 70, 17, 72, 73, 74, 36, 40, 17,
- 11, 79, 81, 24, 82, 83, 78, 94, 93, 87,
- 88, 89, 79, 91, 79, 92, 105, 92, 4, 5,
- 6, 7, 8, 101, 102, 79, 12, 13, 92, 105,
- 16, 105, 105, 19, 20, 21, 105, 105, 105, 105,
- 26, 105, 64, 105, 30, 31, 32, 69, 70, 105,
- 72, 73, 74, 105, 76, 105, 105, 79, 71, 105,
- 82, 83, 75, 105, 105, 87, 88, 89, 81, 91,
- 64, 84, 85, 86, 105, 69, 70, 105, 72, 73,
- 74, 105, 76, 105, 105, 79, 99, 105, 82, 83,
- 1, 105, 3, 87, 88, 89, 105, 91, 64, 105,
- 105, 105, 105, 69, 70, 105, 72, 73, 74, 105,
- 105, 105, 105, 79, 105, 105, 82, 83, 105, 105,
- 71, 87, 88, 89, 75, 91, 37, 38, 39, 105,
- 81, 105, 64, 84, 85, 86, 102, 69, 70, 105,
- 72, 73, 74, 54, 55, 56, 57, 79, 99, 105,
- 82, 83, 105, 5, 105, 87, 88, 89, 105, 91,
- 12, 13, 14, 105, 16, 105, 98, 19, 20, 21,
- 105, 105, 12, 13, 26, 5, 105, 17, 30, 31,
- 32, 105, 12, 13, 14, 105, 16, 27, 105, 19,
- 20, 21, 105, 33, 71, 105, 26, 105, 75, 105,
- 30, 31, 32, 105, 81, 105, 58, 59, 61, 62,
- 63, 64, 65, 66, 105, 64, 69, 105, 105, 105,
- 69, 70, 99, 72, 73, 74, 12, 13, 58, 59,
- 79, 17, 105, 82, 83, 105, 105, 105, 87, 88,
- 89, 27, 91, 29, 105, 64, 105, 33, 105, 98,
- 69, 70, 105, 72, 73, 74, 105, 105, 105, 105,
- 79, 105, 105, 82, 83, 1, 105, 105, 87, 88,
- 89, 105, 91, 105, 105, 11, 105, 105, 105, 98,
- 64, 105, 18, 105, 105, 69, 70, 105, 72, 73,
- 74, 27, 105, 105, 105, 79, 105, 33, 82, 83,
- 36, 105, 105, 87, 88, 89, 105, 91, 105, 105,
- 64, 47, 105, 105, 105, 69, 70, 105, 72, 73,
- 74, 105, 105, 105, 105, 79, 105, 105, 82, 83,
- 105, 105, 105, 87, 88, 89, 105, 91, 105, 105,
- 105, 105, 105, 105, 64, 105, 1, 2, 3, 69,
- 70, 105, 72, 73, 74, 105, 105, 105, 105, 79,
- 105, 105, 82, 83, 105, 105, 105, 87, 88, 89,
- 64, 91, 105, 105, 105, 69, 70, 105, 72, 73,
- 74, 36, 105, 38, 39, 79, 105, 105, 82, 83,
- 105, 105, 47, 87, 88, 89, 105, 91, 64, 54,
- 55, 56, 57, 69, 70, 105, 72, 73, 74, 105,
- 105, 105, 105, 79, 105, 105, 82, 83, 105, 105,
- 105, 87, 88, 89, 64, 91, 1, 105, 3, 69,
- 70, 105, 72, 73, 74, 105, 11, 105, 105, 79,
- 105, 105, 82, 83, 105, 105, 105, 87, 88, 89,
- 64, 91, 105, 105, 105, 69, 70, 105, 72, 73,
- 74, 105, 105, 38, 39, 79, 105, 105, 82, 83,
- 105, 105, 105, 87, 88, 89, 105, 91, 64, 54,
- 55, 56, 57, 69, 70, 105, 72, 73, 74, 105,
- 105, 105, 105, 79, 105, 105, 82, 83, 105, 105,
- 105, 87, 88, 89, 64, 91, 1, 105, 3, 69,
- 70, 105, 72, 73, 74, 105, 11, 105, 105, 79,
- 105, 105, 82, 83, 105, 105, 105, 87, 88, 89,
- 64, 91, 105, 105, 105, 69, 70, 105, 72, 73,
- 74, 105, 105, 38, 39, 79, 105, 105, 82, 83,
- 105, 105, 105, 87, 88, 89, 105, 91, 64, 54,
- 55, 56, 57, 69, 70, 105, 72, 73, 74, 105,
- 105, 105, 105, 79, 105, 105, 82, 83, 105, 105,
- 105, 87, 88, 89, 64, 91, 1, 2, 3, 69,
- 70, 105, 72, 73, 74, 105, 105, 105, 105, 79,
- 105, 105, 82, 83, 105, 105, 105, 87, 88, 89,
- 64, 91, 105, 105, 105, 69, 70, 105, 72, 73,
- 74, 105, 105, 38, 39, 79, 105, 105, 82, 83,
- 105, 105, 105, 87, 88, 89, 105, 91, 64, 54,
- 55, 56, 57, 69, 70, 105, 72, 73, 74, 105,
- 105, 105, 105, 79, 105, 105, 82, 83, 105, 105,
- 105, 87, 88, 89, 64, 91, 1, 105, 3, 69,
- 70, 105, 72, 73, 74, 105, 11, 105, 105, 79,
- 105, 105, 82, 83, 105, 105, 105, 87, 88, 89,
- 64, 91, 105, 105, 105, 69, 70, 105, 72, 73,
- 74, 105, 105, 38, 39, 79, 105, 105, 82, 83,
- 105, 105, 105, 87, 88, 89, 105, 91, 64, 54,
- 55, 56, 57, 69, 70, 105, 72, 73, 74, 105,
- 105, 105, 105, 79, 105, 105, 82, 83, 105, 105,
- 105, 87, 88, 89, 64, 91, 1, 105, 3, 69,
- 70, 105, 72, 73, 74, 105, 11, 105, 105, 79,
- 105, 105, 82, 83, 105, 105, 105, 87, 88, 89,
- 64, 91, 105, 105, 105, 69, 70, 105, 72, 73,
- 74, 105, 105, 38, 39, 79, 105, 105, 82, 83,
- 105, 105, 105, 87, 88, 89, 105, 91, 64, 54,
- 55, 56, 57, 69, 70, 105, 72, 73, 74, 105,
- 105, 105, 105, 79, 105, 105, 82, 83, 105, 105,
- 105, 87, 88, 89, 64, 91, 1, 105, 3, 69,
- 70, 105, 72, 73, 74, 105, 105, 105, 105, 79,
- 105, 105, 82, 83, 105, 105, 105, 87, 88, 89,
- 64, 91, 105, 105, 105, 69, 70, 105, 72, 73,
- 74, 105, 37, 38, 39, 79, 105, 105, 82, 83,
- 105, 105, 105, 87, 88, 89, 105, 91, 64, 54,
- 55, 56, 57, 69, 70, 105, 72, 73, 74, 105,
- 105, 105, 105, 79, 105, 105, 82, 83, 105, 105,
- 105, 87, 88, 89, 64, 91, 1, 105, 3, 69,
- 70, 105, 72, 73, 74, 105, 105, 105, 105, 79,
- 105, 105, 82, 83, 105, 105, 105, 87, 88, 89,
- 64, 91, 105, 28, 105, 69, 70, 105, 72, 73,
- 74, 105, 105, 38, 39, 79, 105, 105, 82, 83,
- 105, 105, 105, 87, 88, 89, 105, 91, 64, 54,
- 55, 56, 57, 69, 70, 105, 72, 73, 74, 105,
- 3, 105, 105, 79, 105, 105, 82, 83, 105, 105,
- 105, 87, 88, 89, 64, 91, 105, 105, 105, 69,
- 70, 105, 72, 73, 74, 105, 105, 105, 105, 79,
- 105, 105, 82, 83, 105, 38, 39, 87, 88, 89,
- 64, 91, 105, 105, 105, 69, 70, 105, 72, 73,
- 74, 54, 55, 56, 57, 79, 105, 105, 82, 83,
- 105, 105, 105, 87, 88, 89, 105, 91, 64, 105,
- 1, 105, 3, 69, 70, 105, 72, 73, 74, 1,
- 105, 3, 105, 79, 105, 105, 82, 83, 105, 11,
- 105, 87, 88, 89, 25, 91, 27, 105, 105, 105,
- 105, 105, 33, 105, 64, 27, 105, 38, 39, 69,
- 70, 33, 72, 105, 74, 105, 38, 39, 105, 79,
- 105, 105, 105, 54, 55, 56, 57, 87, 88, 89,
- 105, 91, 54, 55, 56, 57, 105, 64, 2, 105,
- 105, 105, 69, 70, 105, 72, 105, 74, 12, 13,
- 105, 15, 79, 17, 18, 105, 83, 105, 105, 105,
- 87, 88, 89, 1, 91, 3, 105, 64, 105, 105,
- 105, 105, 69, 70, 105, 72, 105, 74, 105, 105,
- 44, 105, 79, 47, 105, 49, 83, 51, 105, 27,
- 87, 88, 89, 105, 91, 33, 105, 64, 105, 105,
- 38, 39, 69, 70, 105, 72, 105, 74, 105, 105,
- 105, 105, 79, 105, 105, 105, 54, 55, 56, 57,
- 87, 88, 89, 105, 91, 64, 105, 105, 105, 105,
- 69, 70, 105, 72, 105, 74, 105, 105, 105, 105,
- 79, 105, 105, 105, 105, 105, 105, 105, 87, 88,
- 89, 64, 91, 2, 105, 105, 69, 70, 105, 72,
- 105, 74, 105, 12, 13, 105, 79, 105, 17, 18,
- 105, 105, 105, 105, 87, 88, 89, 105, 91, 105,
- 105, 64, 105, 105, 105, 105, 69, 70, 105, 72,
- 105, 74, 105, 105, 105, 44, 79, 105, 47, 2,
- 49, 105, 51, 52, 87, 88, 89, 105, 91, 12,
- 13, 105, 15, 64, 17, 18, 105, 105, 69, 70,
- 1, 72, 3, 74, 105, 105, 105, 105, 79, 105,
- 1, 105, 3, 105, 105, 105, 87, 88, 89, 105,
- 91, 44, 105, 105, 47, 105, 49, 105, 51, 2,
- 105, 22, 105, 105, 105, 105, 105, 38, 39, 12,
- 13, 105, 105, 105, 17, 18, 105, 38, 39, 105,
- 105, 52, 105, 54, 55, 56, 57, 2, 1, 105,
- 3, 105, 105, 54, 55, 56, 57, 12, 13, 105,
- 105, 44, 17, 18, 47, 105, 49, 105, 51, 105,
- 105, 105, 105, 105, 105, 12, 13, 105, 105, 105,
- 17, 18, 1, 105, 3, 38, 39, 105, 105, 44,
- 105, 105, 47, 105, 49, 105, 51, 105, 105, 105,
- 105, 54, 55, 56, 57, 105, 59, 44, 105, 105,
- 47, 105, 49, 71, 51, 105, 105, 75, 11, 38,
- 39, 105, 105, 81, 105, 105, 84, 85, 86, 22,
- 105, 24, 105, 105, 27, 54, 55, 56, 57, 105,
- 33, 99, 35, 105, 37, 105, 105, 105, 71, 105,
- 105, 44, 75, 105, 105, 105, 71, 105, 81, 105,
- 75, 84, 85, 86, 71, 105, 81, 105, 75, 84,
- 85, 86, 105, 105, 81, 105, 99, 84, 85, 86,
- 105, 11, 105, 105, 99, 15, 105, 105, 105, 105,
- 105, 105, 99, 105, 105, 105, 105, 27, 105, 105,
- 105, 105, 105, 33, 105, 105, 36, 105, 105, 105,
- 105, 105, 105, 105, 105, 105, 105, 47,
+ 3, 13, 65, 70, 67, 11, 73, 13, 11, 12,
+ 13, 17, 15, 80, 17, 81, 19, 20, 21, 93,
+ 27, 2, 89, 26, 36, 92, 33, 30, 31, 32,
+ 11, 34, 13, 36, 35, 16, 17, 18, 41, 42,
+ 43, 44, 105, 46, 3, 48, 22, 50, 51, 52,
+ 53, 52, 11, 12, 13, 58, 15, 15, 17, 35,
+ 19, 20, 21, 44, 64, 2, 47, 26, 49, 93,
+ 51, 30, 31, 32, 11, 34, 13, 36, 36, 16,
+ 17, 18, 41, 42, 43, 44, 91, 46, 3, 48,
+ 17, 50, 51, 98, 53, 53, 11, 12, 13, 58,
+ 15, 23, 17, 100, 19, 20, 21, 44, 36, 2,
+ 47, 26, 49, 76, 51, 30, 31, 32, 11, 34,
+ 13, 36, 49, 45, 17, 18, 41, 42, 43, 44,
+ 52, 46, 3, 48, 80, 50, 51, 100, 53, 44,
+ 11, 12, 13, 58, 15, 23, 17, 52, 19, 20,
+ 21, 44, 98, 2, 47, 26, 49, 1, 51, 30,
+ 31, 32, 11, 34, 13, 36, 101, 45, 17, 18,
+ 41, 42, 43, 44, 2, 46, 3, 48, 81, 50,
+ 51, 59, 53, 27, 11, 12, 13, 58, 15, 33,
+ 17, 72, 19, 20, 21, 44, 9, 10, 47, 26,
+ 49, 82, 51, 30, 31, 32, 11, 34, 13, 36,
+ 1, 1, 17, 18, 41, 42, 43, 44, 44, 46,
+ 3, 48, 1, 50, 51, 51, 53, 18, 11, 12,
+ 13, 58, 15, 44, 17, 27, 19, 20, 21, 44,
+ 51, 33, 47, 26, 49, 76, 51, 30, 31, 32,
+ 15, 34, 17, 36, 85, 86, 87, 93, 41, 42,
+ 43, 44, 52, 46, 3, 48, 81, 50, 51, 100,
+ 53, 52, 11, 12, 13, 58, 15, 8, 17, 10,
+ 19, 20, 21, 48, 11, 50, 13, 26, 53, 69,
+ 17, 30, 31, 32, 13, 34, 15, 36, 17, 16,
+ 27, 18, 41, 42, 43, 44, 33, 46, 3, 48,
+ 50, 50, 51, 93, 53, 34, 11, 12, 13, 58,
+ 15, 11, 17, 13, 19, 20, 21, 17, 17, 16,
+ 47, 26, 36, 36, 53, 30, 31, 32, 13, 34,
+ 15, 36, 17, 47, 47, 69, 41, 42, 43, 44,
+ 50, 46, 3, 48, 24, 50, 51, 44, 53, 49,
+ 11, 12, 13, 58, 15, 11, 17, 13, 19, 20,
+ 21, 17, 96, 97, 35, 26, 37, 36, 53, 30,
+ 31, 32, 15, 34, 17, 36, 16, 16, 72, 18,
+ 41, 42, 43, 44, 91, 46, 3, 48, 82, 50,
+ 51, 98, 53, 49, 11, 12, 13, 58, 15, 11,
+ 17, 13, 19, 20, 21, 17, 100, 50, 47, 26,
+ 53, 76, 36, 30, 31, 32, 65, 34, 67, 36,
+ 44, 17, 72, 47, 41, 42, 43, 44, 52, 46,
+ 3, 48, 82, 50, 51, 100, 53, 49, 11, 12,
+ 13, 58, 15, 11, 17, 13, 19, 20, 21, 17,
+ 100, 1, 17, 26, 15, 104, 105, 30, 31, 32,
+ 29, 34, 18, 36, 35, 52, 37, 36, 41, 42,
+ 43, 44, 23, 46, 16, 48, 17, 50, 47, 29,
+ 53, 65, 66, 67, 68, 58, 70, 71, 44, 73,
+ 74, 75, 53, 15, 45, 51, 80, 76, 17, 83,
+ 84, 40, 44, 36, 88, 89, 90, 14, 92, 51,
+ 65, 66, 67, 68, 47, 70, 71, 1, 73, 74,
+ 75, 100, 101, 76, 94, 80, 96, 97, 83, 84,
+ 14, 53, 70, 88, 89, 90, 65, 92, 67, 77,
+ 78, 70, 80, 27, 73, 74, 75, 100, 72, 33,
+ 16, 80, 76, 34, 83, 84, 72, 23, 82, 88,
+ 89, 90, 65, 92, 67, 68, 82, 70, 71, 44,
+ 73, 74, 75, 102, 103, 14, 100, 80, 72, 95,
+ 83, 84, 14, 17, 16, 88, 89, 90, 82, 92,
+ 4, 5, 6, 7, 8, 27, 9, 11, 12, 13,
+ 35, 33, 37, 34, 36, 19, 20, 21, 15, 72,
+ 17, 17, 26, 76, 70, 47, 30, 31, 32, 82,
+ 65, 77, 67, 72, 80, 70, 17, 14, 73, 74,
+ 75, 17, 77, 82, 37, 80, 23, 100, 83, 84,
+ 27, 1, 15, 88, 89, 90, 33, 92, 17, 5,
+ 93, 93, 95, 95, 14, 11, 12, 13, 45, 15,
+ 96, 97, 70, 19, 20, 21, 65, 27, 67, 77,
+ 26, 5, 80, 33, 30, 31, 32, 11, 12, 13,
+ 72, 15, 1, 2, 76, 19, 20, 21, 18, 70,
+ 82, 79, 26, 85, 86, 87, 30, 31, 32, 80,
+ 97, 72, 58, 59, 65, 1, 67, 3, 100, 70,
+ 72, 82, 73, 74, 75, 82, 77, 47, 94, 80,
+ 82, 80, 83, 84, 58, 59, 22, 88, 89, 90,
+ 65, 92, 67, 95, 70, 70, 93, 73, 73, 74,
+ 75, 80, 38, 39, 80, 80, 96, 97, 83, 84,
+ 1, 61, 62, 88, 89, 90, 92, 92, 54, 55,
+ 56, 57, 65, 14, 67, 63, 64, 70, 103, 93,
+ 73, 74, 75, 80, 18, 14, 27, 80, 95, 93,
+ 83, 84, 33, 106, 23, 88, 89, 90, 27, 92,
+ 65, 93, 67, 106, 33, 70, 99, 106, 73, 74,
+ 75, 106, 106, 106, 106, 80, 45, 106, 83, 84,
+ 106, 106, 106, 88, 89, 90, 106, 92, 106, 106,
+ 65, 106, 67, 106, 99, 70, 106, 106, 73, 74,
+ 75, 106, 106, 106, 106, 80, 106, 106, 83, 84,
+ 106, 106, 106, 88, 89, 90, 106, 92, 106, 106,
+ 106, 65, 106, 67, 99, 106, 70, 106, 106, 73,
+ 74, 75, 106, 1, 106, 3, 80, 106, 106, 83,
+ 84, 106, 106, 106, 88, 89, 90, 106, 92, 65,
+ 106, 67, 106, 106, 70, 106, 106, 73, 74, 75,
+ 106, 106, 106, 106, 80, 106, 106, 83, 84, 106,
+ 38, 39, 88, 89, 90, 65, 92, 67, 106, 106,
+ 70, 106, 106, 73, 74, 75, 54, 55, 56, 57,
+ 80, 59, 106, 83, 84, 106, 106, 106, 88, 89,
+ 90, 106, 92, 106, 106, 65, 106, 67, 106, 106,
+ 70, 106, 106, 73, 74, 75, 106, 1, 106, 3,
+ 80, 106, 106, 83, 84, 106, 106, 106, 88, 89,
+ 90, 106, 92, 65, 106, 67, 106, 106, 70, 106,
+ 106, 73, 74, 75, 28, 106, 106, 106, 80, 106,
+ 106, 83, 84, 106, 38, 39, 88, 89, 90, 65,
+ 92, 67, 106, 106, 70, 106, 106, 73, 74, 75,
+ 54, 55, 56, 57, 80, 106, 106, 83, 84, 106,
+ 106, 106, 88, 89, 90, 106, 92, 106, 106, 65,
+ 106, 67, 106, 106, 70, 106, 106, 73, 74, 75,
+ 106, 1, 2, 3, 80, 106, 106, 83, 84, 106,
+ 106, 106, 88, 89, 90, 106, 92, 65, 106, 67,
+ 106, 106, 70, 106, 106, 73, 74, 75, 106, 106,
+ 106, 106, 80, 106, 106, 83, 84, 106, 38, 39,
+ 88, 89, 90, 65, 92, 67, 106, 106, 70, 106,
+ 106, 73, 74, 75, 54, 55, 56, 57, 80, 106,
+ 106, 83, 84, 106, 106, 106, 88, 89, 90, 106,
+ 92, 106, 106, 65, 106, 67, 106, 106, 70, 106,
+ 106, 73, 74, 75, 106, 1, 106, 3, 80, 106,
+ 106, 83, 84, 106, 106, 106, 88, 89, 90, 106,
+ 92, 65, 106, 67, 106, 106, 70, 106, 106, 73,
+ 74, 75, 106, 106, 106, 106, 80, 106, 106, 83,
+ 84, 37, 38, 39, 88, 89, 90, 65, 92, 67,
+ 106, 106, 70, 106, 106, 73, 74, 75, 54, 55,
+ 56, 57, 80, 106, 106, 83, 84, 106, 106, 106,
+ 88, 89, 90, 106, 92, 106, 106, 65, 106, 67,
+ 106, 106, 70, 106, 106, 73, 74, 75, 106, 1,
+ 106, 3, 80, 106, 106, 83, 84, 106, 106, 106,
+ 88, 89, 90, 106, 92, 65, 106, 67, 106, 106,
+ 70, 106, 106, 73, 74, 75, 106, 106, 106, 106,
+ 80, 106, 106, 83, 84, 37, 38, 39, 88, 89,
+ 90, 65, 92, 67, 106, 106, 70, 106, 106, 73,
+ 74, 75, 54, 55, 56, 57, 80, 106, 106, 83,
+ 84, 106, 106, 106, 88, 89, 90, 106, 92, 106,
+ 106, 65, 106, 67, 106, 106, 70, 106, 106, 73,
+ 74, 75, 106, 1, 106, 3, 80, 106, 106, 83,
+ 84, 106, 106, 106, 88, 89, 90, 106, 92, 65,
+ 106, 67, 106, 106, 70, 106, 106, 73, 74, 75,
+ 106, 106, 106, 106, 80, 106, 106, 83, 84, 106,
+ 38, 39, 88, 89, 90, 65, 92, 67, 106, 106,
+ 70, 106, 106, 73, 74, 75, 54, 55, 56, 57,
+ 80, 106, 106, 83, 84, 106, 106, 106, 88, 89,
+ 90, 106, 92, 106, 106, 65, 106, 67, 106, 106,
+ 70, 106, 106, 73, 74, 75, 106, 106, 106, 3,
+ 80, 106, 106, 83, 84, 106, 106, 106, 88, 89,
+ 90, 106, 92, 65, 106, 67, 106, 106, 70, 106,
+ 106, 73, 74, 75, 106, 106, 106, 106, 80, 106,
+ 106, 83, 84, 106, 38, 39, 88, 89, 90, 65,
+ 92, 67, 106, 106, 70, 106, 106, 73, 74, 75,
+ 54, 55, 56, 57, 80, 106, 106, 83, 84, 106,
+ 106, 106, 88, 89, 90, 106, 92, 106, 106, 65,
+ 106, 67, 106, 106, 70, 106, 106, 73, 74, 75,
+ 106, 106, 106, 106, 80, 106, 106, 83, 84, 106,
+ 106, 106, 88, 89, 90, 106, 92, 65, 106, 67,
+ 106, 106, 70, 106, 106, 73, 74, 75, 106, 106,
+ 106, 106, 80, 106, 106, 83, 84, 106, 106, 106,
+ 88, 89, 90, 65, 92, 67, 106, 106, 70, 106,
+ 106, 73, 74, 75, 106, 106, 106, 106, 80, 106,
+ 106, 83, 84, 106, 106, 106, 88, 89, 90, 106,
+ 92, 106, 106, 65, 106, 67, 106, 106, 70, 106,
+ 106, 73, 74, 75, 1, 2, 3, 106, 80, 106,
+ 106, 83, 84, 106, 106, 106, 88, 89, 90, 106,
+ 92, 65, 106, 67, 106, 106, 70, 106, 106, 73,
+ 74, 106, 106, 106, 106, 106, 80, 106, 106, 36,
+ 84, 38, 39, 106, 88, 89, 90, 1, 92, 3,
+ 47, 1, 106, 3, 106, 106, 106, 54, 55, 56,
+ 57, 106, 106, 106, 106, 106, 106, 65, 106, 67,
+ 106, 25, 70, 27, 106, 73, 74, 27, 106, 33,
+ 106, 106, 80, 33, 38, 39, 84, 106, 38, 39,
+ 88, 89, 90, 106, 92, 106, 106, 106, 106, 106,
+ 54, 55, 56, 57, 54, 55, 56, 57, 2, 106,
+ 106, 106, 106, 65, 106, 67, 106, 11, 70, 13,
+ 106, 73, 74, 17, 18, 106, 106, 106, 80, 106,
+ 106, 106, 106, 106, 106, 106, 88, 89, 90, 65,
+ 92, 67, 106, 1, 70, 3, 106, 73, 74, 106,
+ 44, 106, 106, 47, 80, 49, 14, 51, 52, 106,
+ 106, 106, 88, 89, 90, 106, 92, 65, 106, 67,
+ 106, 106, 70, 72, 106, 73, 74, 76, 106, 106,
+ 38, 39, 80, 82, 106, 106, 85, 86, 87, 106,
+ 88, 89, 90, 106, 92, 106, 54, 55, 56, 57,
+ 106, 100, 65, 106, 67, 106, 106, 70, 106, 106,
+ 73, 74, 106, 65, 106, 67, 106, 80, 70, 106,
+ 106, 73, 74, 106, 106, 88, 89, 90, 80, 92,
+ 106, 106, 106, 106, 106, 106, 88, 89, 90, 106,
+ 92, 65, 1, 67, 3, 106, 70, 106, 106, 73,
+ 74, 106, 106, 106, 106, 106, 80, 106, 106, 106,
+ 106, 106, 106, 106, 88, 89, 90, 106, 92, 106,
+ 1, 72, 3, 106, 1, 76, 3, 106, 106, 38,
+ 39, 82, 106, 14, 85, 86, 87, 14, 106, 106,
+ 106, 106, 106, 52, 106, 54, 55, 56, 57, 100,
+ 1, 106, 3, 106, 1, 106, 3, 38, 39, 106,
+ 106, 38, 39, 14, 106, 106, 106, 14, 106, 106,
+ 106, 106, 106, 54, 55, 56, 57, 54, 55, 56,
+ 57, 106, 106, 106, 106, 106, 106, 38, 39, 106,
+ 106, 38, 39, 106, 106, 106, 106, 106, 106, 106,
+ 106, 106, 106, 54, 55, 56, 57, 54, 55, 56,
+ 57, 106, 1, 106, 106, 106, 106, 106, 14, 106,
+ 106, 106, 106, 106, 106, 14, 22, 106, 24, 18,
+ 106, 27, 106, 106, 106, 106, 106, 33, 27, 35,
+ 106, 37, 106, 11, 33, 13, 106, 36, 44, 17,
+ 106, 106, 106, 106, 106, 106, 106, 106, 47, 27,
+ 106, 29, 106, 106, 106, 33,
);
static public $yy_shift_ofst = array(
- 574, 391, 48, 48, 391, 342, 342, 48, -3, 48,
- 48, 440, 48, 48, 146, 48, 48, 48, 48, 48,
- 48, 97, 48, 48, 48, 48, 48, 48, 195, 48,
- 48, 48, 48, 293, 48, 195, 146, 244, 244, 489,
- 489, 489, 489, 489, 489, 1599, 1608, 1692, 1692, 1692,
- 1692, 1692, 574, 1465, 1849, 1907, 1305, 649, 985, 1065,
- 1385, 1145, 1859, 1225, 1941, 1941, 1941, 1941, 1941, 1941,
- 1941, 1941, 1941, 1941, 1941, 1941, 1527, 1527, 120, 730,
- 824, 217, 169, 190, 167, 708, 774, 720, 167, 190,
- 167, 190, 369, 510, 9, 70, 59, 173, 168, 144,
- 307, 117, 38, 287, 287, 219, 441, 235, 449, 484,
- 467, 441, 430, 19, 19, 395, 461, 461, 461, 476,
- 461, 461, 461, 476, 461, -34, -34, -34, 1781, 1827,
- 1666, 1877, 1905, 1923, -9, 46, -14, 254, 19, -29,
- 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
- 157, 19, 19, 11, -29, -29, -29, 19, -29, 19,
- 19, 326, -29, 157, -29, 326, 19, -29, 139, 461,
- 476, 461, 476, 461, 461, 387, 387, 338, 461, 476,
- 331, -34, -34, -34, -34, -34, 905, 1967, 2030, 242,
- 188, 302, 12, 101, 275, 107, 198, 185, -33, 247,
- 283, 324, 41, 63, 291, 354, 472, 474, 477, 486,
- 501, 490, 508, 497, 502, 519, 523, 521, 518, 542,
- 536, 533, 528, 514, 331, 499, 532, 539, 549, 213,
- 39, 466,
+ -13, 393, 393, 305, 85, 85, 85, 85, 349, 305,
+ 349, -3, 85, 85, 129, 85, 217, 85, 173, 85,
+ 85, 85, 129, 261, 85, 85, 85, 85, 85, 85,
+ 85, 85, 85, 85, 85, 85, 41, 41, 437, 437,
+ 437, 437, 437, 437, 1586, 1590, 1590, 1040, 1843, 1839,
+ 1208, 1124, 1781, 1682, 714, 956, 1813, 872, 1809, 1292,
+ 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292,
+ 1292, 1292, 1376, 1376, 235, 676, 1901, 367, 156, 42,
+ 654, 1922, 273, 42, 371, 42, 156, 454, 156, 691,
+ 596, 63, 325, 759, 650, 398, 526, -6, 283, -6,
+ 680, 209, 210, -7, 603, 603, 460, 208, -7, 488,
+ -7, 221, 221, 766, 221, 221, 766, 221, 221, 221,
+ -13, -13, -13, -13, 1646, 19, 107, 151, 195, 281,
+ 310, 442, 468, -7, -7, -7, -7, 174, 174, 544,
+ -7, 174, 174, -7, -12, 449, 449, -7, 174, -7,
+ 174, 189, -7, 174, -7, -7, -7, -7, 189, 174,
+ 766, 766, 766, 221, 221, 172, 221, 221, 172, 72,
+ 221, -13, -13, -13, -13, -13, -13, 1543, 1894, 578,
+ 623, 771, 354, 386, 441, 78, 122, -1, 95, 296,
+ 73, 339, 297, 477, 313, 459, 24, 439, 575, 269,
+ 187, 641, 604, 597, 576, 529, 535, 619, 260, 571,
+ 607, 637, 624, 579, 503, 491, 370, 330, 300, 219,
+ 311, 341, 414, 471, 469, 423, 72, 445,
);
static public $yy_reduce_ofst = array(
- 707, 482, 741, 711, 594, 566, 538, 628, 1054, 1160,
- 1400, 1480, 894, 866, 946, 1374, 1266, 1214, 1186, 1240,
- 1134, 1026, 1080, 1294, 1426, 1506, 1534, 1454, 1320, 1346,
- 1000, 1106, 806, 776, 974, 920, 840, 1633, 1603, 1570,
- 1691, 1779, 1747, 1663, 1717, 1945, 1953, 547, 609, 1902,
- 1937, 1953, 56, 442, 442, 442, 442, 442, 442, 442,
- 442, 442, 442, 442, 442, 442, 442, 442, 442, 442,
- 442, 442, 442, 442, 442, 442, 442, 442, -67, 229,
- 683, 202, -4, 55, 28, 311, 271, 259, 205, 298,
- 350, 320, 156, 282, 347, 347, 224, 339, 339, 272,
- 334, 335, 335, 256, 272, 366, 383, 418, 388, 339,
- 339, 319, 335, 398, 365, 339, 339, 339, 376, 335,
- 339, 339, 339, 448, 339, 339, 339, 339, 93, 93,
- 93, 93, 93, 93, 495, 473, 93, 93, 481, 475,
- 481, 481, 481, 481, 481, 481, 481, 481, 481, 481,
- 493, 481, 481, 488, 475, 475, 475, 481, 475, 481,
- 481, 496, 475, 506, 475, 485, 481, 475, 483, 405,
- 401, 405, 401, 405, 405, 208, 208, 397, 405, 401,
- 386, -74, 71, 197, 113, 385,
+ 700, 455, 426, 481, 507, 765, 707, 735, 565, 675,
+ 649, 1076, 1160, 1186, 1102, 1244, 964, 992, 1018, 1048,
+ 1216, 1438, 1468, 1384, 1412, 1270, 1300, 1354, 1328, 1132,
+ 824, 934, 908, 880, 850, 796, 1496, 1542, 1642, 1614,
+ 1677, 1716, 1688, 1588, 1739, 1641, 618, 169, 169, 169,
+ 169, 169, 169, 169, 169, 169, 169, 169, 169, 169,
+ 169, 169, 169, 169, 169, 169, 169, 169, 169, 169,
+ 169, 169, 169, 169, -67, 361, 486, 674, 547, 472,
+ -63, 494, 648, 602, 276, 554, 316, 440, 360, 431,
+ 611, 220, 54, 37, 37, 568, 37, 567, 574, 568,
+ 574, 345, 37, 119, 303, -5, 37, 561, 516, 629,
+ 639, 37, 37, 574, 37, 37, 660, 457, 37, 37,
+ 37, 37, 712, 37, 686, 686, 686, 686, 686, 703,
+ 693, 686, 686, 643, 643, 643, 643, 634, 634, 622,
+ 643, 634, 634, 643, 653, 671, 651, 643, 634, 643,
+ 634, 696, 643, 634, 643, 643, 643, 643, 708, 634,
+ 613, 613, 613, 3, 3, 65, 3, 3, 65, 164,
+ 3, 97, 185, 0, -24, -66, -74,
);
static public $yyExpectedTokens = array(
- array(4, 5, 6, 7, 8, 12, 13, 16, 19, 20, 21, 26, 30, 31, 32,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 52, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 53, 58,),
- array(3, 12, 13, 14, 16, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 53, 58,),
+ array(),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 52, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 51, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 53, 58,),
+ array(3, 11, 12, 13, 15, 17, 19, 20, 21, 26, 30, 31, 32, 34, 36, 41, 42, 43, 44, 46, 48, 50, 53, 58,),
array(1, 3, 25, 27, 33, 38, 39, 54, 55, 56, 57,),
- array(1, 3, 11, 27, 33, 38, 39, 54, 55, 56, 57,),
array(1, 3, 27, 33, 38, 39, 54, 55, 56, 57,),
array(1, 3, 27, 33, 38, 39, 54, 55, 56, 57,),
- array(1, 3, 27, 33, 38, 39, 54, 55, 56, 57,),
- array(1, 3, 27, 33, 38, 39, 54, 55, 56, 57,),
- array(1, 3, 27, 33, 38, 39, 54, 55, 56, 57,),
- array(4, 5, 6, 7, 8, 12, 13, 16, 19, 20, 21, 26, 30, 31, 32,),
- array(1, 3, 28, 38, 39, 54, 55, 56, 57,),
- array(1, 3, 38, 39, 52, 54, 55, 56, 57,),
- array(1, 3, 38, 39, 54, 55, 56, 57, 59,),
- array(1, 3, 11, 38, 39, 54, 55, 56, 57,),
+ array(1, 2, 3, 38, 39, 54, 55, 56, 57,),
+ array(1, 3, 14, 38, 39, 54, 55, 56, 57,),
+ array(1, 3, 14, 38, 39, 54, 55, 56, 57,),
array(1, 3, 37, 38, 39, 54, 55, 56, 57,),
- array(1, 3, 11, 38, 39, 54, 55, 56, 57,),
- array(1, 3, 11, 38, 39, 54, 55, 56, 57,),
array(1, 3, 37, 38, 39, 54, 55, 56, 57,),
- array(1, 2, 3, 38, 39, 54, 55, 56, 57,),
+ array(1, 3, 38, 39, 52, 54, 55, 56, 57,),
+ array(1, 3, 14, 38, 39, 54, 55, 56, 57,),
array(1, 3, 22, 38, 39, 54, 55, 56, 57,),
- array(1, 3, 11, 38, 39, 54, 55, 56, 57,),
+ array(1, 3, 28, 38, 39, 54, 55, 56, 57,),
+ array(1, 3, 14, 38, 39, 54, 55, 56, 57,),
+ array(1, 3, 38, 39, 54, 55, 56, 57, 59,),
+ array(1, 3, 14, 38, 39, 54, 55, 56, 57,),
+ array(1, 3, 38, 39, 54, 55, 56, 57,),
array(1, 3, 38, 39, 54, 55, 56, 57,),
array(1, 3, 38, 39, 54, 55, 56, 57,),
array(1, 3, 38, 39, 54, 55, 56, 57,),
@@ -742,161 +616,160 @@ class Smarty_Internal_Templateparser
array(1, 3, 38, 39, 54, 55, 56, 57,),
array(3, 38, 39, 54, 55, 56, 57,),
array(3, 38, 39, 54, 55, 56, 57,),
- array(14, 17, 48, 50, 53,),
- array(5, 12, 13, 14, 16, 19, 20, 21, 26, 30, 31, 32, 58, 59,),
- array(1, 11, 18, 27, 33, 36, 47,),
- array(1, 11, 27, 33,),
- array(14, 17, 50, 53,),
+ array(15, 17, 48, 50, 53,),
+ array(5, 11, 12, 13, 15, 19, 20, 21, 26, 30, 31, 32, 58, 59,),
+ array(1, 14, 18, 27, 33, 36, 47,),
+ array(15, 17, 50, 53,),
array(1, 27, 33,),
- array(14, 36, 53,),
- array(5, 12, 13, 14, 16, 19, 20, 21, 26, 30, 31, 32, 58, 59,),
- array(12, 13, 17, 27, 29, 33,),
- array(12, 13, 17, 27, 33,),
- array(14, 36, 53,),
- array(1, 27, 33,),
- array(14, 36, 53,),
+ array(15, 36, 53,),
+ array(5, 11, 12, 13, 15, 19, 20, 21, 26, 30, 31, 32, 58, 59,),
+ array(11, 13, 17, 27, 29, 33,),
+ array(11, 13, 17, 27, 33,),
+ array(15, 36, 53,),
+ array(16, 18, 47,),
+ array(15, 36, 53,),
array(1, 27, 33,),
array(18, 44, 51,),
+ array(1, 27, 33,),
array(1, 2,),
- array(11, 23, 27, 33, 45,),
- array(11, 23, 27, 33, 45,),
- array(13, 14, 17, 53,),
- array(1, 11, 27, 33,),
- array(1, 11, 27, 33,),
- array(12, 13, 17, 49,),
- array(8, 9, 10,),
- array(15, 18, 47,),
- array(15, 18, 47,),
- array(12, 13, 17,),
- array(12, 13, 17,),
- array(14, 53,),
- array(14, 17,),
- array(27, 33,),
+ array(4, 5, 6, 7, 8, 11, 12, 13, 19, 20, 21, 26, 30, 31, 32,),
+ array(2, 11, 13, 16, 17, 18, 44, 47, 49, 51,),
+ array(13, 15, 17, 53,),
+ array(1, 14, 27, 33,),
+ array(1, 14, 27, 33,),
+ array(11, 13, 17, 49,),
+ array(1, 14, 27, 33,),
+ array(11, 13, 17,),
+ array(16, 18, 47,),
+ array(11, 13, 17,),
+ array(18, 47,),
array(1, 18,),
- array(1, 11,),
+ array(1, 52,),
+ array(27, 33,),
+ array(15, 17,),
+ array(15, 17,),
array(1, 29,),
- array(14, 17,),
- array(18, 47,),
array(27, 33,),
array(27, 33,),
- array(1, 52,),
- array(1,),
+ array(15, 53,),
+ array(27, 33,),
array(1,),
array(1,),
array(18,),
array(1,),
array(1,),
- array(1,),
array(18,),
array(1,),
+ array(1,),
+ array(1,),
array(),
array(),
array(),
- array(2, 12, 13, 17, 18, 44, 47, 49, 51, 52,),
- array(2, 12, 13, 15, 17, 18, 44, 47, 49, 51,),
- array(2, 12, 13, 15, 17, 18, 44, 47, 49, 51,),
- array(2, 12, 13, 17, 18, 44, 47, 49, 51,),
- array(2, 12, 13, 17, 18, 44, 47, 49, 51,),
- array(12, 13, 17, 18, 44, 47, 49, 51,),
- array(13, 14, 17, 34, 53,),
- array(12, 13, 17, 49,),
- array(15, 44, 51,),
- array(12, 13, 17,),
- array(27, 33,),
- array(44, 51,),
- array(27, 33,),
- array(27, 33,),
- array(27, 33,),
- array(27, 33,),
- array(27, 33,),
- array(27, 33,),
- array(27, 33,),
- array(27, 33,),
+ array(),
+ array(2, 11, 13, 17, 18, 44, 47, 49, 51, 52,),
+ array(2, 11, 13, 16, 17, 18, 44, 47, 49, 51,),
+ array(2, 11, 13, 17, 18, 44, 47, 49, 51,),
+ array(2, 11, 13, 17, 18, 44, 47, 49, 51,),
+ array(11, 13, 17, 18, 44, 47, 49, 51,),
+ array(13, 15, 17, 34, 53,),
+ array(11, 13, 17, 49,),
+ array(11, 13, 17,),
+ array(16, 44, 51,),
array(27, 33,),
array(27, 33,),
- array(14, 53,),
array(27, 33,),
array(27, 33,),
- array(15, 23,),
- array(44, 51,),
array(44, 51,),
array(44, 51,),
+ array(16, 23,),
array(27, 33,),
array(44, 51,),
+ array(44, 51,),
array(27, 33,),
+ array(13, 36,),
+ array(15, 53,),
+ array(15, 53,),
array(27, 33,),
array(44, 51,),
+ array(27, 33,),
array(44, 51,),
- array(14, 53,),
array(44, 51,),
+ array(27, 33,),
array(44, 51,),
array(27, 33,),
+ array(27, 33,),
+ array(27, 33,),
+ array(27, 33,),
+ array(44, 51,),
array(44, 51,),
- array(13, 36,),
- array(1,),
array(18,),
- array(1,),
+ array(18,),
array(18,),
array(1,),
array(1,),
array(2,),
- array(2,),
- array(9,),
array(1,),
- array(18,),
+ array(1,),
+ array(2,),
array(36,),
+ array(1,),
+ array(),
array(),
array(),
array(),
array(),
array(),
array(1, 2, 3, 36, 38, 39, 47, 54, 55, 56, 57,),
- array(11, 22, 24, 27, 33, 35, 37, 44,),
- array(11, 15, 27, 33, 36, 47,),
- array(12, 13, 17, 49,),
+ array(14, 22, 24, 27, 33, 35, 37, 44,),
+ array(14, 16, 27, 33, 36, 47,),
+ array(14, 23, 27, 33, 45,),
+ array(14, 23, 27, 33, 45,),
+ array(11, 13, 17, 49,),
array(36, 44, 47, 52,),
array(29, 36, 47,),
- array(23, 45, 59,),
array(23, 45, 52,),
+ array(23, 45, 59,),
+ array(35, 52,),
+ array(44, 52,),
array(36, 47,),
- array(35, 37,),
- array(15, 44,),
array(17, 49,),
- array(35, 52,),
- array(22, 35,),
array(35, 37,),
array(36, 47,),
array(36, 47,),
+ array(16, 44,),
array(23, 45,),
+ array(22, 35,),
array(35, 37,),
- array(44, 52,),
- array(50,),
- array(50,),
- array(52,),
- array(52,),
+ array(35, 37,),
+ array(8, 10,),
+ array(9, 10,),
array(17,),
array(17,),
- array(5,),
+ array(9,),
array(17,),
+ array(34,),
+ array(44,),
+ array(17,),
+ array(50,),
array(14,),
+ array(37,),
array(15,),
array(17,),
- array(36,),
- array(40,),
+ array(34,),
+ array(14,),
array(17,),
+ array(16,),
+ array(24,),
+ array(50,),
+ array(52,),
array(17,),
+ array(36,),
array(17,),
+ array(40,),
array(17,),
- array(34,),
+ array(52,),
array(36,),
- array(37,),
array(17,),
- array(24,),
- array(11,),
- array(17,),
- array(44,),
- array(34,),
- array(),
array(),
array(),
array(),
@@ -993,73 +866,66 @@ class Smarty_Internal_Templateparser
array(),
);
static public $yy_default = array(
- 330, 504, 483, 483, 519, 519, 519, 483, 519, 519,
- 519, 519, 519, 519, 519, 519, 519, 519, 519, 519,
- 519, 519, 519, 519, 519, 519, 519, 519, 519, 519,
- 519, 519, 519, 519, 519, 519, 519, 519, 519, 519,
- 519, 519, 519, 519, 519, 385, 519, 364, 385, 354,
- 385, 351, 327, 390, 519, 519, 519, 519, 519, 519,
- 519, 519, 519, 519, 392, 407, 482, 396, 507, 369,
- 506, 397, 390, 481, 505, 387, 412, 411, 519, 519,
- 423, 399, 519, 385, 519, 519, 385, 385, 519, 385,
- 519, 385, 495, 376, 413, 413, 519, 399, 399, 448,
- 519, 438, 438, 448, 448, 519, 519, 385, 379, 399,
- 399, 519, 438, 385, 366, 399, 402, 399, 381, 438,
- 415, 406, 416, 492, 410, 490, 414, 403, 437, 437,
- 437, 437, 437, 437, 519, 450, 464, 448, 348, 446,
- 365, 362, 373, 358, 374, 356, 355, 350, 361, 352,
- 519, 360, 367, 519, 445, 473, 475, 368, 476, 372,
- 371, 441, 444, 519, 474, 443, 375, 442, 448, 380,
- 493, 405, 496, 432, 377, 485, 484, 342, 382, 470,
- 448, 489, 489, 448, 448, 489, 423, 419, 423, 449,
- 423, 423, 413, 413, 519, 519, 419, 519, 519, 519,
- 519, 423, 433, 413, 519, 419, 519, 519, 428, 519,
- 519, 519, 334, 519, 519, 519, 519, 494, 425, 519,
- 519, 519, 519, 519, 464, 519, 519, 393, 519, 519,
- 419, 421, 332, 370, 394, 333, 398, 331, 337, 458,
- 425, 463, 457, 479, 478, 329, 335, 454, 491, 328,
- 460, 386, 464, 469, 456, 455, 336, 480, 420, 422,
- 424, 418, 401, 363, 400, 428, 429, 431, 434, 383,
- 409, 408, 430, 357, 453, 452, 488, 378, 486, 468,
- 467, 384, 466, 487, 417, 447, 451, 436, 435, 426,
- 427, 461, 459, 340, 513, 512, 510, 509, 471, 508,
- 514, 517, 503, 502, 338, 339, 501, 518, 511, 341,
- 343, 500, 404, 439, 499, 498, 462, 497, 440, 472,
- 515, 516, 344, 345, 465, 346, 477,
+ 333, 507, 507, 492, 507, 471, 471, 471, 507, 507,
+ 507, 507, 507, 507, 507, 507, 507, 507, 507, 507,
+ 507, 507, 507, 507, 507, 507, 507, 507, 507, 507,
+ 507, 507, 507, 507, 507, 507, 507, 507, 507, 507,
+ 507, 507, 507, 507, 373, 352, 373, 507, 507, 507,
+ 507, 507, 507, 507, 507, 378, 345, 507, 507, 375,
+ 384, 380, 469, 470, 345, 378, 493, 395, 495, 494,
+ 385, 357, 400, 399, 507, 507, 411, 507, 373, 507,
+ 507, 373, 373, 507, 426, 507, 373, 483, 373, 364,
+ 322, 425, 507, 387, 387, 436, 387, 436, 426, 436,
+ 426, 367, 387, 373, 507, 507, 387, 373, 354, 507,
+ 373, 404, 394, 426, 387, 403, 480, 369, 398, 390,
+ 402, 391, 331, 478, 425, 425, 425, 425, 425, 507,
+ 438, 436, 452, 346, 349, 350, 348, 434, 433, 507,
+ 353, 464, 462, 356, 436, 507, 507, 362, 461, 342,
+ 430, 429, 363, 463, 361, 355, 359, 360, 431, 432,
+ 484, 458, 481, 370, 368, 473, 420, 393, 472, 436,
+ 365, 477, 477, 331, 436, 477, 436, 411, 407, 411,
+ 401, 401, 437, 411, 411, 401, 401, 507, 407, 411,
+ 507, 507, 507, 421, 407, 401, 507, 507, 507, 329,
+ 507, 507, 507, 507, 507, 409, 407, 507, 507, 507,
+ 507, 507, 507, 507, 507, 507, 507, 381, 507, 507,
+ 507, 482, 507, 413, 507, 416, 452, 507, 386, 443,
+ 451, 445, 444, 466, 413, 457, 358, 452, 448, 382,
+ 446, 374, 442, 479, 467, 392, 475, 405, 414, 474,
+ 366, 455, 456, 476, 415, 423, 388, 389, 406, 441,
+ 440, 424, 435, 439, 454, 372, 328, 330, 332, 327,
+ 326, 323, 324, 325, 334, 335, 341, 371, 351, 339,
+ 338, 336, 337, 408, 410, 496, 497, 498, 504, 503,
+ 468, 340, 459, 501, 500, 489, 491, 490, 499, 506,
+ 502, 505, 453, 460, 397, 419, 422, 396, 418, 412,
+ 416, 417, 449, 447, 488, 427, 428, 487, 486, 450,
+ 485, 465,
);
public static $yyFallback = array();
public static $yyRuleName = array(
'start ::= template',
- 'template ::= template_element',
- 'template ::= template template_element',
+ 'template ::= template PHP',
+ 'template ::= template TEXT',
+ 'template ::= template STRIPON',
+ 'template ::= template STRIPOFF',
+ 'template ::= template LITERALSTART literal_e2 LITERALEND',
+ 'literal_e2 ::= literal_e1 LITERALSTART literal_e1 LITERALEND',
+ 'literal_e2 ::= literal_e1',
+ 'literal_e1 ::= literal_e1 LITERAL',
+ 'literal_e1 ::=',
+ 'template ::= template smartytag',
'template ::=',
- 'template_element ::= smartytag',
- 'template_element ::= literal',
- 'template_element ::= PHP',
- 'template_element ::= text_content',
- 'text_content ::= TEXT',
- 'text_content ::= text_content TEXT',
- 'template_element ::= STRIPON',
- 'template_element ::= STRIPOFF',
- 'literal ::= LITERALSTART LITERALEND',
- 'literal ::= LITERALSTART literal_elements LITERALEND',
- 'literal_elements ::= literal_elements literal_element',
- 'literal_elements ::=',
- 'literal_element ::= literal',
- 'literal_element ::= LITERAL',
- 'smartytag ::= tag RDEL',
'smartytag ::= SIMPELOUTPUT',
- 'tag ::= LDEL variable',
- 'tag ::= LDEL variable attributes',
- 'tag ::= LDEL value',
- 'tag ::= LDEL value attributes',
- 'tag ::= LDEL expr',
- 'tag ::= LDEL expr attributes',
- 'tag ::= LDEL DOLLARID EQUAL value',
- 'tag ::= LDEL DOLLARID EQUAL expr',
- 'tag ::= LDEL DOLLARID EQUAL expr attributes',
- 'tag ::= LDEL varindexed EQUAL expr attributes',
'smartytag ::= SIMPLETAG',
+ 'smartytag ::= LDEL tagbody RDEL',
+ 'smartytag ::= tag RDEL',
+ 'tagbody ::= outattr',
+ 'tagbody ::= DOLLARID eqoutattr',
+ 'tagbody ::= varindexed eqoutattr',
+ 'eqoutattr ::= EQUAL outattr',
+ 'outattr ::= output attributes',
+ 'output ::= variable',
+ 'output ::= value',
+ 'output ::= expr',
'tag ::= LDEL ID attributes',
'tag ::= LDEL ID',
'tag ::= LDEL ID modifierlist attributes',
@@ -1224,263 +1090,251 @@ class Smarty_Internal_Templateparser
);
public static $yyRuleInfo = array(
array(0 => 61, 1 => 1),
- array(0 => 62, 1 => 1),
array(0 => 62, 1 => 2),
- array(0 => 62, 1 => 0),
- array(0 => 63, 1 => 1),
- array(0 => 63, 1 => 1),
- array(0 => 63, 1 => 1),
+ array(0 => 62, 1 => 2),
+ array(0 => 62, 1 => 2),
+ array(0 => 62, 1 => 2),
+ array(0 => 62, 1 => 4),
+ array(0 => 63, 1 => 4),
array(0 => 63, 1 => 1),
+ array(0 => 64, 1 => 2),
+ array(0 => 64, 1 => 0),
+ array(0 => 62, 1 => 2),
+ array(0 => 62, 1 => 0),
+ array(0 => 65, 1 => 1),
+ array(0 => 65, 1 => 1),
+ array(0 => 65, 1 => 3),
+ array(0 => 65, 1 => 2),
array(0 => 66, 1 => 1),
array(0 => 66, 1 => 2),
- array(0 => 63, 1 => 1),
- array(0 => 63, 1 => 1),
- array(0 => 65, 1 => 2),
- array(0 => 65, 1 => 3),
- array(0 => 67, 1 => 2),
- array(0 => 67, 1 => 0),
- array(0 => 68, 1 => 1),
- array(0 => 68, 1 => 1),
- array(0 => 64, 1 => 2),
- array(0 => 64, 1 => 1),
- array(0 => 69, 1 => 2),
- array(0 => 69, 1 => 3),
- array(0 => 69, 1 => 2),
- array(0 => 69, 1 => 3),
- array(0 => 69, 1 => 2),
- array(0 => 69, 1 => 3),
- array(0 => 69, 1 => 4),
- array(0 => 69, 1 => 4),
- array(0 => 69, 1 => 5),
- array(0 => 69, 1 => 5),
- array(0 => 64, 1 => 1),
- array(0 => 69, 1 => 3),
- array(0 => 69, 1 => 2),
- array(0 => 69, 1 => 4),
- array(0 => 69, 1 => 5),
- array(0 => 69, 1 => 6),
- array(0 => 69, 1 => 2),
- array(0 => 69, 1 => 2),
- array(0 => 69, 1 => 3),
- array(0 => 69, 1 => 2),
- array(0 => 69, 1 => 3),
- array(0 => 69, 1 => 8),
- array(0 => 78, 1 => 2),
- array(0 => 78, 1 => 1),
- array(0 => 69, 1 => 5),
- array(0 => 69, 1 => 7),
- array(0 => 69, 1 => 6),
- array(0 => 69, 1 => 8),
- array(0 => 69, 1 => 2),
- array(0 => 69, 1 => 3),
- array(0 => 69, 1 => 4),
- array(0 => 64, 1 => 1),
+ array(0 => 66, 1 => 2),
array(0 => 69, 1 => 2),
- array(0 => 69, 1 => 3),
- array(0 => 69, 1 => 4),
- array(0 => 69, 1 => 5),
- array(0 => 71, 1 => 2),
+ array(0 => 68, 1 => 2),
array(0 => 71, 1 => 1),
- array(0 => 71, 1 => 0),
- array(0 => 81, 1 => 4),
- array(0 => 81, 1 => 2),
- array(0 => 81, 1 => 2),
- array(0 => 81, 1 => 2),
- array(0 => 81, 1 => 2),
- array(0 => 81, 1 => 2),
- array(0 => 81, 1 => 4),
- array(0 => 77, 1 => 1),
+ array(0 => 71, 1 => 1),
+ array(0 => 71, 1 => 1),
+ array(0 => 67, 1 => 3),
+ array(0 => 67, 1 => 2),
+ array(0 => 67, 1 => 4),
+ array(0 => 67, 1 => 5),
+ array(0 => 67, 1 => 6),
+ array(0 => 67, 1 => 2),
+ array(0 => 67, 1 => 2),
+ array(0 => 67, 1 => 3),
+ array(0 => 67, 1 => 2),
+ array(0 => 67, 1 => 3),
+ array(0 => 67, 1 => 8),
+ array(0 => 79, 1 => 2),
+ array(0 => 79, 1 => 1),
+ array(0 => 67, 1 => 5),
+ array(0 => 67, 1 => 7),
+ array(0 => 67, 1 => 6),
+ array(0 => 67, 1 => 8),
+ array(0 => 67, 1 => 2),
+ array(0 => 67, 1 => 3),
+ array(0 => 67, 1 => 4),
+ array(0 => 65, 1 => 1),
+ array(0 => 67, 1 => 2),
+ array(0 => 67, 1 => 3),
+ array(0 => 67, 1 => 4),
+ array(0 => 67, 1 => 5),
+ array(0 => 72, 1 => 2),
+ array(0 => 72, 1 => 1),
+ array(0 => 72, 1 => 0),
+ array(0 => 82, 1 => 4),
+ array(0 => 82, 1 => 2),
+ array(0 => 82, 1 => 2),
+ array(0 => 82, 1 => 2),
+ array(0 => 82, 1 => 2),
+ array(0 => 82, 1 => 2),
+ array(0 => 82, 1 => 4),
+ array(0 => 78, 1 => 1),
+ array(0 => 78, 1 => 3),
array(0 => 77, 1 => 3),
- array(0 => 76, 1 => 3),
- array(0 => 76, 1 => 3),
- array(0 => 76, 1 => 3),
- array(0 => 76, 1 => 3),
+ array(0 => 77, 1 => 3),
+ array(0 => 77, 1 => 3),
+ array(0 => 77, 1 => 3),
+ array(0 => 75, 1 => 1),
+ array(0 => 75, 1 => 1),
+ array(0 => 75, 1 => 3),
+ array(0 => 75, 1 => 3),
+ array(0 => 75, 1 => 3),
+ array(0 => 75, 1 => 1),
+ array(0 => 75, 1 => 2),
+ array(0 => 75, 1 => 3),
+ array(0 => 75, 1 => 3),
+ array(0 => 75, 1 => 2),
+ array(0 => 75, 1 => 3),
+ array(0 => 75, 1 => 3),
+ array(0 => 83, 1 => 7),
+ array(0 => 83, 1 => 7),
+ array(0 => 74, 1 => 1),
+ array(0 => 74, 1 => 2),
+ array(0 => 74, 1 => 2),
+ array(0 => 74, 1 => 2),
+ array(0 => 74, 1 => 2),
+ array(0 => 74, 1 => 1),
+ array(0 => 74, 1 => 1),
+ array(0 => 74, 1 => 3),
+ array(0 => 74, 1 => 2),
+ array(0 => 74, 1 => 2),
+ array(0 => 74, 1 => 1),
+ array(0 => 74, 1 => 1),
+ array(0 => 74, 1 => 3),
+ array(0 => 74, 1 => 3),
+ array(0 => 74, 1 => 3),
+ array(0 => 74, 1 => 1),
+ array(0 => 74, 1 => 1),
+ array(0 => 74, 1 => 3),
+ array(0 => 74, 1 => 1),
+ array(0 => 74, 1 => 2),
+ array(0 => 74, 1 => 1),
+ array(0 => 74, 1 => 3),
+ array(0 => 89, 1 => 1),
+ array(0 => 89, 1 => 1),
array(0 => 73, 1 => 1),
array(0 => 73, 1 => 1),
array(0 => 73, 1 => 3),
- array(0 => 73, 1 => 3),
- array(0 => 73, 1 => 3),
array(0 => 73, 1 => 1),
- array(0 => 73, 1 => 2),
- array(0 => 73, 1 => 3),
array(0 => 73, 1 => 3),
- array(0 => 73, 1 => 2),
+ array(0 => 73, 1 => 4),
array(0 => 73, 1 => 3),
- array(0 => 73, 1 => 3),
- array(0 => 82, 1 => 7),
- array(0 => 82, 1 => 7),
- array(0 => 72, 1 => 1),
- array(0 => 72, 1 => 2),
- array(0 => 72, 1 => 2),
- array(0 => 72, 1 => 2),
- array(0 => 72, 1 => 2),
- array(0 => 72, 1 => 1),
- array(0 => 72, 1 => 1),
- array(0 => 72, 1 => 3),
- array(0 => 72, 1 => 2),
- array(0 => 72, 1 => 2),
- array(0 => 72, 1 => 1),
- array(0 => 72, 1 => 1),
- array(0 => 72, 1 => 3),
- array(0 => 72, 1 => 3),
- array(0 => 72, 1 => 3),
- array(0 => 72, 1 => 1),
- array(0 => 72, 1 => 1),
- array(0 => 72, 1 => 3),
- array(0 => 72, 1 => 1),
- array(0 => 72, 1 => 2),
- array(0 => 72, 1 => 1),
- array(0 => 72, 1 => 3),
- array(0 => 88, 1 => 1),
- array(0 => 88, 1 => 1),
- array(0 => 70, 1 => 1),
- array(0 => 70, 1 => 1),
- array(0 => 70, 1 => 3),
- array(0 => 70, 1 => 1),
- array(0 => 70, 1 => 3),
- array(0 => 70, 1 => 4),
- array(0 => 70, 1 => 3),
- array(0 => 70, 1 => 4),
- array(0 => 74, 1 => 2),
- array(0 => 74, 1 => 2),
- array(0 => 92, 1 => 2),
- array(0 => 92, 1 => 0),
- array(0 => 93, 1 => 2),
+ array(0 => 73, 1 => 4),
+ array(0 => 70, 1 => 2),
+ array(0 => 70, 1 => 2),
array(0 => 93, 1 => 2),
- array(0 => 93, 1 => 4),
- array(0 => 93, 1 => 2),
- array(0 => 93, 1 => 2),
- array(0 => 93, 1 => 4),
- array(0 => 93, 1 => 3),
- array(0 => 93, 1 => 5),
- array(0 => 93, 1 => 3),
- array(0 => 93, 1 => 3),
- array(0 => 93, 1 => 3),
- array(0 => 93, 1 => 3),
- array(0 => 93, 1 => 3),
- array(0 => 93, 1 => 3),
- array(0 => 93, 1 => 2),
- array(0 => 79, 1 => 1),
- array(0 => 79, 1 => 1),
- array(0 => 79, 1 => 2),
- array(0 => 94, 1 => 1),
- array(0 => 94, 1 => 1),
+ array(0 => 93, 1 => 0),
+ array(0 => 94, 1 => 2),
+ array(0 => 94, 1 => 2),
+ array(0 => 94, 1 => 4),
+ array(0 => 94, 1 => 2),
+ array(0 => 94, 1 => 2),
+ array(0 => 94, 1 => 4),
array(0 => 94, 1 => 3),
- array(0 => 91, 1 => 2),
+ array(0 => 94, 1 => 5),
+ array(0 => 94, 1 => 3),
+ array(0 => 94, 1 => 3),
+ array(0 => 94, 1 => 3),
+ array(0 => 94, 1 => 3),
+ array(0 => 94, 1 => 3),
+ array(0 => 94, 1 => 3),
+ array(0 => 94, 1 => 2),
+ array(0 => 80, 1 => 1),
+ array(0 => 80, 1 => 1),
+ array(0 => 80, 1 => 2),
+ array(0 => 95, 1 => 1),
array(0 => 95, 1 => 1),
- array(0 => 95, 1 => 2),
- array(0 => 96, 1 => 3),
- array(0 => 96, 1 => 3),
- array(0 => 96, 1 => 5),
- array(0 => 96, 1 => 6),
+ array(0 => 95, 1 => 3),
+ array(0 => 92, 1 => 2),
+ array(0 => 96, 1 => 1),
array(0 => 96, 1 => 2),
- array(0 => 87, 1 => 4),
- array(0 => 97, 1 => 4),
- array(0 => 97, 1 => 4),
- array(0 => 98, 1 => 3),
- array(0 => 98, 1 => 1),
- array(0 => 98, 1 => 0),
- array(0 => 75, 1 => 3),
- array(0 => 75, 1 => 2),
+ array(0 => 97, 1 => 3),
+ array(0 => 97, 1 => 3),
+ array(0 => 97, 1 => 5),
+ array(0 => 97, 1 => 6),
+ array(0 => 97, 1 => 2),
+ array(0 => 88, 1 => 4),
+ array(0 => 98, 1 => 4),
+ array(0 => 98, 1 => 4),
array(0 => 99, 1 => 3),
- array(0 => 99, 1 => 2),
- array(0 => 80, 1 => 2),
- array(0 => 80, 1 => 0),
- array(0 => 100, 1 => 2),
+ array(0 => 99, 1 => 1),
+ array(0 => 99, 1 => 0),
+ array(0 => 76, 1 => 3),
+ array(0 => 76, 1 => 2),
+ array(0 => 100, 1 => 3),
array(0 => 100, 1 => 2),
- array(0 => 90, 1 => 1),
- array(0 => 90, 1 => 2),
- array(0 => 90, 1 => 1),
- array(0 => 90, 1 => 2),
- array(0 => 90, 1 => 3),
- array(0 => 85, 1 => 1),
- array(0 => 85, 1 => 1),
- array(0 => 84, 1 => 1),
+ array(0 => 81, 1 => 2),
+ array(0 => 81, 1 => 0),
+ array(0 => 101, 1 => 2),
+ array(0 => 101, 1 => 2),
+ array(0 => 91, 1 => 1),
+ array(0 => 91, 1 => 2),
+ array(0 => 91, 1 => 1),
+ array(0 => 91, 1 => 2),
+ array(0 => 91, 1 => 3),
array(0 => 86, 1 => 1),
- array(0 => 83, 1 => 3),
- array(0 => 101, 1 => 1),
- array(0 => 101, 1 => 3),
- array(0 => 101, 1 => 0),
- array(0 => 102, 1 => 3),
- array(0 => 102, 1 => 3),
+ array(0 => 86, 1 => 1),
+ array(0 => 85, 1 => 1),
+ array(0 => 87, 1 => 1),
+ array(0 => 84, 1 => 3),
array(0 => 102, 1 => 1),
- array(0 => 89, 1 => 2),
- array(0 => 89, 1 => 3),
- array(0 => 103, 1 => 2),
+ array(0 => 102, 1 => 3),
+ array(0 => 102, 1 => 0),
+ array(0 => 103, 1 => 3),
+ array(0 => 103, 1 => 3),
array(0 => 103, 1 => 1),
- array(0 => 104, 1 => 3),
- array(0 => 104, 1 => 3),
- array(0 => 104, 1 => 1),
- array(0 => 104, 1 => 3),
- array(0 => 104, 1 => 3),
- array(0 => 104, 1 => 1),
+ array(0 => 90, 1 => 2),
+ array(0 => 90, 1 => 3),
+ array(0 => 104, 1 => 2),
array(0 => 104, 1 => 1),
+ array(0 => 105, 1 => 3),
+ array(0 => 105, 1 => 3),
+ array(0 => 105, 1 => 1),
+ array(0 => 105, 1 => 3),
+ array(0 => 105, 1 => 3),
+ array(0 => 105, 1 => 1),
+ array(0 => 105, 1 => 1),
);
public static $yyReduceMap = array(
0 => 0,
1 => 1,
2 => 2,
+ 3 => 3,
4 => 4,
5 => 5,
6 => 6,
7 => 7,
+ 21 => 7,
+ 22 => 7,
+ 23 => 7,
+ 36 => 7,
+ 56 => 7,
+ 57 => 7,
+ 65 => 7,
+ 66 => 7,
+ 70 => 7,
+ 79 => 7,
+ 84 => 7,
+ 85 => 7,
+ 90 => 7,
+ 94 => 7,
+ 95 => 7,
+ 99 => 7,
+ 101 => 7,
+ 106 => 7,
+ 168 => 7,
+ 173 => 7,
8 => 8,
- 16 => 8,
- 17 => 8,
- 43 => 8,
- 63 => 8,
- 64 => 8,
- 72 => 8,
- 73 => 8,
- 77 => 8,
- 86 => 8,
- 91 => 8,
- 92 => 8,
- 97 => 8,
- 101 => 8,
- 102 => 8,
- 106 => 8,
- 108 => 8,
- 113 => 8,
- 175 => 8,
- 180 => 8,
9 => 9,
10 => 10,
- 11 => 11,
12 => 12,
- 15 => 12,
13 => 13,
- 71 => 13,
14 => 14,
- 87 => 14,
- 89 => 14,
- 90 => 14,
- 120 => 14,
+ 15 => 15,
+ 16 => 16,
+ 17 => 17,
18 => 18,
19 => 19,
20 => 20,
- 22 => 20,
- 24 => 20,
- 21 => 21,
- 23 => 21,
- 25 => 21,
+ 24 => 24,
+ 25 => 25,
26 => 26,
- 27 => 26,
+ 27 => 27,
28 => 28,
29 => 29,
30 => 30,
31 => 31,
+ 33 => 31,
32 => 32,
- 33 => 33,
34 => 34,
35 => 35,
- 36 => 36,
37 => 37,
38 => 38,
- 40 => 38,
39 => 39,
+ 40 => 40,
41 => 41,
42 => 42,
+ 43 => 43,
44 => 44,
45 => 45,
46 => 46,
@@ -1488,85 +1342,90 @@ class Smarty_Internal_Templateparser
48 => 48,
49 => 49,
50 => 50,
+ 59 => 50,
+ 148 => 50,
+ 152 => 50,
+ 156 => 50,
+ 157 => 50,
51 => 51,
+ 149 => 51,
+ 155 => 51,
52 => 52,
53 => 53,
- 54 => 54,
+ 54 => 53,
55 => 55,
- 56 => 56,
- 57 => 57,
- 66 => 57,
- 155 => 57,
- 159 => 57,
- 163 => 57,
- 164 => 57,
+ 133 => 55,
58 => 58,
- 156 => 58,
- 162 => 58,
- 59 => 59,
60 => 60,
- 61 => 60,
- 62 => 62,
- 140 => 62,
- 65 => 65,
+ 61 => 61,
+ 62 => 61,
+ 63 => 63,
+ 64 => 64,
67 => 67,
68 => 68,
69 => 68,
- 70 => 70,
+ 71 => 71,
+ 98 => 71,
+ 72 => 72,
+ 73 => 73,
74 => 74,
75 => 75,
- 76 => 75,
+ 76 => 76,
+ 77 => 77,
78 => 78,
- 105 => 78,
- 79 => 79,
80 => 80,
+ 82 => 80,
+ 83 => 80,
+ 113 => 80,
81 => 81,
- 82 => 82,
- 83 => 83,
- 84 => 84,
- 85 => 85,
+ 86 => 86,
+ 87 => 87,
88 => 88,
- 93 => 93,
- 94 => 94,
- 95 => 95,
+ 89 => 89,
+ 91 => 91,
+ 92 => 92,
+ 93 => 92,
96 => 96,
- 98 => 98,
- 99 => 99,
- 100 => 99,
+ 97 => 97,
+ 100 => 100,
+ 102 => 102,
103 => 103,
104 => 104,
+ 105 => 105,
107 => 107,
+ 108 => 108,
109 => 109,
110 => 110,
111 => 111,
112 => 112,
114 => 114,
+ 170 => 114,
115 => 115,
116 => 116,
117 => 117,
118 => 118,
119 => 119,
+ 120 => 120,
+ 128 => 120,
121 => 121,
- 177 => 121,
122 => 122,
123 => 123,
- 124 => 124,
+ 124 => 123,
+ 126 => 123,
+ 127 => 123,
125 => 125,
- 126 => 126,
- 127 => 127,
- 135 => 127,
- 128 => 128,
129 => 129,
130 => 130,
- 131 => 130,
- 133 => 130,
- 134 => 130,
+ 131 => 131,
+ 174 => 131,
132 => 132,
+ 134 => 134,
+ 135 => 135,
136 => 136,
137 => 137,
138 => 138,
- 181 => 138,
139 => 139,
+ 140 => 140,
141 => 141,
142 => 142,
143 => 143,
@@ -1574,40 +1433,33 @@ class Smarty_Internal_Templateparser
145 => 145,
146 => 146,
147 => 147,
- 148 => 148,
- 149 => 149,
150 => 150,
151 => 151,
- 152 => 152,
153 => 153,
154 => 154,
- 157 => 157,
158 => 158,
+ 159 => 159,
160 => 160,
161 => 161,
+ 162 => 162,
+ 163 => 163,
+ 164 => 164,
165 => 165,
166 => 166,
167 => 167,
- 168 => 168,
169 => 169,
- 170 => 170,
171 => 171,
172 => 172,
- 173 => 173,
- 174 => 174,
+ 175 => 175,
176 => 176,
+ 177 => 177,
178 => 178,
- 179 => 179,
+ 179 => 178,
+ 181 => 178,
+ 180 => 180,
182 => 182,
183 => 183,
184 => 184,
- 185 => 185,
- 186 => 185,
- 188 => 185,
- 187 => 187,
- 189 => 189,
- 190 => 190,
- 191 => 191,
);
/**
* result status
@@ -1711,9 +1563,9 @@ class Smarty_Internal_Templateparser
public $yyTokenName = array(
'$', 'VERT', 'COLON', 'UNIMATH',
'PHP', 'TEXT', 'STRIPON', 'STRIPOFF',
- 'LITERALSTART', 'LITERALEND', 'LITERAL', 'RDEL',
- 'SIMPELOUTPUT', 'LDEL', 'DOLLARID', 'EQUAL',
- 'SIMPLETAG', 'ID', 'PTR', 'LDELMAKENOCACHE',
+ 'LITERALSTART', 'LITERALEND', 'LITERAL', 'SIMPELOUTPUT',
+ 'SIMPLETAG', 'LDEL', 'RDEL', 'DOLLARID',
+ 'EQUAL', 'ID', 'PTR', 'LDELMAKENOCACHE',
'LDELIF', 'LDELFOR', 'SEMICOLON', 'INCDEC',
'TO', 'STEP', 'LDELFOREACH', 'SPACE',
'AS', 'APTR', 'LDELSETFILTER', 'CLOSETAG',
@@ -1724,18 +1576,18 @@ class Smarty_Internal_Templateparser
'NAMESPACE', 'AT', 'HATCH', 'OPENB',
'CLOSEB', 'DOLLAR', 'LOGOP', 'SLOGOP',
'TLOGOP', 'SINGLECOND', 'QUOTE', 'BACKTICK',
- 'error', 'start', 'template', 'template_element',
- 'smartytag', 'literal', 'text_content', 'literal_elements',
- 'literal_element', 'tag', 'variable', 'attributes',
- 'value', 'expr', 'varindexed', 'modifierlist',
- 'statement', 'statements', 'foraction', 'varvar',
- 'modparameters', 'attribute', 'ternary', 'array',
- 'tlop', 'lop', 'scond', 'function',
- 'ns1', 'doublequoted_with_quotes', 'static_class_access', 'object',
- 'arrayindex', 'indexdef', 'varvarele', 'objectchain',
- 'objectelement', 'method', 'params', 'modifier',
- 'modparameter', 'arrayelements', 'arrayelement', 'doublequoted',
- 'doublequotedcontent',
+ 'error', 'start', 'template', 'literal_e2',
+ 'literal_e1', 'smartytag', 'tagbody', 'tag',
+ 'outattr', 'eqoutattr', 'varindexed', 'output',
+ 'attributes', 'variable', 'value', 'expr',
+ 'modifierlist', 'statement', 'statements', 'foraction',
+ 'varvar', 'modparameters', 'attribute', 'ternary',
+ 'array', 'tlop', 'lop', 'scond',
+ 'function', 'ns1', 'doublequoted_with_quotes', 'static_class_access',
+ 'object', 'arrayindex', 'indexdef', 'varvarele',
+ 'objectchain', 'objectelement', 'method', 'params',
+ 'modifier', 'modparameter', 'arrayelements', 'arrayelement',
+ 'doublequoted', 'doublequotedcontent',
);
/**
* internal error flag
@@ -1759,10 +1611,6 @@ function __construct(Smarty_Internal_Templatelexer $lex, Smarty_Internal_Templat
$this->security = isset($this->smarty->security_policy) ? $this->smarty->security_policy : false;
$this->current_buffer = $this->root_buffer = new Smarty_Internal_ParseTree_Template();
} /* The parser's stack */
- /**
- * @param $yymajor
- * @param $yypminor
- */
public static function yy_destructor($yymajor, $yypminor)
{
switch ($yymajor) {
@@ -1787,7 +1635,7 @@ public function insertPhpCode($code)
*/
public function errorRunDown()
{
- while ($this->yystack !== Array()) {
+ while ($this->yystack !== array()) {
$this->yy_pop_parser_stack();
}
if (is_resource($this->yyTraceFILE)) {
@@ -1813,10 +1661,6 @@ public function mergePrefixCode($code)
return new Smarty_Internal_ParseTree_Tag($this, $this->compiler->processNocacheCode($tmp, true));
}
- /**
- * @param $TraceFILE
- * @param $zTracePrompt
- */
public function Trace($TraceFILE, $zTracePrompt)
{
if (!$TraceFILE) {
@@ -1834,11 +1678,6 @@ public function PrintTrace()
$this->yyTracePrompt = '
';
}
- /**
- * @param $tokenType
- *
- * @return mixed|string
- */
public function tokenName($tokenType)
{
if ($tokenType === 0) {
@@ -1878,11 +1717,6 @@ public function __destruct()
}
}
- /**
- * @param $token
- *
- * @return array|mixed
- */
public function yy_get_expected_tokens($token)
{
static $res3 = array();
@@ -1906,7 +1740,7 @@ public function yy_get_expected_tokens($token)
// reduce action
$done = 0;
do {
- if ($done++ == 100) {
+ if ($done++ === 100) {
$this->yyidx = $yyidx;
$this->yystack = $stack;
// too much recursion prevents proper detection
@@ -1943,7 +1777,7 @@ public function yy_get_expected_tokens($token)
$x->major = self::$yyRuleInfo[ $yyruleno ][ 0 ];
$this->yystack[ $this->yyidx ] = $x;
continue 2;
- } else if ($nextstate == self::YYNSTATE + self::YYNRULE + 1) {
+ } else if ($nextstate === self::YYNSTATE + self::YYNRULE + 1) {
$this->yyidx = $yyidx;
$this->yystack = $stack;
// the last token was just ignored, we can't accept
@@ -1967,11 +1801,6 @@ public function yy_get_expected_tokens($token)
return array_unique($expected);
}
- /**
- * @param $token
- *
- * @return bool
- */
public function yy_is_expected_token($token)
{
static $res = array();
@@ -1997,7 +1826,7 @@ public function yy_is_expected_token($token)
// reduce action
$done = 0;
do {
- if ($done++ == 100) {
+ if ($done++ === 100) {
$this->yyidx = $yyidx;
$this->yystack = $stack;
// too much recursion prevents proper detection
@@ -2033,7 +1862,7 @@ public function yy_is_expected_token($token)
$x->major = self::$yyRuleInfo[ $yyruleno ][ 0 ];
$this->yystack[ $this->yyidx ] = $x;
continue 2;
- } else if ($nextstate == self::YYNSTATE + self::YYNRULE + 1) {
+ } else if ($nextstate === self::YYNSTATE + self::YYNRULE + 1) {
$this->yyidx = $yyidx;
$this->yystack = $stack;
if (!$token) {
@@ -2061,11 +1890,6 @@ public function yy_is_expected_token($token)
return true;
}
- /**
- * @param $iLookAhead
- *
- * @return int|mixed
- */
public function yy_find_shift_action($iLookAhead)
{
$stateno = $this->yystack[ $this->yyidx ]->stateno;
@@ -2078,7 +1902,7 @@ public function yy_find_shift_action($iLookAhead)
if ($i === self::YY_SHIFT_USE_DFLT) {
return self::$yy_default[ $stateno ];
}
- if ($iLookAhead == self::YYNOCODE) {
+ if ($iLookAhead === self::YYNOCODE) {
return self::YY_NO_ACTION;
}
$i += $iLookAhead;
@@ -2100,12 +1924,6 @@ public function yy_find_shift_action($iLookAhead)
}
}
- /**
- * @param $stateno
- * @param $iLookAhead
- *
- * @return int|mixed
- */
public function yy_find_reduce_action($stateno, $iLookAhead)
{
/* $stateno = $this->yystack[$this->yyidx]->stateno; */
@@ -2113,10 +1931,10 @@ public function yy_find_reduce_action($stateno, $iLookAhead)
return self::$yy_default[ $stateno ];
}
$i = self::$yy_reduce_ofst[ $stateno ];
- if ($i == self::YY_REDUCE_USE_DFLT) {
+ if ($i === self::YY_REDUCE_USE_DFLT) {
return self::$yy_default[ $stateno ];
}
- if ($iLookAhead == self::YYNOCODE) {
+ if ($iLookAhead === self::YYNOCODE) {
return self::YY_NO_ACTION;
}
$i += $iLookAhead;
@@ -2129,14 +1947,6 @@ public function yy_find_reduce_action($stateno, $iLookAhead)
}
#line 234 "../smarty/lexer/smarty_internal_templateparser.y"
-
- /**
- * @param $yyNewState
- * @param $yyMajor
- * @param $yypMinor
- *
- * @throws \SmartyCompilerException
- */
public function yy_shift($yyNewState, $yyMajor, $yypMinor)
{
$this->yyidx++;
@@ -2173,7 +1983,7 @@ public function yy_shift($yyNewState, $yyMajor, $yypMinor)
}
}
- #line 244 "../smarty/lexer/smarty_internal_templateparser.y"
+ #line 242 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r0()
{
$this->root_buffer->prepend_array($this, $this->template_prefix);
@@ -2183,41 +1993,6 @@ function yy_r0()
#line 251 "../smarty/lexer/smarty_internal_templateparser.y"
function yy_r1()
- {
- if ($this->yystack[ $this->yyidx + 0 ]->minor != null) {
- $this->current_buffer->append_subtree($this, $this->yystack[ $this->yyidx + 0 ]->minor);
- }
- }
-
- #line 265 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r2()
- {
- if ($this->yystack[ $this->yyidx + 0 ]->minor != null) {
- // because of possible code injection
- $this->current_buffer->append_subtree($this, $this->yystack[ $this->yyidx + 0 ]->minor);
- }
- }
-
- #line 276 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r4()
- {
- if ($this->compiler->has_code) {
- $this->_retvalue = $this->mergePrefixCode($this->yystack[ $this->yyidx + 0 ]->minor);
- } else {
- $this->_retvalue = null;
- }
- $this->compiler->has_variable_string = false;
- $this->block_nesting_level = count($this->compiler->_tag_stack);
- }
-
- #line 280 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r5()
- {
- $this->_retvalue = new Smarty_Internal_ParseTree_Text($this->yystack[ $this->yyidx + 0 ]->minor);
- }
-
- #line 291 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r6()
{
$code = $this->compiler->compileTag('private_php',
array(array('code' => $this->yystack[ $this->yyidx + 0 ]->minor),
@@ -2229,69 +2004,78 @@ function yy_r6()
$tmp .= $code;
}
$this->compiler->prefix_code = array();
- $this->_retvalue =
- new Smarty_Internal_ParseTree_Tag($this, $this->compiler->processNocacheCode($tmp . $code, true));
- } else {
- $this->_retvalue = null;
+ $this->current_buffer->append_subtree($this,
+ new Smarty_Internal_ParseTree_Tag($this,
+ $this->compiler->processNocacheCode($tmp .
+ $code,
+ true)));
}
}
- #line 295 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r7()
+ #line 255 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r2()
{
- $this->_retvalue = $this->compiler->processText($this->yystack[ $this->yyidx + 0 ]->minor);
+ $this->current_buffer->append_subtree($this,
+ $this->compiler->processText($this->yystack[ $this->yyidx + 0 ]->minor));
}
- #line 299 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r8()
+ #line 259 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r3()
{
- $this->_retvalue = $this->yystack[ $this->yyidx + 0 ]->minor;
+ $this->strip = true;
}
- #line 304 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r9()
+ #line 264 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r4()
{
- $this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor;
+ $this->strip = false;
}
- #line 308 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r10()
+ #line 269 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r5()
{
- $this->strip = true;
+ $this->current_buffer->append_subtree($this,
+ new Smarty_Internal_ParseTree_Text($this->yystack[ $this->yyidx +
+ -1 ]->minor));
}
- #line 313 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r11()
+ #line 272 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r6()
{
- $this->strip = false;
+ $this->_retvalue = $this->yystack[ $this->yyidx + -3 ]->minor . $this->yystack[ $this->yyidx + -1 ]->minor;
}
- #line 317 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r12()
+ #line 276 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r7()
{
- $this->_retvalue = '';
+ $this->_retvalue = $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 321 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r13()
+ #line 281 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r8()
{
- $this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor;
+ $this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 337 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r14()
+ #line 285 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r9()
{
- $this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor;
+ $this->_retvalue = '';
}
- #line 343 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r18()
+ #line 297 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r10()
{
- $this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor;
+ if ($this->compiler->has_code) {
+ $this->current_buffer->append_subtree($this,
+ $this->mergePrefixCode($this->yystack[ $this->yyidx + 0 ]->minor));
+ }
+ $this->compiler->has_variable_string = false;
+ $this->block_nesting_level = count($this->compiler->_tag_stack);
}
- #line 353 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r19()
+ #line 307 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r12()
{
$var = trim(substr($this->yystack[ $this->yyidx + 0 ]->minor,
$this->compiler->getLdelLength(),
@@ -2312,87 +2096,93 @@ function yy_r19()
}
}
- #line 357 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r20()
+ #line 327 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r13()
+ {
+ $tag = trim(substr($this->yystack[ $this->yyidx + 0 ]->minor,
+ $this->compiler->getLdelLength(),
+ -$this->compiler->getRdelLength()));
+ if ($tag == 'strip') {
+ $this->strip = true;
+ $this->_retvalue = null;;
+ } else {
+ if (defined($tag)) {
+ if ($this->security) {
+ $this->security->isTrustedConstant($tag, $this->compiler);
+ }
+ $this->_retvalue =
+ $this->compiler->compileTag('private_print_expression', array(), array('value' => $tag));
+ } else {
+ if (preg_match('/^(.*)(\s+nocache)$/', $tag, $match)) {
+ $this->_retvalue = $this->compiler->compileTag($match[ 1 ], array("'nocache'"));
+ } else {
+ $this->_retvalue = $this->compiler->compileTag($tag, array());
+ }
+ }
+ }
+ }
+
+ #line 331 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r14()
{
- $this->_retvalue = $this->compiler->compileTag('private_print_expression',
- array(),
- array('value' => $this->yystack[ $this->yyidx + 0 ]->minor));
+ $this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor;
}
- #line 380 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r21()
+ #line 335 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r15()
{
- $this->_retvalue = $this->compiler->compileTag('private_print_expression',
- $this->yystack[ $this->yyidx + 0 ]->minor,
- array('value' => $this->yystack[ $this->yyidx + -1 ]->minor));
+ $this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor;
}
- #line 388 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r26()
+ #line 344 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r16()
{
- $this->_retvalue = $this->compiler->compileTag('assign',
- array(array('value' => $this->yystack[ $this->yyidx +
- 0 ]->minor),
- array('var' => '\'' . substr($this->yystack[ $this->yyidx +
- -2 ]->minor,
- 1) . '\'')));
+ $this->_retvalue = $this->compiler->compileTag('private_print_expression',
+ $this->yystack[ $this->yyidx + 0 ]->minor[ 1 ],
+ array('value' => $this->yystack[ $this->yyidx +
+ 0 ]->minor[ 0 ]));
}
- #line 392 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r28()
+ #line 348 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r17()
{
$this->_retvalue = $this->compiler->compileTag('assign',
array_merge(array(array('value' => $this->yystack[ $this->yyidx +
- -1 ]->minor),
+ 0 ]->minor[ 0 ]),
array('var' => '\'' .
substr($this->yystack[ $this->yyidx +
- -3 ]->minor,
+ -1 ]->minor,
1) . '\'')),
- $this->yystack[ $this->yyidx + 0 ]->minor));
+ $this->yystack[ $this->yyidx + 0 ]->minor[ 1 ]));
}
- #line 397 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r29()
+ #line 352 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r18()
{
$this->_retvalue = $this->compiler->compileTag('assign',
array_merge(array(array('value' => $this->yystack[ $this->yyidx +
- -1 ]->minor),
+ 0 ]->minor[ 0 ]),
array('var' => $this->yystack[ $this->yyidx +
- -3 ]->minor[ 'var' ])),
- $this->yystack[ $this->yyidx + 0 ]->minor),
+ -1 ]->minor[ 'var' ])),
+ $this->yystack[ $this->yyidx + 0 ]->minor[ 1 ]),
array('smarty_internal_index' => $this->yystack[ $this->yyidx +
- -3 ]->minor[ 'smarty_internal_index' ]));
+ -1 ]->minor[ 'smarty_internal_index' ]));
}
- #line 419 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r30()
+ #line 356 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r19()
{
- $tag = trim(substr($this->yystack[ $this->yyidx + 0 ]->minor,
- $this->compiler->getLdelLength(),
- -$this->compiler->getRdelLength()));
- if ($tag === 'strip') {
- $this->strip = true;
- $this->_retvalue = null;;
- } else {
- if (defined($tag)) {
- if ($this->security) {
- $this->security->isTrustedConstant($tag, $this->compiler);
- }
- $this->_retvalue =
- $this->compiler->compileTag('private_print_expression', array(), array('value' => $tag));
- } else {
- if (preg_match('/^(.*)(\s+nocache)$/', $tag, $match)) {
- $this->_retvalue = $this->compiler->compileTag($match[ 1 ], array("'nocache'"));
- } else {
- $this->_retvalue = $this->compiler->compileTag($tag, array());
- }
- }
- }
+ $this->_retvalue = $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 429 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r31()
+ #line 371 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r20()
+ {
+ $this->_retvalue = array($this->yystack[ $this->yyidx + -1 ]->minor, $this->yystack[ $this->yyidx + 0 ]->minor);
+ }
+
+ #line 381 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r24()
{
if (defined($this->yystack[ $this->yyidx + -1 ]->minor)) {
if ($this->security) {
@@ -2408,8 +2198,8 @@ function yy_r31()
}
}
- #line 442 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r32()
+ #line 394 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r25()
{
if (defined($this->yystack[ $this->yyidx + 0 ]->minor)) {
if ($this->security) {
@@ -2423,8 +2213,8 @@ function yy_r32()
}
}
- #line 454 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r33()
+ #line 406 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r26()
{
if (defined($this->yystack[ $this->yyidx + -2 ]->minor)) {
if ($this->security) {
@@ -2444,8 +2234,8 @@ function yy_r33()
}
}
- #line 459 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r34()
+ #line 411 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r27()
{
$this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + -3 ]->minor,
$this->yystack[ $this->yyidx + 0 ]->minor,
@@ -2453,8 +2243,8 @@ function yy_r34()
-1 ]->minor));
}
- #line 464 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r35()
+ #line 416 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r28()
{
$this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + -4 ]->minor,
$this->yystack[ $this->yyidx + 0 ]->minor,
@@ -2464,8 +2254,8 @@ function yy_r35()
-2 ]->minor));
}
- #line 469 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r36()
+ #line 421 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r29()
{
$this->_retvalue = $this->compiler->compileTag('make_nocache',
array(array('var' => '\'' . substr($this->yystack[ $this->yyidx +
@@ -2473,8 +2263,8 @@ function yy_r36()
1) . '\'')));
}
- #line 474 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r37()
+ #line 426 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r30()
{
$tag = trim(substr($this->yystack[ $this->yyidx + -1 ]->minor, $this->compiler->getLdelLength()));
$this->_retvalue = $this->compiler->compileTag(($tag === 'else if') ? 'elseif' : $tag,
@@ -2483,8 +2273,8 @@ function yy_r37()
0 ]->minor));
}
- #line 479 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r38()
+ #line 431 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r31()
{
$tag = trim(substr($this->yystack[ $this->yyidx + -2 ]->minor, $this->compiler->getLdelLength()));
$this->_retvalue = $this->compiler->compileTag(($tag === 'else if') ? 'elseif' : $tag,
@@ -2493,8 +2283,8 @@ function yy_r38()
-1 ]->minor));
}
- #line 490 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r39()
+ #line 442 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r32()
{
$tag = trim(substr($this->yystack[ $this->yyidx + -1 ]->minor, $this->compiler->getLdelLength()));
$this->_retvalue = $this->compiler->compileTag(($tag === 'else if') ? 'elseif' : $tag,
@@ -2503,8 +2293,8 @@ function yy_r39()
0 ]->minor));
}
- #line 494 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r41()
+ #line 446 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r34()
{
$this->_retvalue = $this->compiler->compileTag('for',
array_merge($this->yystack[ $this->yyidx + 0 ]->minor,
@@ -2519,14 +2309,14 @@ function yy_r41()
1);
}
- #line 502 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r42()
+ #line 454 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r35()
{
$this->_retvalue = '=' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 506 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r44()
+ #line 458 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r37()
{
$this->_retvalue = $this->compiler->compileTag('for',
array_merge($this->yystack[ $this->yyidx + 0 ]->minor,
@@ -2537,8 +2327,8 @@ function yy_r44()
0);
}
- #line 511 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r45()
+ #line 463 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r38()
{
$this->_retvalue = $this->compiler->compileTag('for',
array_merge($this->yystack[ $this->yyidx + 0 ]->minor,
@@ -2551,8 +2341,8 @@ function yy_r45()
0);
}
- #line 515 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r46()
+ #line 467 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r39()
{
$this->_retvalue = $this->compiler->compileTag('foreach',
array_merge($this->yystack[ $this->yyidx + 0 ]->minor,
@@ -2562,8 +2352,8 @@ function yy_r46()
-1 ]->minor))));
}
- #line 518 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r47()
+ #line 470 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r40()
{
$this->_retvalue = $this->compiler->compileTag('foreach',
array_merge($this->yystack[ $this->yyidx + 0 ]->minor,
@@ -2575,14 +2365,14 @@ function yy_r47()
-3 ]->minor))));
}
- #line 523 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r48()
+ #line 475 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r41()
{
$this->_retvalue = $this->compiler->compileTag('foreach', $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 527 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r49()
+ #line 479 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r42()
{
$this->_retvalue = $this->compiler->compileTag('setfilter',
array(),
@@ -2592,8 +2382,8 @@ function yy_r49()
0 ]->minor))));
}
- #line 533 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r50()
+ #line 485 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r43()
{
$this->_retvalue = $this->compiler->compileTag('setfilter',
array(),
@@ -2605,8 +2395,8 @@ function yy_r50()
0 ]->minor)));
}
- #line 542 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r51()
+ #line 494 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r44()
{
$tag = trim(substr($this->yystack[ $this->yyidx + 0 ]->minor,
$this->compiler->getLdelLength(),
@@ -2620,14 +2410,14 @@ function yy_r51()
}
}
- #line 546 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r52()
+ #line 498 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r45()
{
$this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + 0 ]->minor . 'close', array());
}
- #line 551 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r53()
+ #line 503 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r46()
{
$this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + -1 ]->minor . 'close',
array(),
@@ -2635,8 +2425,8 @@ function yy_r53()
0 ]->minor));
}
- #line 555 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r54()
+ #line 507 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r47()
{
$this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + -2 ]->minor . 'close',
array(),
@@ -2644,8 +2434,8 @@ function yy_r54()
0 ]->minor));
}
- #line 563 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r55()
+ #line 515 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r48()
{
$this->_retvalue = $this->compiler->compileTag($this->yystack[ $this->yyidx + -3 ]->minor . 'close',
array(),
@@ -2655,27 +2445,27 @@ function yy_r55()
0 ]->minor));
}
- #line 569 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r56()
+ #line 521 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r49()
{
$this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor;
$this->_retvalue[] = $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 574 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r57()
+ #line 526 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r50()
{
$this->_retvalue = array($this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 579 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r58()
+ #line 531 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r51()
{
$this->_retvalue = array();
}
- #line 590 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r59()
+ #line 542 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r52()
{
if (defined($this->yystack[ $this->yyidx + 0 ]->minor)) {
if ($this->security) {
@@ -2690,66 +2480,72 @@ function yy_r59()
}
}
- #line 598 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r60()
+ #line 550 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r53()
{
$this->_retvalue =
array(trim($this->yystack[ $this->yyidx + -1 ]->minor, " =\n\r\t") => $this->yystack[ $this->yyidx +
0 ]->minor);
}
- #line 610 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r62()
+ #line 562 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r55()
{
$this->_retvalue = '\'' . $this->yystack[ $this->yyidx + 0 ]->minor . '\'';
}
- #line 623 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r65()
+ #line 575 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r58()
{
$this->_retvalue =
array($this->yystack[ $this->yyidx + -2 ]->minor => $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 628 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r67()
+ #line 580 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r60()
{
$this->yystack[ $this->yyidx + -2 ]->minor[] = $this->yystack[ $this->yyidx + 0 ]->minor;
$this->_retvalue = $this->yystack[ $this->yyidx + -2 ]->minor;
}
- #line 635 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r68()
+ #line 587 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r61()
{
$this->_retvalue = array('var' => '\'' . substr($this->yystack[ $this->yyidx + -2 ]->minor, 1) . '\'',
'value' => $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 659 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r70()
+ #line 591 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r63()
{
$this->_retvalue = array('var' => $this->yystack[ $this->yyidx + -2 ]->minor,
'value' => $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 664 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r74()
+ #line 611 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r64()
+ {
+ $this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor;
+ }
+
+ #line 616 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r67()
{
$this->_retvalue =
'$_smarty_tpl->getStreamVariable(\'' . substr($this->yystack[ $this->yyidx + -2 ]->minor, 1) . '://' .
$this->yystack[ $this->yyidx + 0 ]->minor . '\')';
}
- #line 678 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r75()
+ #line 630 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r68()
{
$this->_retvalue =
$this->yystack[ $this->yyidx + -2 ]->minor . trim($this->yystack[ $this->yyidx + -1 ]->minor) .
$this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 684 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r78()
+ #line 636 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r71()
{
$this->_retvalue = $this->compiler->compileTag('private_modifier',
array(),
@@ -2759,44 +2555,44 @@ function yy_r78()
0 ]->minor));
}
- #line 688 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r79()
+ #line 640 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r72()
{
$this->_retvalue =
$this->yystack[ $this->yyidx + -1 ]->minor[ 'pre' ] . $this->yystack[ $this->yyidx + -2 ]->minor .
$this->yystack[ $this->yyidx + -1 ]->minor[ 'op' ] . $this->yystack[ $this->yyidx + 0 ]->minor . ')';
}
- #line 692 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r80()
+ #line 644 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r73()
{
$this->_retvalue = $this->yystack[ $this->yyidx + -2 ]->minor . $this->yystack[ $this->yyidx + -1 ]->minor .
$this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 696 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r81()
+ #line 648 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r74()
{
$this->_retvalue = $this->yystack[ $this->yyidx + 0 ]->minor . $this->yystack[ $this->yyidx + -1 ]->minor . ')';
}
- #line 700 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r82()
+ #line 652 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r75()
{
$this->_retvalue =
'in_array(' . $this->yystack[ $this->yyidx + -2 ]->minor . ',' . $this->yystack[ $this->yyidx + 0 ]->minor .
')';
}
- #line 708 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r83()
+ #line 660 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r76()
{
$this->_retvalue = 'in_array(' . $this->yystack[ $this->yyidx + -2 ]->minor . ',(array)' .
$this->yystack[ $this->yyidx + 0 ]->minor . ')';
}
- #line 712 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r84()
+ #line 664 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r77()
{
$this->_retvalue = $this->yystack[ $this->yyidx + -5 ]->minor . ' ? ' . $this->compiler->compileVariable('\'' .
substr($this->yystack[ $this->yyidx +
@@ -2806,40 +2602,46 @@ function yy_r84()
' : ' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 727 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r85()
+ #line 674 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r78()
{
$this->_retvalue =
$this->yystack[ $this->yyidx + -5 ]->minor . ' ? ' . $this->yystack[ $this->yyidx + -2 ]->minor . ' : ' .
$this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 748 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r88()
+ #line 679 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r80()
+ {
+ $this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor;
+ }
+
+ #line 700 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r81()
{
$this->_retvalue = '!' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 752 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r93()
+ #line 704 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r86()
{
$this->_retvalue = $this->yystack[ $this->yyidx + -2 ]->minor . '.' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 756 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r94()
+ #line 708 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r87()
{
$this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor . '.';
}
- #line 761 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r95()
+ #line 713 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r88()
{
$this->_retvalue = '.' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 778 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r96()
+ #line 730 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r89()
{
if (defined($this->yystack[ $this->yyidx + 0 ]->minor)) {
if ($this->security) {
@@ -2851,32 +2653,32 @@ function yy_r96()
}
}
- #line 782 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r98()
+ #line 734 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r91()
{
- $this->_retvalue = "(" . $this->yystack[ $this->yyidx + -1 ]->minor . ")";
+ $this->_retvalue = '(' . $this->yystack[ $this->yyidx + -1 ]->minor . ')';
}
- #line 800 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r99()
+ #line 752 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r92()
{
$this->_retvalue = $this->yystack[ $this->yyidx + -2 ]->minor . $this->yystack[ $this->yyidx + -1 ]->minor .
$this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 811 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r103()
+ #line 763 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r96()
{
$prefixVar = $this->compiler->getNewPrefixVariable();
if ($this->yystack[ $this->yyidx + -2 ]->minor[ 'var' ] === '\'smarty\'') {
- $this->compiler->appendPrefixCode("compiler->appendPrefixCode("compiler->compileTag('private_special_variable',
array(),
$this->yystack[ $this->yyidx +
-2 ]->minor[ 'smarty_internal_index' ]) .
';?>');
} else {
- $this->compiler->appendPrefixCode("compiler->appendPrefixCode("compiler->compileVariable($this->yystack[ $this->yyidx +
-2 ]->minor[ 'var' ]) .
$this->yystack[ $this->yyidx + -2 ]->minor[ 'smarty_internal_index' ] .
@@ -2886,17 +2688,17 @@ function yy_r103()
$this->yystack[ $this->yyidx + 0 ]->minor[ 1 ];
}
- #line 828 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r104()
+ #line 780 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r97()
{
$prefixVar = $this->compiler->getNewPrefixVariable();
$tmp = $this->compiler->appendCode('', $this->yystack[ $this->yyidx + 0 ]->minor);
- $this->compiler->appendPrefixCode($this->compiler->appendCode($tmp, "'));
+ $this->compiler->appendPrefixCode($this->compiler->appendCode($tmp, ""));
$this->_retvalue = $prefixVar;
}
- #line 847 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r107()
+ #line 799 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r100()
{
if (!in_array(strtolower($this->yystack[ $this->yyidx + -2 ]->minor), array('self', 'parent')) &&
(!$this->security || $this->security->isTrustedStaticClassAccess($this->yystack[ $this->yyidx + -2 ]->minor,
@@ -2917,21 +2719,21 @@ function yy_r107()
}
}
- #line 858 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r109()
+ #line 810 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r102()
{
$this->_retvalue = $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 861 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r110()
+ #line 813 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r103()
{
$this->_retvalue =
$this->compiler->compileVariable('\'' . substr($this->yystack[ $this->yyidx + 0 ]->minor, 1) . '\'');
}
- #line 874 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r111()
+ #line 826 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r104()
{
if ($this->yystack[ $this->yyidx + 0 ]->minor[ 'var' ] === '\'smarty\'') {
$smarty_var = $this->compiler->compileTag('private_special_variable',
@@ -2948,45 +2750,45 @@ function yy_r111()
}
}
- #line 884 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r112()
+ #line 836 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r105()
{
$this->_retvalue = '$_smarty_tpl->tpl_vars[' . $this->yystack[ $this->yyidx + -2 ]->minor . ']->' .
$this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 888 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r114()
+ #line 840 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r107()
{
$this->_retvalue =
- $this->compiler->compileConfigVariable("'" . $this->yystack[ $this->yyidx + -1 ]->minor . "'");
+ $this->compiler->compileConfigVariable('\'' . $this->yystack[ $this->yyidx + -1 ]->minor . '\'');
}
- #line 892 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r115()
+ #line 844 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r108()
{
$this->_retvalue = '(is_array($tmp = ' .
- $this->compiler->compileConfigVariable("'" . $this->yystack[ $this->yyidx + -2 ]->minor .
- "'") . ') ? $tmp' .
+ $this->compiler->compileConfigVariable('\'' . $this->yystack[ $this->yyidx + -2 ]->minor .
+ '\'') . ') ? $tmp' .
$this->yystack[ $this->yyidx + 0 ]->minor . ' :null)';
}
- #line 896 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r116()
+ #line 848 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r109()
{
$this->_retvalue = $this->compiler->compileConfigVariable($this->yystack[ $this->yyidx + -1 ]->minor);
}
- #line 900 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r117()
+ #line 852 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r110()
{
$this->_retvalue =
'(is_array($tmp = ' . $this->compiler->compileConfigVariable($this->yystack[ $this->yyidx + -2 ]->minor) .
') ? $tmp' . $this->yystack[ $this->yyidx + 0 ]->minor . ' : null)';
}
- #line 903 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r118()
+ #line 855 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r111()
{
$this->_retvalue = array('var' => '\'' .
substr($this->yystack[ $this->yyidx + -1 ]->minor, 1) .
@@ -2994,60 +2796,60 @@ function yy_r118()
'smarty_internal_index' => $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 916 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r119()
+ #line 868 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r112()
{
$this->_retvalue = array('var' => $this->yystack[ $this->yyidx + -1 ]->minor,
'smarty_internal_index' => $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 922 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r121()
+ #line 874 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r114()
{
return;
}
- #line 925 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r122()
+ #line 877 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r115()
{
$this->_retvalue =
'[' . $this->compiler->compileVariable('\'' . substr($this->yystack[ $this->yyidx + 0 ]->minor, 1) . '\'') .
']';
}
- #line 929 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r123()
+ #line 881 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r116()
{
$this->_retvalue = '[' . $this->compiler->compileVariable($this->yystack[ $this->yyidx + 0 ]->minor) . ']';
}
- #line 933 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r124()
+ #line 885 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r117()
{
$this->_retvalue = '[' . $this->compiler->compileVariable($this->yystack[ $this->yyidx + -2 ]->minor) . '->' .
$this->yystack[ $this->yyidx + 0 ]->minor . ']';
}
- #line 937 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r125()
+ #line 889 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r118()
{
- $this->_retvalue = "['" . $this->yystack[ $this->yyidx + 0 ]->minor . "']";
+ $this->_retvalue = '[\'' . $this->yystack[ $this->yyidx + 0 ]->minor . '\']';
}
- #line 942 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r126()
+ #line 894 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r119()
{
$this->_retvalue = '[' . $this->yystack[ $this->yyidx + 0 ]->minor . ']';
}
- #line 947 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r127()
+ #line 899 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r120()
{
$this->_retvalue = '[' . $this->yystack[ $this->yyidx + -1 ]->minor . ']';
}
- #line 951 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r128()
+ #line 903 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r121()
{
$this->_retvalue = '[' . $this->compiler->compileTag('private_special_variable',
array(),
@@ -3056,8 +2858,8 @@ function yy_r128()
'\'][\'index\']') . ']';
}
- #line 954 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r129()
+ #line 906 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r122()
{
$this->_retvalue = '[' . $this->compiler->compileTag('private_special_variable',
array(),
@@ -3066,46 +2868,46 @@ function yy_r129()
$this->yystack[ $this->yyidx + -1 ]->minor . '\']') . ']';
}
- #line 960 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r130()
+ #line 912 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r123()
{
$this->_retvalue = '[' . $this->yystack[ $this->yyidx + -1 ]->minor . ']';
}
- #line 976 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r132()
+ #line 928 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r125()
{
$this->_retvalue = '[' . $this->compiler->compileVariable('\'' .
substr($this->yystack[ $this->yyidx + -1 ]->minor,
1) . '\'') . ']';;
}
- #line 986 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r136()
+ #line 938 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r129()
{
$this->_retvalue = '[]';
}
- #line 990 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r137()
+ #line 942 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r130()
{
$this->_retvalue = '\'' . substr($this->yystack[ $this->yyidx + 0 ]->minor, 1) . '\'';
}
- #line 995 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r138()
+ #line 947 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r131()
{
- $this->_retvalue = "''";
+ $this->_retvalue = '\'\'';
}
- #line 1003 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r139()
+ #line 955 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r132()
{
$this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor . '.' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1009 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r141()
+ #line 961 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r134()
{
$var = trim(substr($this->yystack[ $this->yyidx + 0 ]->minor,
$this->compiler->getLdelLength(),
@@ -3114,14 +2916,14 @@ function yy_r141()
$this->_retvalue = $this->compiler->compileVariable('\'' . $var . '\'');
}
- #line 1016 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r142()
+ #line 968 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r135()
{
$this->_retvalue = '(' . $this->yystack[ $this->yyidx + -1 ]->minor . ')';
}
- #line 1025 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r143()
+ #line 977 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r136()
{
if ($this->yystack[ $this->yyidx + -1 ]->minor[ 'var' ] === '\'smarty\'') {
$this->_retvalue = $this->compiler->compileTag('private_special_variable',
@@ -3136,20 +2938,20 @@ function yy_r143()
}
}
- #line 1030 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r144()
+ #line 982 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r137()
{
$this->_retvalue = $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1035 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r145()
+ #line 987 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r138()
{
$this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1042 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r146()
+ #line 994 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r139()
{
if ($this->security && substr($this->yystack[ $this->yyidx + -1 ]->minor, 0, 1) === '_') {
$this->compiler->trigger_template_error(self::Err1);
@@ -3158,8 +2960,8 @@ function yy_r146()
'->' . $this->yystack[ $this->yyidx + -1 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1049 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r147()
+ #line 1001 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r140()
{
if ($this->security) {
$this->compiler->trigger_template_error(self::Err2);
@@ -3168,8 +2970,8 @@ function yy_r147()
$this->yystack[ $this->yyidx + 0 ]->minor . '}';
}
- #line 1056 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r148()
+ #line 1008 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r141()
{
if ($this->security) {
$this->compiler->trigger_template_error(self::Err2);
@@ -3178,8 +2980,8 @@ function yy_r148()
'->{' . $this->yystack[ $this->yyidx + -2 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor . '}';
}
- #line 1064 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r149()
+ #line 1016 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r142()
{
if ($this->security) {
$this->compiler->trigger_template_error(self::Err2);
@@ -3189,121 +2991,121 @@ function yy_r149()
$this->yystack[ $this->yyidx + 0 ]->minor . '}';
}
- #line 1072 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r150()
+ #line 1024 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r143()
{
$this->_retvalue = '->' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1080 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r151()
+ #line 1032 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r144()
{
$this->_retvalue = $this->compiler->compilePHPFunctionCall($this->yystack[ $this->yyidx + -3 ]->minor,
$this->yystack[ $this->yyidx + -1 ]->minor);
}
- #line 1087 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r152()
+ #line 1039 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r145()
{
if ($this->security && substr($this->yystack[ $this->yyidx + -3 ]->minor, 0, 1) === '_') {
$this->compiler->trigger_template_error(self::Err1);
}
- $this->_retvalue = $this->yystack[ $this->yyidx + -3 ]->minor . "(" .
- implode(',', $this->yystack[ $this->yyidx + -1 ]->minor) . ")";
+ $this->_retvalue = $this->yystack[ $this->yyidx + -3 ]->minor . '(' .
+ implode(',', $this->yystack[ $this->yyidx + -1 ]->minor) . ')';
}
- #line 1098 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r153()
+ #line 1050 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r146()
{
if ($this->security) {
$this->compiler->trigger_template_error(self::Err2);
}
$prefixVar = $this->compiler->getNewPrefixVariable();
- $this->compiler->appendPrefixCode("compiler->compileVariable('\'' .
- substr($this->yystack[ $this->yyidx +
- -3 ]->minor,
- 1) .
- '\'') . ';?>');
+ $this->compiler->appendPrefixCode("compiler->compileVariable('\'' .
+ substr($this->yystack[ $this->yyidx +
+ -3 ]->minor,
+ 1) . '\'') .
+ ';?>');
$this->_retvalue = $prefixVar . '(' . implode(',', $this->yystack[ $this->yyidx + -1 ]->minor) . ')';
}
- #line 1115 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r154()
+ #line 1067 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r147()
{
$this->_retvalue =
array_merge($this->yystack[ $this->yyidx + -2 ]->minor, array($this->yystack[ $this->yyidx + 0 ]->minor));
}
- #line 1119 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r157()
+ #line 1071 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r150()
{
$this->_retvalue = array_merge($this->yystack[ $this->yyidx + -2 ]->minor,
array(array_merge($this->yystack[ $this->yyidx + -1 ]->minor,
$this->yystack[ $this->yyidx + 0 ]->minor)));
}
- #line 1127 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r158()
+ #line 1079 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r151()
{
$this->_retvalue =
array(array_merge($this->yystack[ $this->yyidx + -1 ]->minor, $this->yystack[ $this->yyidx + 0 ]->minor));
}
- #line 1135 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r160()
+ #line 1087 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r153()
{
$this->_retvalue = array($this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 1154 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r161()
+ #line 1106 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r154()
{
$this->_retvalue =
array_merge($this->yystack[ $this->yyidx + -1 ]->minor, $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 1159 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r165()
+ #line 1111 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r158()
{
$this->_retvalue = array($this->yystack[ $this->yyidx + 0 ]->minor, '', 'method');
}
- #line 1164 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r166()
+ #line 1116 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r159()
{
$this->_retvalue =
array($this->yystack[ $this->yyidx + -1 ]->minor, $this->yystack[ $this->yyidx + 0 ]->minor, 'method');
}
- #line 1169 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r167()
+ #line 1121 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r160()
{
$this->_retvalue = array($this->yystack[ $this->yyidx + 0 ]->minor, '');
}
- #line 1174 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r168()
+ #line 1126 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r161()
{
$this->_retvalue =
array($this->yystack[ $this->yyidx + -1 ]->minor, $this->yystack[ $this->yyidx + 0 ]->minor, 'property');
}
- #line 1180 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r169()
+ #line 1132 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r162()
{
$this->_retvalue = array($this->yystack[ $this->yyidx + -2 ]->minor,
$this->yystack[ $this->yyidx + -1 ]->minor . $this->yystack[ $this->yyidx + 0 ]->minor,
'property');
}
- #line 1184 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r170()
+ #line 1136 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r163()
{
$this->_retvalue = ' ' . trim($this->yystack[ $this->yyidx + 0 ]->minor) . ' ';
}
- #line 1203 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r171()
+ #line 1155 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r164()
{
static $lops = array(
'eq' => ' == ',
@@ -3324,8 +3126,8 @@ function yy_r171()
$this->_retvalue = $lops[ $op ];
}
- #line 1216 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r172()
+ #line 1168 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r165()
{
static $tlops = array(
'isdivby' => array('op' => ' % ', 'pre' => '!('),
@@ -3339,8 +3141,8 @@ function yy_r172()
$this->_retvalue = $tlops[ $op ];
}
- #line 1230 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r173()
+ #line 1182 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r166()
{
static $scond = array(
'iseven' => '!(1 & ',
@@ -3352,89 +3154,84 @@ function yy_r173()
$this->_retvalue = $scond[ $op ];
}
- #line 1238 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r174()
+ #line 1190 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r167()
{
$this->_retvalue = 'array(' . $this->yystack[ $this->yyidx + -1 ]->minor . ')';
}
- #line 1246 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r176()
+ #line 1198 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r169()
{
$this->_retvalue = $this->yystack[ $this->yyidx + -2 ]->minor . ',' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1250 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r178()
+ #line 1202 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r171()
{
$this->_retvalue =
$this->yystack[ $this->yyidx + -2 ]->minor . '=>' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1266 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r179()
+ #line 1218 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r172()
{
$this->_retvalue =
'\'' . $this->yystack[ $this->yyidx + -2 ]->minor . '\'=>' . $this->yystack[ $this->yyidx + 0 ]->minor;
}
- #line 1272 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r182()
+ #line 1224 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r175()
{
$this->compiler->leaveDoubleQuote();
$this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor->to_smarty_php($this);
}
- #line 1277 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r183()
+ #line 1229 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r176()
{
$this->yystack[ $this->yyidx + -1 ]->minor->append_subtree($this, $this->yystack[ $this->yyidx + 0 ]->minor);
$this->_retvalue = $this->yystack[ $this->yyidx + -1 ]->minor;
}
- #line 1281 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r184()
+ #line 1233 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r177()
{
$this->_retvalue = new Smarty_Internal_ParseTree_Dq($this, $this->yystack[ $this->yyidx + 0 ]->minor);
}
- #line 1289 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r185()
+ #line 1241 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r178()
{
$this->_retvalue = new Smarty_Internal_ParseTree_Code('(string)' . $this->yystack[ $this->yyidx + -1 ]->minor);
}
- #line 1297 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r187()
+ #line 1249 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r180()
{
$this->_retvalue = new Smarty_Internal_ParseTree_Code('(string)$_smarty_tpl->tpl_vars[\'' .
substr($this->yystack[ $this->yyidx + 0 ]->minor, 1) .
'\']->value');
}
- #line 1301 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r189()
+ #line 1253 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r182()
{
$this->_retvalue =
new Smarty_Internal_ParseTree_Code('(string)(' . $this->yystack[ $this->yyidx + -1 ]->minor . ')');
}
- #line 1305 "../smarty/lexer/smarty_internal_templateparser.y"
- function yy_r190()
+ #line 1257 "../smarty/lexer/smarty_internal_templateparser.y"
+ function yy_r183()
{
$this->_retvalue = new Smarty_Internal_ParseTree_Tag($this, $this->yystack[ $this->yyidx + 0 ]->minor);
}
- function yy_r191()
+ function yy_r184()
{
$this->_retvalue = new Smarty_Internal_ParseTree_DqContent($this->yystack[ $this->yyidx + 0 ]->minor);
}
- /**
- * @param $yyruleno
- *
- * @throws \SmartyCompilerException
- */
public function yy_reduce($yyruleno)
{
if ($this->yyTraceFILE && $yyruleno >= 0
@@ -3471,7 +3268,7 @@ public function yy_reduce($yyruleno)
} else {
$this->yy_shift($yyact, $yygoto, $yy_lefthand_side);
}
- } else if ($yyact == self::YYNSTATE + self::YYNRULE + 1) {
+ } else if ($yyact === self::YYNSTATE + self::YYNRULE + 1) {
$this->yy_accept();
}
}
@@ -3486,12 +3283,6 @@ public function yy_parse_failed()
}
}
- /**
- * @param $yymajor
- * @param $TOKEN
- *
- * @throws \SmartyCompilerException
- */
public function yy_syntax_error($yymajor, $TOKEN)
{
#line 214 "../smarty/lexer/smarty_internal_templateparser.y"
@@ -3514,12 +3305,6 @@ public function yy_accept()
$this->retvalue = $this->_retvalue;
}
- /**
- * @param $yymajor
- * @param $yytokenvalue
- *
- * @throws \SmartyCompilerException
- */
public function doParse($yymajor, $yytokenvalue)
{
$yyerrorhit = 0; /* True if yymajor has invoked an error */
@@ -3556,7 +3341,7 @@ public function doParse($yymajor, $yytokenvalue)
}
} else if ($yyact < self::YYNSTATE + self::YYNRULE) {
$this->yy_reduce($yyact - self::YYNSTATE);
- } else if ($yyact == self::YY_ERROR_ACTION) {
+ } else if ($yyact === self::YY_ERROR_ACTION) {
if ($this->yyTraceFILE) {
fprintf($this->yyTraceFILE,
"%sSyntax Error!\n",
@@ -3567,7 +3352,7 @@ public function doParse($yymajor, $yytokenvalue)
$this->yy_syntax_error($yymajor, $yytokenvalue);
}
$yymx = $this->yystack[ $this->yyidx ]->major;
- if ($yymx == self::YYERRORSYMBOL || $yyerrorhit) {
+ if ($yymx === self::YYERRORSYMBOL || $yyerrorhit) {
if ($this->yyTraceFILE) {
fprintf($this->yyTraceFILE,
"%sDiscard input token %s\n",
@@ -3578,7 +3363,7 @@ public function doParse($yymajor, $yytokenvalue)
$yymajor = self::YYNOCODE;
} else {
while ($this->yyidx >= 0 &&
- $yymx != self::YYERRORSYMBOL &&
+ $yymx !== self::YYERRORSYMBOL &&
($yyact = $this->yy_find_shift_action(self::YYERRORSYMBOL)) >= self::YYNSTATE
) {
$this->yy_pop_parser_stack();
@@ -3587,7 +3372,7 @@ public function doParse($yymajor, $yytokenvalue)
$this->yy_destructor($yymajor, $yytokenvalue);
$this->yy_parse_failed();
$yymajor = self::YYNOCODE;
- } else if ($yymx != self::YYERRORSYMBOL) {
+ } else if ($yymx !== self::YYERRORSYMBOL) {
$u2 = 0;
$this->yy_shift($yyact, self::YYERRORSYMBOL, $u2);
}
@@ -3609,7 +3394,7 @@ public function doParse($yymajor, $yytokenvalue)
$this->yy_accept();
$yymajor = self::YYNOCODE;
}
- } while ($yymajor != self::YYNOCODE && $this->yyidx >= 0);
+ } while ($yymajor !== self::YYNOCODE && $this->yyidx >= 0);
}
}