
Fey::Meta::HasOne - A parent for has-one metaclasses

This class exists to provide a common parent for the two has-one metaclasses, Fey::Meta::HasOne::ViaFK and Fey::Meta::HasOne::ViaSelect.

This class accepts the following constructor options:
This will simply be passed on when an attribute for this has-one relationship is created.
Note that this is ignore if is_cached is false.
A boolean indicating whether or not the relationship's value can be undef.
Defaults to true for this class.

This provides the following methods:
Corresponds to the value passed to the constructor.
Corresponds to the value passed to the constructor.
Corresponds to the value passed to the constructor.
Corresponds to the value passed to the constructor, or the calculated default.
Corresponds to the value passed to the constructor.
Corresponds to the value passed to the constructor.
This method takes a Fey::Meta::Class::Table object and attaches the relationship to the associated class. If this relationship is cached, it creates a new attribute, otherwise it creates a new method.
The method/attribute returns an object belonging to the class associated with the foreign table.
It can return undef if allows_undef is true.
The class associated with this object.
This is undefined until $ho->attach_to_class() is called.
Returns the attribute associated with this object, if any.
Returns the method associated with this object, if any.
If this object was attached to a class,
it removes any attribute or method it made,
and unsets the associated_class.

Dave Rolsky, <autarch@urth.org>

See Fey::ORM for details.

Copyright 2006-2009 Dave Rolsky, All Rights Reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of the license can be found in the LICENSE file included with this module.