Skip to content

Commit 2d0b364

Browse files
committed
Fix tests
1 parent ef7968e commit 2d0b364

File tree

3 files changed

+24
-21
lines changed

3 files changed

+24
-21
lines changed

src/Components/CaseExpression.php

Lines changed: 22 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -129,10 +129,10 @@ public static function parse(Parser $parser, TokensList $list, array $options =
129129
case 'END':
130130
$state = 3; // end of CASE expression
131131
++$list->idx;
132-
break;
132+
break 2;
133133
default:
134134
$parser->error('Unexpected keyword.', $token);
135-
break;
135+
break 2;
136136
}
137137
} else {
138138
$ret->value = Expression::parse($parser, $list);
@@ -148,43 +148,46 @@ public static function parse(Parser $parser, TokensList $list, array $options =
148148
$new_value = Expression::parse($parser, $list);
149149
$state = 2;
150150
$ret->compare_values[] = $new_value;
151-
break;
151+
break;
152152
case 'ELSE':
153153
++$list->idx; // Skip 'ELSE'
154154
$ret->else_result = Expression::parse($parser, $list);
155155
$state = 0; // last clause of CASE expression
156-
break;
156+
break;
157157
case 'END':
158158
$state = 3; // end of CASE expression
159159
++$list->idx;
160-
break;
160+
break 2;
161161
default:
162162
$parser->error('Unexpected keyword.', $token);
163-
break;
163+
break 2;
164164
}
165165
}
166-
} else if ($token->type === Token::TYPE_KEYWORD) {
167-
if ($token->keyword === 'THEN') {
166+
} else {
167+
if ($token->type === Token::TYPE_KEYWORD
168+
&& $token->keyword === 'THEN'
169+
) {
168170
++$list->idx; // Skip 'THEN'
169171
$new_result = Expression::parse($parser, $list);
170172
$state = 0;
171173
$ret->results[] = $new_result;
172-
} else {
174+
} elseif ($token->type === Token::TYPE_KEYWORD) {
173175
$parser->error('Unexpected keyword.', $token);
176+
break;
174177
}
175-
break;
176178
}
177179
} elseif ($state === 2) {
178180
if ($type === 0) {
179-
if ($token->type === Token::TYPE_KEYWORD) {
180-
if ($token->keyword === 'THEN') {
181-
++$list->idx; // Skip 'THEN'
182-
$new_result = Expression::parse($parser, $list);
183-
$ret->results[] = $new_result;
184-
$state = 1;
185-
} else {
186-
$parser->error('Unexpected keyword.', $token);
187-
}
181+
if ($token->type === Token::TYPE_KEYWORD
182+
&& $token->keyword === 'THEN'
183+
) {
184+
++$list->idx; // Skip 'THEN'
185+
$new_result = Expression::parse($parser, $list);
186+
$ret->results[] = $new_result;
187+
$state = 1;
188+
} elseif ($token->type === Token::TYPE_KEYWORD) {
189+
$parser->error('Unexpected keyword.', $token);
190+
break;
188191
}
189192
}
190193
}

src/Components/JoinKeyword.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ public static function parse(Parser $parser, TokensList $list, array $options =
179179
$state = 1;
180180
} else {
181181
/* Next clause is starting */
182-
break;
182+
break 2;
183183
}
184184
break;
185185
}

src/Statements/CreateStatement.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -507,7 +507,7 @@ public function parse(Parser $parser, TokensList $list)
507507
// This is used instead of `++$brackets` because,
508508
// initially, `$brackets` is `false` cannot be
509509
// incremented.
510-
++$brackets;
510+
$brackets = $brackets + 1;
511511
} elseif ($token->value === ')') {
512512
--$brackets;
513513
}

0 commit comments

Comments
 (0)