table of contents
DBIx::Simple::Result::RowObject(3) | User Contributed Perl Documentation | DBIx::Simple::Result::RowObject(3) |
NAME¶
DBIx::Simple::Result::RowObject - Simple result row object class
DESCRIPTION¶
This class is the default for the "object" and "objects" result object methods. Mainly, it provides syntactic sugar at the expense of performance.
Instead of writing
my $r = $db->query('SELECT foo, bar FROM baz')->hash; do_something_with $r->{foo}, $r->{bar};
you may write
my $r = $db->query('SELECT foo, bar FROM baz')->object; do_something_with $r->foo, $r->bar;
This class is a subclass of Object::Accessor, which provides per-object (rather than per-class) accessors. Your records must not have columns names like these:
* can * ls_accessors * ls_allow * mk_accessor * mk_clone * mk_flush * mk_verify * new * register_callback * ___autoload * ___callback * ___debug * ___error * ___get * ___set
And of course DESTROY and AUTOLOAD, and anything that new versions of Object::Accessor might add.
DBIx::Simple::OO¶
DBIx::Simple::OO is a third party module by Jos Boumans that provided "object" and "objects" to DBIx::Simple. Similar functionality is now built in, in part inspired by DBIx::Simple:OO.
Using DBIx::Simple 1.33 or newer together with DBIx::Simple::OO 0.01 will result in method name clash. DBIx::Simple::Result::RowObject was written to be compatible with DBIx::Simple::OO::Item, except for the name, so "isa" calls still need to be changed.
In practice, DBIx::Simple 1.33 makes DBIx::Simple::OO obsolete.
AUTHOR¶
Juerd Waalboer <juerd@cpan.org> <http://juerd.nl/>
SEE ALSO¶
DBIx::Simple
2017-12-09 | perl v5.40.0 |