DBIx-ActiveRecord

 view release on metacpan or  search on metacpan

lib/DBIx/ActiveRecord/Arel.pm  view on Meta::CPAN

    $o->query->set_offset($offset);
    $o;
}

sub lock {
    my ($self) = @_;
    my $o = $self->clone;
    $o->query->set_lock;
    $o;
}

sub group {
    my $self = shift;
    my $o = $self->clone;
    $o->query->add_group($o->_col($_)) for @_;
    $o;
}

sub asc {
    my $self = shift;
    my $o = $self->clone;
    $o->query->add_order(DBIx::ActiveRecord::Arel::Order->new('', $self->_col($_))) for @_;
    $o;
}

sub desc {
    my $self = shift;
    my $o = $self->clone;
    $o->query->add_order(DBIx::ActiveRecord::Arel::Order->new('DESC', $self->_col($_))) for @_;
    $o;
}

sub reorder {
    my $self = shift;
    my $o = $self->clone;
    $o->query->reset_order;
    $o;
}

sub reverse {
    my $self = shift;
    my $o = $self->clone;
    $o->query->reverse_order;
    $o;
}

sub as {
    my ($self, $alias) = @_;
    my $s = $self->clone;
    $s->query->add_as($s->table, $alias);
    $s;
}

sub insert {
    my ($self, $hash, $columns) = @_;
    my $o = $self->clone;
    $o->{query} = DBIx::ActiveRecord::Arel::Query::Insert->new($self, $hash, $columns);
    $o;
}

sub update {
    my ($self, $hash, $columns) = @_;
    my $o = $self->clone;
    $o->{query} = DBIx::ActiveRecord::Arel::Query::Update->new($self, $hash, $columns);
    $o;
}

sub delete {
    my ($self) = @_;
    my $o = $self->clone;
    $o->{query} = DBIx::ActiveRecord::Arel::Query::Delete->new($self);
    $o;
}

sub count {
    my ($self) = @_;
    my $o = $self->clone;
    $o->{query} = DBIx::ActiveRecord::Arel::Query::Count->new($self);
    $o;
}

1;



( run in 0.623 second using v1.01-cache-2.11-cpan-5a3173703d6 )