Example #1
0
 public function testSetOffset()
 {
     $input = new Input('asdf');
     $input->setOffset(2);
     $this->assertEquals(2, $input->getOffset());
     $this->assertEquals('df', $input->get());
 }
 public function setOffset($offset)
 {
     $diff = abs($this->getOffset() - $offset);
     if ($offset < $this->getOffset()) {
         $this->getParserData()['rewound'] += $diff;
         $this->log(Parser::getInlineParserStack() . " - rewind({$diff})");
     } elseif ($offset > $this->getOffset()) {
         $this->getParserData()['consumed'] += $diff;
         $this->log(Parser::getInlineParserStack() . " - consume({$diff}, '{$this->get($diff)}')");
     }
     parent::setOffset($offset);
 }