summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Components/CaseExpression.php41
-rw-r--r--src/Components/JoinKeyword.php2
-rw-r--r--src/Statements/CreateStatement.php2
3 files changed, 24 insertions, 21 deletions
diff --git a/src/Components/CaseExpression.php b/src/Components/CaseExpression.php
index eb91f5f..19061db 100644
--- a/src/Components/CaseExpression.php
+++ b/src/Components/CaseExpression.php
@@ -129,10 +129,10 @@ class CaseExpression extends Component
case 'END':
$state = 3; // end of CASE expression
++$list->idx;
- break;
+ break 2;
default:
$parser->error('Unexpected keyword.', $token);
- break;
+ break 2;
}
} else {
$ret->value = Expression::parse($parser, $list);
@@ -148,43 +148,46 @@ class CaseExpression extends Component
$new_value = Expression::parse($parser, $list);
$state = 2;
$ret->compare_values[] = $new_value;
- break;
+ break;
case 'ELSE':
++$list->idx; // Skip 'ELSE'
$ret->else_result = Expression::parse($parser, $list);
$state = 0; // last clause of CASE expression
- break;
+ break;
case 'END':
$state = 3; // end of CASE expression
++$list->idx;
- break;
+ break 2;
default:
$parser->error('Unexpected keyword.', $token);
- break;
+ break 2;
}
}
- } else if ($token->type === Token::TYPE_KEYWORD) {
- if ($token->keyword === 'THEN') {
+ } else {
+ if ($token->type === Token::TYPE_KEYWORD
+ && $token->keyword === 'THEN'
+ ) {
++$list->idx; // Skip 'THEN'
$new_result = Expression::parse($parser, $list);
$state = 0;
$ret->results[] = $new_result;
- } else {
+ } elseif ($token->type === Token::TYPE_KEYWORD) {
$parser->error('Unexpected keyword.', $token);
+ break;
}
- break;
}
} elseif ($state === 2) {
if ($type === 0) {
- if ($token->type === Token::TYPE_KEYWORD) {
- if ($token->keyword === 'THEN') {
- ++$list->idx; // Skip 'THEN'
- $new_result = Expression::parse($parser, $list);
- $ret->results[] = $new_result;
- $state = 1;
- } else {
- $parser->error('Unexpected keyword.', $token);
- }
+ if ($token->type === Token::TYPE_KEYWORD
+ && $token->keyword === 'THEN'
+ ) {
+ ++$list->idx; // Skip 'THEN'
+ $new_result = Expression::parse($parser, $list);
+ $ret->results[] = $new_result;
+ $state = 1;
+ } elseif ($token->type === Token::TYPE_KEYWORD) {
+ $parser->error('Unexpected keyword.', $token);
+ break;
}
}
}
diff --git a/src/Components/JoinKeyword.php b/src/Components/JoinKeyword.php
index 0b5aae9..786092d 100644
--- a/src/Components/JoinKeyword.php
+++ b/src/Components/JoinKeyword.php
@@ -179,7 +179,7 @@ class JoinKeyword extends Component
$state = 1;
} else {
/* Next clause is starting */
- break;
+ break 2;
}
break;
}
diff --git a/src/Statements/CreateStatement.php b/src/Statements/CreateStatement.php
index 3b705c3..808109e 100644
--- a/src/Statements/CreateStatement.php
+++ b/src/Statements/CreateStatement.php
@@ -507,7 +507,7 @@ class CreateStatement extends Statement
// This is used instead of `++$brackets` because,
// initially, `$brackets` is `false` cannot be
// incremented.
- ++$brackets;
+ $brackets = $brackets + 1;
} elseif ($token->value === ')') {
--$brackets;
}