| @@ 28-45 (lines=18) @@ | ||
| 25 | /** |
|
| 26 | * @inheritdoc |
|
| 27 | */ |
|
| 28 | public function parse(TokenStream $tokenStream) |
|
| 29 | { |
|
| 30 | $fields = []; |
|
| 31 | ||
| 32 | $tokenStream->expect(Token::T_OPERATOR, 'select'); |
|
| 33 | $tokenStream->expect(Token::T_OPEN_PARENTHESIS); |
|
| 34 | ||
| 35 | do { |
|
| 36 | $fields[] = $this->fieldNameParser->parse($tokenStream); |
|
| 37 | if (!$tokenStream->nextIf(Token::T_COMMA)) { |
|
| 38 | break; |
|
| 39 | } |
|
| 40 | } while (true); |
|
| 41 | ||
| 42 | $tokenStream->expect(Token::T_CLOSE_PARENTHESIS); |
|
| 43 | ||
| 44 | return new SelectNode($fields); |
|
| 45 | } |
|
| 46 | ||
| 47 | /** |
|
| 48 | * @inheritdoc |
|
| @@ 26-41 (lines=16) @@ | ||
| 23 | /** |
|
| 24 | * @inheritdoc |
|
| 25 | */ |
|
| 26 | public function parse(TokenStream $tokenStream) |
|
| 27 | { |
|
| 28 | $tokenStream->expect(Token::T_OPEN_PARENTHESIS); |
|
| 29 | ||
| 30 | $values = []; |
|
| 31 | do { |
|
| 32 | $values[] = $this->itemParser->parse($tokenStream); |
|
| 33 | if (!$tokenStream->nextIf(Token::T_COMMA)) { |
|
| 34 | break; |
|
| 35 | } |
|
| 36 | } while (true); |
|
| 37 | ||
| 38 | $tokenStream->expect(Token::T_CLOSE_PARENTHESIS); |
|
| 39 | ||
| 40 | return $values; |
|
| 41 | } |
|
| 42 | } |
|
| 43 | ||