-bind => sub { shift; +{ @_ } },
-in => '_expand_in',
-not_in => '_expand_in',
- -tuple => sub {
+ -row => sub {
my ($self, $node, $args) = @_;
+{ $node => [ map $self->expand_expr($_), @$args ] };
},
}
$opt{render} = {
- (map +("-$_", "_render_$_"), qw(op func bind ident literal tuple)),
+ (map +("-$_", "_render_$_"), qw(op func bind ident literal row)),
%{$opt{render}||{}}
};
return $self->_convert($self->_quote($ident));
}
-sub _render_tuple {
+sub _render_row {
my ($self, $values) = @_;
my ($sql, @bind) = $self->_render_op([ ',', @$values ]);
return "($sql)", @bind;
{
where => {
-in => [
- { -tuple => [ 'x', 'y' ] },
- { -tuple => [ 1, 2 ] },
- { -tuple => [ 3, 4 ] },
+ { -row => [ 'x', 'y' ] },
+ { -row => [ 1, 2 ] },
+ { -row => [ 3, 4 ] },
],
},
stmt => ' WHERE (x, y) IN ((?, ?), (?, ?))',