The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

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)