Changes for version 0.56
- Class::MOP
- we now get the &check_package_cache_flag function from MRO::Compat
- All XS based functionality now has a Pure Perl alternative
- the CLASS_MOP_NO_XS environment variable can now be used to force non-XS versions to always be used
- Class::MOP::Attribute
- add has_read_method and has_write_method
- get_{read,write}_method_ref now wraps the anon-sub ref in the method metaclass when possible
- added tests for this
- Class::MOP::Immutable
- added the ability to "wrap" methods when making the class immutable
- Class::MOP::Class
- now handling the edge case of ->meta->identifier dying by wrapping add_package_symbol to specifically allow for it to work.
- added tests for this
- now handling the edge case of ->meta->identifier dying by wrapping add_package_symbol to specifically allow for it to work.
- Class::MOP::Attribute Class::MOP::Class Class::MOP::Immutable
- any time a method meta object is constructed we make sure to pass the correct package and method name information
- Class::MOP::Method Class::MOP::Method::Wrapped Class::MOP::Method::Generated Class::MOP::Method::Accessor Class::MOP::Method::Consructor
- the &wrap constructor method now requires that a 'package_name' and 'name' attribute are passed. This is to help support the no-XS version, and will throw an error if these are not supplied.
- all these classes are now bootstrapped properly and now store the package_name and name attributes correctly as well
- ~ Build.PL has been removed since the Module::Install support has been removed
Modules
A Meta Object Protocol for Perl 5
Attribute Meta Object
Class Meta Object
A class to transform Class::MOP::Class metaclasses
Instance Meta Object
Method Meta Object
Method Meta Object for accessors
Method Meta Object for constructors
Abstract base class for generated methods
Method Meta Object to handle before/around/after modifiers
Module Meta Object
Object Meta Object
Package Meta Object
a pragma for installing and using Class::MOP metaclasses