| @@ 13-27 (lines=15) @@ | ||
| 10 | /** |
|
| 11 | * @return object |
|
| 12 | */ |
|
| 13 | protected function scanCall() |
|
| 14 | { |
|
| 15 | if (preg_match('/^\+(\w[-\w]*)/', $this->input, $matches)) { |
|
| 16 | $this->consume($matches[0]); |
|
| 17 | $token = $this->token('call', $matches[1]); |
|
| 18 | ||
| 19 | // check for arguments |
|
| 20 | if (preg_match('/^ *\((.*?)\)/', $this->input, $matchesArguments)) { |
|
| 21 | $this->consume($matchesArguments[0]); |
|
| 22 | $token->arguments = $matchesArguments[1]; |
|
| 23 | } |
|
| 24 | ||
| 25 | return $token; |
|
| 26 | } |
|
| 27 | } |
|
| 28 | ||
| 29 | /** |
|
| 30 | * @return object |
|
| @@ 169-180 (lines=12) @@ | ||
| 166 | /** |
|
| 167 | * @return object |
|
| 168 | */ |
|
| 169 | protected function scanEach() |
|
| 170 | { |
|
| 171 | if (preg_match('/^(?:- *)?(?:each|for) +(\w+)(?: *, *(\w+))? +in *([^\n]+)/', $this->input, $matches)) { |
|
| 172 | $this->consume($matches[0]); |
|
| 173 | ||
| 174 | $token = $this->token('each', $matches[1]); |
|
| 175 | $token->key = $matches[2]; |
|
| 176 | $token->code = $this->normalizeCode($matches[3]); |
|
| 177 | ||
| 178 | return $token; |
|
| 179 | } |
|
| 180 | } |
|
| 181 | ||
| 182 | /** |
|
| 183 | * @return object |
|