Changes for version 0.39

  • Class::MOP::Immutable
    • added make_metaclass_mutable + docs (groditi)
    • removed unused variable
    • added create_immutable_transformer necessary for sane overloading of immutable behavior
      • tests for this (groditi)
  • Class::MOP::Class
    • Immutability can now be undone, added make_mutable + tests + docs (groditi)
    • Massive changes to the way Immutable is done for details see comments next to make_immutable This fixes a bug where custom metaclasses broke when made immutable. We are now keeping one immutable metaclass instance per metaclass instead of just one to prevent isa hierarchy corruption. Memory use will go up, but I suspect it will be neglible.
      • New tests added for this behavior. (groditi)

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
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