Scroll to navigation

MooseX::ClassAttribute::Trait::Role(3pm) User Contributed Perl Documentation MooseX::ClassAttribute::Trait::Role(3pm)
 

NAME

MooseX::ClassAttribute::Trait::Role - A trait for roles with class attributes

VERSION

version 0.27

SYNOPSIS

  for my $attr ( HasClassAttributes->meta()->get_all_class_attributes() )
  {
      print $attr->name();
  }

DESCRIPTION

This role adds awareness of class attributes to a role metaclass object. It provides a set of introspection methods that largely parallel the existing attribute methods, except they operate on class attributes.

METHODS

Every method provided by this role has an analogous method in "Class::MOP::Class" or "Moose::Meta::Class" for regular attributes.

$meta->has_class_attribute($name)

$meta->get_class_attribute($name)

$meta->get_class_attribute_list()

These methods are exactly like their counterparts in MooseX::ClassAttribute::Trait::Class.

$meta->add_class_attribute(...)

This accepts the same options as the Moose::Meta::Attribute "add_attribute()" method. However, if an attribute is specified as "required" an error will be thrown.

$meta->remove_class_attribute($name)

If the named class attribute exists, it is removed from the role.

BUGS

See MooseX::ClassAttribute for details.

AUTHOR

Dave Rolsky <autarch@urth.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2013 by Dave Rolsky.
This is free software, licensed under:
  The Artistic License 2.0 (GPL Compatible)
2013-03-28 perl v5.14.2