)',
'ON',
'WHERE',
- 'VALUES',
+ '(?: DEFAULT \s+ )? VALUES',
'EXISTS',
'GROUP \s+ BY',
'HAVING',
? do {
my $c = \&Term::ANSIColor::color;
(
- placeholder_surround => [$c->('black on_cyan'), $c->('reset')],
+ placeholder_surround => [q(') . $c->('black on_magenta'), $c->('reset') . q(')],
colormap => {
select => [$c->('red'), $c->('reset')],
'insert into' => [$c->('red'), $c->('reset')],
defined $token
and
length $token
- and
+ and
$token =~ /\S/
);
}
elsif ( $token =~ / ^ $expr_start_re $ /x ) {
my $op = uc $token;
my $right = $self->_recurse_parse($tokens, PARSE_IN_EXPR);
- $left = $left ? [ $left, [$op => [$right] ]]
- : [ $op => [$right] ];
+ $left = $left ? [ $left, [$op => [$right||()] ]]
+ : [ $op => [$right||()] ];
}
# NOT
elsif ( $token =~ /^ NOT $/ix ) {