NAME

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

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.

AUTHOR

Dave Rolsky, <autarch@urth.org>

BUGS

See MooseX::ClassAttribute for details.

COPYRIGHT & LICENSE

Copyright 2007-2010 Dave Rolsky, All Rights Reserved.

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