X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FClass%2FMOP.pm;h=dbc413632607fc152cbb45caefad4d76b67d6684;hb=b616440737a53f030c5b11b8e5bd5af17e76b641;hp=7e450d7ad9a5e02ee89885ceb82d207ce39d0ef7;hpb=0f71bc80505429a2f3fe0e69f22348b4707b8a07;p=gitmo%2FClass-MOP.git diff --git a/lib/Class/MOP.pm b/lib/Class/MOP.pm index 7e450d7..dbc4136 100644 --- a/lib/Class/MOP.pm +++ b/lib/Class/MOP.pm @@ -336,6 +336,27 @@ Class::MOP::Attribute->meta->add_method('clone' => sub { }); ## -------------------------------------------------------- +## Class::MOP::Method + +Class::MOP::Method->meta->add_attribute( + Class::MOP::Attribute->new('body' => ( + reader => 'body' + )) +); + +## -------------------------------------------------------- +## Class::MOP::Method::Wrapped + +# NOTE: +# the way this item is initialized, this +# really does not follow the standard +# practices of attributes, but we put +# it here for completeness +Class::MOP::Method::Wrapped->meta->add_attribute( + Class::MOP::Attribute->new('modifier_table') +); + +## -------------------------------------------------------- ## Now close all the Class::MOP::* classes Class::MOP::Package ->meta->make_immutable(inline_constructor => 0); @@ -346,6 +367,10 @@ Class::MOP::Method ->meta->make_immutable(inline_constructor => 0); Class::MOP::Instance ->meta->make_immutable(inline_constructor => 0); Class::MOP::Object ->meta->make_immutable(inline_constructor => 0); +# Class::MOP::Method subclasses +Class::MOP::Attribute::Accessor->meta->make_immutable(inline_constructor => 0); +Class::MOP::Method::Wrapped ->meta->make_immutable(inline_constructor => 0); + 1; __END__