/** * Invokes filter. * @param string * @return string */ public function __invoke($s) { $this->parser->context = Parser::CONTEXT_TEXT; $this->parser->escape = 'Nette\\Templating\\DefaultHelpers::escapeHtml|'; $this->parser->setDelimiters('\\{(?![\\s\'"{}*])', '\\}'); return $this->parser->parse($s); }
/** * {syntax ...} */ public function macroSyntax($var) { switch ($var) { case '': case 'latte': $this->parser->setDelimiters('\\{(?![\\s\'"{}])', '\\}'); // {...} break; case 'double': $this->parser->setDelimiters('\\{\\{(?![\\s\'"{}])', '\\}\\}'); // {{...}} break; case 'asp': $this->parser->setDelimiters('<%\\s*', '\\s*%>'); /* <%...%> */ break; case 'python': $this->parser->setDelimiters('\\{[{%]\\s*', '\\s*[%}]\\}'); // {% ... %} | {{ ... }} break; case 'off': $this->parser->setDelimiters('[^\\x00-\\xFF]', ''); break; default: throw new ParseException("Unknown syntax '{$var}'", 0, $this->parser->line); } }
/** * Invokes filter. * @param string * @return string */ public function __invoke($s) { $this->parser->context = array(Parser::CONTEXT_TEXT); $this->parser->setDelimiters('\\{(?![\\s\'"{}])', '\\}'); return $this->parser->parse($s); }