Changes for version 0.30
- This is the first version of Class::MOP to introduce the immutable features which will be used for optimizating the MOP. This support should still be considered experimental, but moving towards stability.
- Created Class::MOP::Class::Immutable
- Created the Class::MOP::Package and Class::MOP::Module classes to more closely conform to Perl 6's meta-model
- Class::MOP::Class
- now inherits from Class::MOP::Module
- several methods moved to ::Module and ::Package and now inherited
- added tests for this
- Class::MOP::Instance
- added an is_inlinable method to allow other classes to check before they attempt to optimize.
- added an inline_create_instance to inline instance creation (of course)
- API CHANGE **
- the Class::MOP::Class::*_package_variable methods are all now methods of Class::MOP::Package and called *_package_symbol instead. This is because they are now more general purpose symbol table manipulation methods.
Changes for version 0.29_02
- DEVELOPER RELEASE ++
- Class::MOP::Class
- small change in &create so that it behaves properly when inherited
- small fix to &clone_instance
Changes for version 0.29_01
- DEVELOPER RELEASE ++
- This release works in combination with Moose 0.09_01, it is a developer release because it introduces a new instance sub-protocol and has not yet been optimized.
- Class::MOP::Class
- anon-classes are now properly garbage collected
- added tests for this
- improved method modifier wrapping
- anon-classes are now properly garbage collected
- Class::MOP::Instance
- added new instance protocol
- added tests for this
- changed all relevant modules and examples
- Class::MOP::Class
- Class::MOP::Attribute
- examples/*
- added new instance protocol
- metaclass
- you no longer need to specify the metaclass itself, if it is not there, Class::MOP::Class is just assumed
- updated tests for this
- you no longer need to specify the metaclass itself, if it is not there, Class::MOP::Class is just assumed
- examples/
- added ArrayBasedStorage example to show instance storage using ARRAY refs instead of HASH refs.
- added tests for this
- InsideOutClass is totally revised using the new instance protocol
- added more tests for this
- added ArrayBasedStorage example to show instance storage using ARRAY refs instead of HASH refs.
Modules
A Meta Object Protocol for Perl 5
Attribute Meta Object
Class Meta Object
An immutable version of Class::MOP::Class
Instance Meta Object
Method Meta Object
Module Meta Object
Package Meta Object
a pragma for installing and using Class::MOP metaclasses
Provides
in lib/Class/MOP/Attribute.pm
in lib/Class/MOP/Method.pm