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