Beispiel #1
0
 protected function buildGetNextTokenMethod(Syntax $syntax)
 {
     $method = new MethodGenerator('getNextToken', ['data'], MethodGenerator::FLAG_PROTECTED);
     $method->setBody($methodBody = new Container());
     foreach ($syntax->getTerminals() as $terminal) {
         $statement = $terminal->getGenerator(new VariableStatement('data'));
         $methodBody->addLine($statement);
     }
     $methodBody->addLine('throw new \\Exception("Syntax error. Cannot parse \'" . substr($data, 0, 100) . "\'");');
     $this->class->addMethodFromGenerator($method);
 }
Beispiel #2
0
 /**
  * @param string $name
  *
  * @return int
  */
 public function getAlias($name)
 {
     return $this->syntax->getAlias($name);
 }