Ejemplo n.º 1
0
 function parse($input)
 {
     if (!self::$tokenizer) {
         self::$tokenizer = new NTokenizer(self::$patterns, 'mi');
     }
     $input = str_replace("\r", '', $input);
     $input = strtr($input, "\t", ' ');
     $input = "\n" . $input . "\n";
     self::$tokenizer->tokenize($input);
     $this->n = 0;
     $res = $this->_parse();
     while (isset(self::$tokenizer->tokens[$this->n])) {
         if (self::$tokenizer->tokens[$this->n][0] === "\n") {
             $this->n++;
         } else {
             $this->error();
         }
     }
     return $res;
 }