public function getExpressionParser()
 {
     if ($this->expressionParser === NULL) {
         $lexer = new ExpressionLexer();
         $lexer->setDelimiters('{{', '}}');
         $this->expressionParser = new ExpressionParser($lexer);
     }
     return $this->expressionParser;
 }
示例#2
0
 public function __construct($key, $title = '', ExpressionParser $parser = NULL)
 {
     $this->key = $key;
     $this->builder = new ProcessBuilder($title);
     if ($parser === NULL) {
         $lexer = new ExpressionLexer();
         $lexer->setDelimiters('#{', '}');
         $parser = new ExpressionParser($lexer);
     }
     $this->expressionParser = $parser;
 }
示例#3
0
 protected function setUp()
 {
     parent::setUp();
     $logger = NULL;
     $logger = NULL;
     if ($this->isDebug()) {
         $logger = new Logger('Process');
         $logger->pushHandler(new StreamHandler(STDERR));
         $logger->pushProcessor(new PsrLogMessageProcessor());
         fwrite(STDERR, "\n");
         fwrite(STDERR, sprintf("TEST CASE: %s\n", $this->getName()));
     }
     $lexer = new ExpressionLexer();
     $lexer->setDelimiters('#{', '}');
     $this->expressionParser = new ExpressionParser($lexer);
     $this->eventDispatcher = new EventDispatcher();
     $this->processEngine = new TestEngine($this->eventDispatcher, new ExpressionContextFactory());
     $this->processEngine->setLogger($logger);
 }
示例#4
0
文件: Config.php 项目: koolkode/unity
 protected function loadYaml(string $file) : array
 {
     if (!class_exists(Yaml::class)) {
         throw new \RuntimeException('Symfony YAML component is required in order to load file: "%s"', $file);
     }
     $yaml = file_get_contents($file);
     $data = Yaml::parse($yaml);
     $lexer = new ExpressionLexer();
     $lexer->setDelimiters('{{', '}}');
     $parser = new ExpressionParser($lexer);
     return $this->parseYamlExpressions($parser, $data);
 }