Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
CRAP | |
91.67% |
11 / 12 |
| AbstractPreg | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
2.00 | |
91.67% |
11 / 12 |
| tokenizeDate | |
0.00% |
0 / 1 |
2.00 | |
91.67% |
11 / 12 |
|||
| <?php | |
| namespace Popy\Calendar\Parser\DateLexer; | |
| use Popy\Calendar\Parser\DateLexerResult; | |
| use Popy\Calendar\Parser\PregDateLexerInterface; | |
| /** | |
| * Abstract implementation of Preg based lexers. | |
| */ | |
| abstract class AbstractPreg implements PregDateLexerInterface | |
| { | |
| /** | |
| * @inheritDoc | |
| */ | |
| public function tokenizeDate($string, $offset = 0) | |
| { | |
| $match = []; | |
| if (!preg_match( | |
| '/\G'.$this->getExpression().'/', | |
| $string, | |
| $match, | |
| PREG_OFFSET_CAPTURE, | |
| $offset | |
| )) { | |
| return null; | |
| } | |
| $this->hydrateResult( | |
| $res = new DateLexerResult($offset + strlen($match[0][0])), | |
| $match | |
| ); | |
| return $res; | |
| } | |
| } |