Fey::Role::MakesAliasObjects(3)

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

VERSION
version 0.44

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.

Bugs may be submitted at <https://github.com/ap/Fey/issues>.

SOURCE
The source code repository for Fey can be found at <https://github.com/ap/Fey>.

AUTHOR
Dave Rolsky <autarch@urth.org>

COPYRIGHT AND LICENSE
This software is Copyright (c) 2011 - 2025 by Dave Rolsky.

This is free software, licensed under:

  The Artistic License 2.0 (GPL Compatible)

The full text of the license can be found in the LICENSE file included with this distribution.