From: Matt S Trout Date: Tue, 5 Mar 2019 02:02:59 +0000 (+0000) Subject: check for undef and kill pointless debug checks X-Git-Tag: v1.90_01~391 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=f4082f8b772893842c8b1e94a23e1724c25f6e02;p=dbsrgits%2FSQL-Abstract.git check for undef and kill pointless debug checks --- diff --git a/lib/SQL/Abstract.pm b/lib/SQL/Abstract.pm index 9d7d4a3..a227fcd 100644 --- a/lib/SQL/Abstract.pm +++ b/lib/SQL/Abstract.pm @@ -524,7 +524,6 @@ sub _expand_expr { my $logic = lc($logic || $self->{logic}); $logic eq 'and' or $logic eq 'or' or puke "unknown logic: $logic"; - #my @expr = @$expr; my @expr = grep { (ref($_) eq 'ARRAY' and @$_) or (ref($_) eq 'HASH' and %$_) @@ -539,14 +538,14 @@ sub _expand_expr { my $elref = ref($el); if (!$elref) { local $Expand_Depth = 0; - push(@res, $self->_expand_expr({ $el, shift(@expr) })); + push(@res, grep defined, $self->_expand_expr({ $el, shift(@expr) })); } elsif ($elref eq 'ARRAY') { - push(@res, $self->_expand_expr($el)) if @$el; + push(@res, grep defined, $self->_expand_expr($el)) if @$el; } elsif (my $l = is_literal_value($el)) { push @res, { -literal => $l }; } elsif ($elref eq 'HASH') { local $Expand_Depth = 0; - push @res, $self->_expand_expr($el) if %$el; + push @res, grep defined, $self->_expand_expr($el) if %$el; } else { die "notreached"; } @@ -1000,8 +999,6 @@ sub _render_op { : "${op_sql} ${expr_sql}" ); return (($op eq 'not' || $us ? '('.$final_sql.')' : $final_sql), @bind); - #} elsif (@args == 0) { - # return ''; } else { my @parts = grep length($_->[0]), map [ $self->_render_expr($_) ], @args; return '' unless @parts;