Stevan, Thanks for the help. I am getting the following exception:
Can't locate object method "excludes_role" via package "Class::MOP::Class" at lib/Moose/Meta/Role/Application/ToClass.pm line 25. I'm building a class from a YAML spec, and I want to add a trait to every attribute I pull from the YAML file: use YAML; use Moose; use My::Super; use My::Trait; my $file = shift @ARGV; my $yaml = YAML::LoadFile($file); my $rowclass = Moose::Meta::Class->create( "My::Class", superclasses => ['My::Super'], ); my %columns = @{ $yaml->{columns} }; while (my ($name, $params) = each %columns) { my $attr = Moose::Meta::Attribute->new($name, %$params); * My::Trait->meta->apply($attr); * $rowclass->add_attribute($attr); } Am I doing something wrong? On Mon, Jun 9, 2008 at 3:24 PM, Stevan Little < [EMAIL PROTECTED]> wrote: > Dan, > > Something like this maybe? > > My::Trait->meta->apply(My::Class->meta->get_attribute('foo')); > > - Stevan > > > On Jun 9, 2008, at 4:21 PM, Dan Harbin wrote: > > Is there a way to add a trait to an attribute at runtime? I know it can >> be >> done through the "new" method of Moose::Meta::Attribute, but what about >> adding one after it's been initialized? >> >> Thanks, >> Dan >> > >