15 include (
"smarty_internal_parsetree.php");
77 parent::__construct();
95 $this->lex =
new $this->lexer_class($_content, $this);
96 $this->parser =
new $this->parser_class($this->lex, $this);
97 if ($this->smarty->_parserdebug)
98 $this->parser->PrintTrace();
100 while ($this->lex->yylex() && !$this->abort_and_recompile) {
101 if ($this->smarty->_parserdebug) {
102 echo
"<pre>Line {$this->lex->line} Parsing {$this->parser->yyTokenName[$this->lex->token]} Token " .
103 htmlentities($this->lex->value) .
"</pre>";
105 $this->parser->doParse($this->lex->token, $this->lex->value);
108 if ($this->abort_and_recompile) {
113 $this->parser->doParse(0, 0);
115 if (count($this->_tag_stack) > 0) {
117 list($openTag, $_data) = array_pop($this->_tag_stack);
122 return $this->parser->retvalue;
doCompile($_content)
Methode to compile a Smarty template.
__construct($lexer_class, $parser_class, $smarty)
Initialize compiler.
trigger_template_error($args=null, $line=null)
display compiler error messages without dying