当前位置: 首页>>代码示例>>PHP>>正文


PHP Twig_Node_Module类代码示例

本文整理汇总了PHP中Twig_Node_Module的典型用法代码示例。如果您正苦于以下问题:PHP Twig_Node_Module类的具体用法?PHP Twig_Node_Module怎么用?PHP Twig_Node_Module使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Twig_Node_Module类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: getFunctionName

 public function getFunctionName(\Twig_Node_Module $module)
 {
     if ($module->hasAttribute('twig_js_name')) {
         return $module->getAttribute('twig_js_name');
     }
     $templateName = $module->getAttribute('filename');
     $templateName = basename($templateName, '.twig');
     $templateName = str_replace(':', '.', $templateName);
     $templateName = preg_replace('/\\.+/', '.', $templateName);
     $templateName = trim($templateName, '.');
     return $templateName;
 }
开发者ID:raphydev,项目名称:onep,代码行数:12,代码来源:DefaultFunctionNamingStrategy.php

示例2: testConstructor

 /**
  * @covers Twig_Node_Module::__construct
  */
 public function testConstructor()
 {
     $body = new Twig_Node_Text('foo', 0);
     $parent = new Twig_Node_Expression_Constant('layout.twig', 0);
     $blocks = new Twig_Node();
     $macros = new Twig_Node();
     $filename = 'foo.twig';
     $node = new Twig_Node_Module($body, $parent, $blocks, $macros, $filename);
     $this->assertEquals($body, $node->getNode('body'));
     $this->assertEquals($blocks, $node->getNode('blocks'));
     $this->assertEquals($macros, $node->getNode('macros'));
     $this->assertEquals($parent, $node->getNode('parent'));
     $this->assertEquals($filename, $node->getAttribute('filename'));
 }
开发者ID:vebnz,项目名称:lifelitup,代码行数:17,代码来源:ModuleTest.php

示例3: testConstructor

 public function testConstructor()
 {
     $body = new Twig_Node_Text('foo', 1);
     $parent = new Twig_Node_Expression_Constant('layout.twig', 1);
     $blocks = new Twig_Node();
     $macros = new Twig_Node();
     $traits = new Twig_Node();
     $source = new Twig_Source('{{ foo }}', 'foo.twig');
     $node = new Twig_Node_Module($body, $parent, $blocks, $macros, $traits, new Twig_Node(array()), $source);
     $this->assertEquals($body, $node->getNode('body'));
     $this->assertEquals($blocks, $node->getNode('blocks'));
     $this->assertEquals($macros, $node->getNode('macros'));
     $this->assertEquals($parent, $node->getNode('parent'));
     $this->assertEquals($source->getName(), $node->getTemplateName());
 }
开发者ID:naldz,项目名称:cyberden,代码行数:15,代码来源:ModuleTest.php

示例4: embedTemplate

 public function embedTemplate(Twig_Node_Module $template)
 {
     $template->setIndex(mt_rand());
     $this->embeddedTemplates[] = $template;
 }
开发者ID:vgrish,项目名称:twiggy,代码行数:5,代码来源:Parser.php

示例5: embedTemplate

 public function embedTemplate(Twig_Node_Module $template)
 {
     $template->setIndex(count($this->embeddedTemplates) + 1);
     $this->embeddedTemplates[] = $template;
 }
开发者ID:laubosslink,项目名称:lab,代码行数:5,代码来源:Parser.php

示例6: compileDisplayFooter

    protected function compileDisplayFooter(Twig_Compiler $compiler)
    {
        parent::compileDisplayFooter($compiler);

        $compiler
            ->write("protected function checkSecurity() {\n")
            ->indent()
            ->write("\$this->env->getExtension('sandbox')->checkSecurity(\n")
            ->indent()
            ->write(!$this->usedTags ? "array(),\n" : "array('".implode('\', \'', $this->usedTags)."'),\n")
            ->write(!$this->usedFilters ? "array(),\n" : "array('".implode('\', \'', $this->usedFilters)."'),\n")
            ->write(!$this->usedFunctions ? "array()\n" : "array('".implode('\', \'', $this->usedFunctions)."')\n")
            ->outdent()
            ->write(");\n")
        ;

        if (null !== $this->getNode('parent')) {
            $compiler
                ->raw("\n")
                ->write("\$this->parent->checkSecurity();\n")
            ;
        }

        $compiler
            ->outdent()
            ->write("}\n\n")
        ;
    }
开发者ID:nizsheanez,项目名称:PolymorphCMS,代码行数:28,代码来源:SandboxedModule.php

示例7: compileClassHeader

 /**
  * Override compilation of class header to add static placeholder array and accessor method.
  *
  * @param Twig_Compiler $compiler
  */
 protected function compileClassHeader(Twig_Compiler $compiler)
 {
     parent::compileClassHeader($compiler);
     $placeholders = array();
     $this->getVariables($this, $placeholders);
     $compiler->write("// Curry: placeholders \n")->write("static protected \$placeholders = " . var_export(array_keys($placeholders), true) . ";\n\n")->write("\n")->write("public function getPlaceholders()\n")->write("{\n")->indent()->write("return self::\$placeholders;\n")->outdent()->write("}\n\n");
 }
开发者ID:varvanin,项目名称:currycms,代码行数:12,代码来源:Module.php

示例8: compileDisplayFooter

 protected function compileDisplayFooter(Twig_Compiler $compiler)
 {
     parent::compileDisplayFooter($compiler);
     $tags = $filters = $functions = array();
     foreach (array('tags', 'filters', 'functions') as $type) {
         foreach ($this->{'used' . ucfirst($type)} as $name => $node) {
             if ($node instanceof Twig_Node) {
                 ${$type}[$name] = $node->getLine();
             } else {
                 ${$type}[$node] = null;
             }
         }
     }
     $compiler->write("protected function checkSecurity()\n", "{\n")->indent()->write("\$tags = ")->repr(array_filter($tags))->raw(";\n")->write("\$filters = ")->repr(array_filter($filters))->raw(";\n")->write("\$functions = ")->repr(array_filter($functions))->raw(";\n\n")->write("try {\n")->indent()->write("\$this->env->getExtension('sandbox')->checkSecurity(\n")->indent()->write(!$tags ? "array(),\n" : "array('" . implode("', '", array_keys($tags)) . "'),\n")->write(!$filters ? "array(),\n" : "array('" . implode("', '", array_keys($filters)) . "'),\n")->write(!$functions ? "array()\n" : "array('" . implode("', '", array_keys($functions)) . "')\n")->outdent()->write(");\n")->outdent()->write("} catch (Twig_Sandbox_SecurityError \$e) {\n")->indent()->write("\$e->setTemplateFile(\$this->getTemplateName());\n\n")->write("if (\$e instanceof Twig_Sandbox_SecurityNotAllowedTagError && isset(\$tags[\$e->getTagName()])) {\n")->indent()->write("\$e->setTemplateLine(\$tags[\$e->getTagName()]);\n")->outdent()->write("} elseif (\$e instanceof Twig_Sandbox_SecurityNotAllowedFilterError && isset(\$filters[\$e->getFilterName()])) {\n")->indent()->write("\$e->setTemplateLine(\$filters[\$e->getFilterName()]);\n")->outdent()->write("} elseif (\$e instanceof Twig_Sandbox_SecurityNotAllowedFunctionError && isset(\$functions[\$e->getFunctionName()])) {\n")->indent()->write("\$e->setTemplateLine(\$functions[\$e->getFunctionName()]);\n")->outdent()->write("}\n\n")->write("throw \$e;\n")->outdent()->write("}\n")->outdent()->write("}\n\n");
 }
开发者ID:eroslover,项目名称:drupal7,代码行数:15,代码来源:SandboxedModule.php

示例9: compileClassFooter

 /**
  * {@inheritdoc}
  */
 protected function compileClassFooter(\Twig_Compiler $compiler)
 {
     $this->compileContentRegionFunction($compiler);
     parent::compileClassFooter($compiler);
 }
开发者ID:umber-io,项目名称:content-region,代码行数:8,代码来源:ContentRegionModule.php


注:本文中的Twig_Node_Module类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。