my %methods = (
enable => sub { ;;;; },
+ eq_ignore_empty => sub { ($_[0] // '') eq '' ? () : +{ eq => $_[0] } },
map {
# since $_ is an alias it can't be used in a closure. even "".$_ or "$_"
# does not work, we need a real copy.
next if !defined $value || $value eq ''; # 0 is fine
if ('HASH' eq ref $value) {
my ($query, $more_objects) = flatten($value, _prefix($prefix, $key));
- push @result, @$query if $query;
+ push @result, @$query if $query;
_add_uniq($with_objects, $_) for _prefix($prefix, $key), @$more_objects;
} else {
push @result, _prefix($prefix, $key) => $value;
Adds "% .. %" around the search string.
+=item eq_ignore_empty
+
+Ignores this item if it's empty. Otherwise compares it with the
+standard SQL C<=> operator.
+
=back
=head2 METHODS (leading with ::)