MooseX::ClassAttribute::Trait::Role(3)

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)