NAME

Fey::Role::MakesAliasObjects - A role for objects with separate alias objects

VERSION

version 0.43

SYNOPSIS

package My::Thing;

use Moose 2.1200;

with 'Fey::Role::MakesAliasObjects'
    => { alias_class => 'My::Alias',
         self_param  => 'thing',
         name_param  => 'alias_name',
       };

DESCRIPTION

This role adds a "make an alias object" method to a class. This is for things like tables and columns, which can have aliases.

PARAMETERS

alias_class

The name of the class whose new() is called by the alias() method (see below). Required.

self_param

The name of the parameter to pass $self to the alias_class' new() method as. Required.

name_param

The name of the parameter to alias() that passing a single string is assumed to be. Defaults to alias_name.

METHODS

$obj->alias()

my $alias = $obj->alias(alias_name => 'an_alias', %other_params);

my $alias = $obj->alias('an_alias');

Create a new alias for this object. If a single parameter is provided, it is assumed to be whatever the name_param parameter specifies (see above).

BUGS

See Fey for details on how to report bugs.

AUTHOR

Dave Rolsky <autarch@urth.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2011 - 2015 by Dave Rolsky.

This is free software, licensed under:

The Artistic License 2.0 (GPL Compatible)