bionic (3) Moose::Meta::Role::Composite.3pm.gz

Provided by: libmoose-perl_2.2009-1_amd64 bug

NAME

       Moose::Meta::Role::Composite - An object to represent the set of roles

VERSION

       version 2.2009

DESCRIPTION

       A composite is a role that consists of a set of two or more roles.

       The API of a composite role is almost identical to that of a regular role.

INHERITANCE

       "Moose::Meta::Role::Composite" is a subclass of Moose::Meta::Role.

METHODS

   Moose::Meta::Role::Composite->new(%options)
       This returns a new composite role object. It accepts the same options as its parent class, with a few
       changes:

       •   roles

           This option is an array reference containing a list of Moose::Meta::Role object. This is a required
           option.

       •   name

           If a name is not given, one is generated from the roles provided.

       •   apply_params(\%role_params)

           Creates a new RoleSummation role application with %role_params and applies the composite role to it.
           The RoleSummation role application class used is determined by the composite role's
           "application_role_summation_class" attribute.

       •   reinitialize($metaclass)

           Like "Class::MOP::Package->reinitialize", but doesn't allow passing a string with the package name,
           as there is no real package for composite roles.

BUGS

       See "BUGS" in Moose for details on reporting bugs.

AUTHORS

       •   Stevan Little <stevan.little@iinteractive.com>

       •   Dave Rolsky <autarch@urth.org>

       •   Jesse Luehrs <doy@tozt.net>

       •   Shawn M Moore <code@sartak.org>

       •   יובל קוג'מן (Yuval Kogman) <nothingmuch@woobling.org>

       •   Karen Etheridge <ether@cpan.org>

       •   Florian Ragwitz <rafl@debian.org>

       •   Hans Dieter Pearcey <hdp@weftsoar.net>

       •   Chris Prather <chris@prather.org>

       •   Matt S Trout <mst@shadowcat.co.uk>

       This software is copyright (c) 2006 by Infinity Interactive, Inc.

       This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5
       programming language system itself.