allow $foo->bar[$x].foo syntax

This commit is contained in:
mohrt
2003-02-03 15:46:11 +00:00
parent b8b04c056e
commit f4961b6950
2 changed files with 16 additions and 20 deletions

View File

@@ -55,7 +55,7 @@ class Smarty_Compiler extends Smarty {
var $_si_qstr_regexp = null; var $_si_qstr_regexp = null;
var $_qstr_regexp = null; var $_qstr_regexp = null;
var $_func_regexp = null; var $_func_regexp = null;
var $_dvar__gets_regexp = null; var $_dvar_guts_regexp = null;
var $_dvar_regexp = null; var $_dvar_regexp = null;
var $_cvar_regexp = null; var $_cvar_regexp = null;
var $_svar_regexp = null; var $_svar_regexp = null;
@@ -87,13 +87,13 @@ class Smarty_Compiler extends Smarty {
$this->_qstr_regexp = '(?:' . $this->_db_qstr_regexp . '|' . $this->_si_qstr_regexp . ')'; $this->_qstr_regexp = '(?:' . $this->_db_qstr_regexp . '|' . $this->_si_qstr_regexp . ')';
// matches $ vars (not objects): // matches $ vars (not objects):
// foo // $foo
// foo.bar // $foo.bar
// foo.bar.foobar // $foo.bar.foobar
// foo[0] // $foo[0]
// foo[$bar] // $foo[$bar]
// foo[5][blah] // $foo[5][blah]
// foo[5].bar[$foobar][4] // $foo[5].bar[$foobar][4]
$this->_dvar_guts_regexp = '\w+(?:\[\$?[\w\.]+\])*(?:\.\$?\w+(?:\[\$?[\w\.]+\])*)*'; $this->_dvar_guts_regexp = '\w+(?:\[\$?[\w\.]+\])*(?:\.\$?\w+(?:\[\$?[\w\.]+\])*)*';
$this->_dvar_regexp = '\$' . $this->_dvar_guts_regexp; $this->_dvar_regexp = '\$' . $this->_dvar_guts_regexp;
@@ -132,8 +132,6 @@ class Smarty_Compiler extends Smarty {
// matches valid object call (no objects allowed in parameters): // matches valid object call (no objects allowed in parameters):
// $foo->bar // $foo->bar
// $foo->bar[0]
// $foo->bar[$x].foobar
// $foo->bar() // $foo->bar()
// $foo->bar("text") // $foo->bar("text")
// $foo->bar($foo, $bar, "text") // $foo->bar($foo, $bar, "text")

View File

@@ -55,7 +55,7 @@ class Smarty_Compiler extends Smarty {
var $_si_qstr_regexp = null; var $_si_qstr_regexp = null;
var $_qstr_regexp = null; var $_qstr_regexp = null;
var $_func_regexp = null; var $_func_regexp = null;
var $_dvar__gets_regexp = null; var $_dvar_guts_regexp = null;
var $_dvar_regexp = null; var $_dvar_regexp = null;
var $_cvar_regexp = null; var $_cvar_regexp = null;
var $_svar_regexp = null; var $_svar_regexp = null;
@@ -87,13 +87,13 @@ class Smarty_Compiler extends Smarty {
$this->_qstr_regexp = '(?:' . $this->_db_qstr_regexp . '|' . $this->_si_qstr_regexp . ')'; $this->_qstr_regexp = '(?:' . $this->_db_qstr_regexp . '|' . $this->_si_qstr_regexp . ')';
// matches $ vars (not objects): // matches $ vars (not objects):
// foo // $foo
// foo.bar // $foo.bar
// foo.bar.foobar // $foo.bar.foobar
// foo[0] // $foo[0]
// foo[$bar] // $foo[$bar]
// foo[5][blah] // $foo[5][blah]
// foo[5].bar[$foobar][4] // $foo[5].bar[$foobar][4]
$this->_dvar_guts_regexp = '\w+(?:\[\$?[\w\.]+\])*(?:\.\$?\w+(?:\[\$?[\w\.]+\])*)*'; $this->_dvar_guts_regexp = '\w+(?:\[\$?[\w\.]+\])*(?:\.\$?\w+(?:\[\$?[\w\.]+\])*)*';
$this->_dvar_regexp = '\$' . $this->_dvar_guts_regexp; $this->_dvar_regexp = '\$' . $this->_dvar_guts_regexp;
@@ -132,8 +132,6 @@ class Smarty_Compiler extends Smarty {
// matches valid object call (no objects allowed in parameters): // matches valid object call (no objects allowed in parameters):
// $foo->bar // $foo->bar
// $foo->bar[0]
// $foo->bar[$x].foobar
// $foo->bar() // $foo->bar()
// $foo->bar("text") // $foo->bar("text")
// $foo->bar($foo, $bar, "text") // $foo->bar($foo, $bar, "text")