use strictures 1;
+use DBIx::Data::Stream::STH;
+
sub new {
my $proto = shift;
bless({ %{$_[0]} }, ref($proto)||$proto);
sub _sql { shift->{sql} }
sub _raw { shift->{raw} }
+sub _append_args { shift->{append_args} }
sub _run {
my $self = shift;
- my ($run_type, $sql_type, @args) = @_;
+ my ($run_type, $sql_type, $args) = @_;
my $sql = $self->_sql->{$sql_type}||die "No such sql type ${sql_type}";
- $self->_raw->${\"run_${run_type}"}($sql, @args);
+ if (my $append = $self->_append_args) {
+ $args = [ @{$args||[]}, @$append ];
+ }
+ $self->_raw->${\"run_${run_type}"}($sql, $args);
}
sub flatten { @{shift->_run('rowset', 'select_all', @_)} }