my ($self, $ident) = @_;
$self->_assert_pass_injection_guard($ident)
unless $self->renderer_will_quote;
- $self->_maybe_convert_dq(Identifier(split /\Q${\$self->identifier_sep}/, $ident));
+ $self->_maybe_convert_dq(
+ Identifier(do {
+ if (my $sep = $self->identifier_sep) {
+ split /\Q$sep/, $ident
+ } else {
+ $ident
+ }
+ })
+ );
}
sub _maybe_convert_dq {
return $outer;
} elsif (ref($arg) eq 'REF' and ref($$arg) eq 'ARRAY') {
$dq->{by} = $self->_literal_to_dq($$arg);
+ } elsif (ref($arg) eq 'REF' and ref($$arg) eq 'HASH') {
+ $dq->{by} = $$arg;
} elsif (ref($arg) eq 'SCALAR') {
# < mst> right, but if it doesn't match that, it goes "ok, right, not sure,
$val = $arg->{$key};
} elsif ($key =~ /^-nulls$/i) {
$nulls = $arg->{$key};
- die "invalid value for -nulls" unless $nulls =~ /^(?:first|last)$/;
+ die "invalid value for -nulls" unless $nulls =~ /^(?:first|last)$/i;
} else {
die "invalid key in hash passed to _order_by_to_dq";
}