add slice_subquery method for DBIC introspection
[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
fbf38b8e 7sub slice_subquery { }
8
8b2c306b 9sub slice_stability { }
10
119e511b 11sub _slice_order { qw(limit offset) }
12
623b3897 13sub _render_slice {
14 my ($self, $dq) = @_;
15 my $basic = $self->_render($dq->{from});
16 return [
17 $basic->[0], # SELECT keyword
119e511b 18 (map +(
19 $dq->{$_}
20 ? ($self->_format_keyword($handle{$_}), $self->_render($dq->{$_}))
21 : ()
22 ), $self->_slice_order
623b3897 23 ),
24 @{$basic}[1..$#$basic]
25 ];
26};
27
281;