public function testGetOffset()
 {
     $reader = new Reader('hello');
     $this->assertEquals(2, $reader->getOffset('ll'));
     $this->assertFalse($reader->getOffset('w'));
     $this->assignPosition($reader, 2);
     $this->assertEquals(0, $reader->getOffset('ll'));
     $this->assertFalse($reader->getOffset('he'));
 }
 protected function assertRemainingContent(Reader $reader, $remainingContent)
 {
     if ('' === $remainingContent) {
         $this->assertEquals(0, $reader->getRemainingLength());
         $this->assertTrue($reader->isEOF());
     } else {
         $this->assertEquals(strlen($remainingContent), $reader->getRemainingLength());
         $this->assertEquals(0, $reader->getOffset($remainingContent));
     }
 }
 /**
  * {@inheritdoc}
  */
 public function handle(Reader $reader, TokenStream $stream)
 {
     if ('/*' !== $reader->getSubstring(2)) {
         return false;
     }
     $offset = $reader->getOffset('*/');
     if (false === $offset) {
         $reader->moveToEnd();
     } else {
         $reader->moveForward($offset + 2);
     }
     return true;
 }