Take me over?
NAME
Fey::Meta::Class::Table - A metaclass for table classes
VERSION
version 0.47
SYNOPSIS
package MyApp::User;
use Fey::ORM::Table;
print __PACKAGE__->meta()->ClassForTable($table);
DESCRIPTION
This is the metaclass for table classes. When you use Fey::ORM::Table in your class, it uses this class to do all the heavy lifting.
METHODS
This class provides the following methods:
Fey::Meta::Class::Table->ClassForTable( $table1, $table2 )
Given one or more Fey::Table objects, this method returns the name of the class which "has" that table, if any.
Fey::Meta::Class::Table->TableForClass($class)
Given a class, this method returns the Fey::Table object associated with that class, if any.
$meta->table()
Returns the Fey::Table for the metaclass's class.
$meta->add_has_one(%options)
Creates a new Fey::Meta::HasOne::ViaFK or Fey::Meta::HasOne::ViaSelect object and adds it to the metaclass. Internally, this will call attach_to_class()
on the HasOne
meta-object.
$meta->has_ones()
Returns a list of the HasOne
objects added to this metaclass.
$meta->remove_has_one($name)
Removes the named HasOne
meta-object. Internally, this will call detach_from_class()
on the HasOne
meta-object.
$meta->add_has_many(%options)
Creates a new Fey::Meta::HasMany::ViaFK or Fey::Meta::HasMany::ViaSelect object and adds it to the metaclass. Internally, this will call attach_to_class()
on the HasMany
meta-object.
$meta->has_manies()
Returns a list of the HasMany
objects added to this metaclass.
$meta->remove_has_many($name)
Removes the named HasMany
meta-object. Internally, this will call detach_from_class()
on the HasMany
meta-object.
$meta->has_inflator($name)
Returns a boolean indicating whether or not there is an inflator defined for the named column.
$meta->has_deflator($name)
Returns a boolean indicating whether or not there is an inflator defined for the named column.
$meta->add_query_method(%options)
Adds a new Fey::Meta::Method::FromSelect method to the class. The %options
passed to this method will be passed to the Fey::Meta::Method::FromSelect constructor.
$meta->make_immutable()
This class overrides Moose::Meta::Class->make_immutable()
in order to do its own optimizations for immutability.
AUTHOR
Dave Rolsky <autarch@urth.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2011 - 2015 by Dave Rolsky.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.