add slice stability requirement code
[dbsrgits/Data-Query.git] / lib / Data / Query / Renderer / SQL / Slice / FirstSkip.pm
CommitLineData
623b3897 1package Data::Query::Renderer::SQL::Slice::FirstSkip;
2
3use Moo::Role;
623b3897 4
119e511b 5my %handle = (limit => 'FIRST', offset => 'SKIP');
6
8b2c306b 7sub slice_stability { }
8
119e511b 9sub _slice_order { qw(limit offset) }
10
623b3897 11sub _render_slice {
12 my ($self, $dq) = @_;
13 my $basic = $self->_render($dq->{from});
14 return [
15 $basic->[0], # SELECT keyword
119e511b 16 (map +(
17 $dq->{$_}
18 ? ($self->_format_keyword($handle{$_}), $self->_render($dq->{$_}))
19 : ()
20 ), $self->_slice_order
623b3897 21 ),
22 @{$basic}[1..$#$basic]
23 ];
24};
25
261;