X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FClass%2FMOP%2FInstance.pm;h=a9d5a5d36ddf95e28d21616fa1786d68b661db43;hb=8ee74136c5d5c5a6416844e7238898f47b00f553;hp=3eae0c12a45fe78d6a865c9fb7d8922e7125e863;hpb=230472a7d408d93238875666b1369406e8967de3;p=gitmo%2FClass-MOP.git diff --git a/lib/Class/MOP/Instance.pm b/lib/Class/MOP/Instance.pm index 3eae0c1..a9d5a5d 100644 --- a/lib/Class/MOP/Instance.pm +++ b/lib/Class/MOP/Instance.pm @@ -182,24 +182,19 @@ Class::MOP::Instance - Instance Meta Object =head1 SYNOPSIS - # for the most part, this protocol is internal - # and not for public usage, but this how one - # might use it - - package Foo; - - use strict; - use warnings; - use metaclass ( - ':instance_metaclass' => 'ArrayBasedStorage::Instance', - ); - - # now Foo->new produces blessed ARRAY ref based objects + # This API is largely internal + # you shouldn't need it unless you are writing meta attributes or meta + # instances =head1 DESCRIPTION -This is a sub-protocol which governs instance creation -and access to the slots of the instance structure. +The meta instance is used by attributes for low level storage. + +Using this API generally violates attribute encapsulation and is not +reccomended, instead look at L, +L for the reccomended way to fiddle with +attribute values in a generic way, independant of how/whether accessors have +been defined. Accessors can be found using L. This may seem like over-abstraction, but by abstracting this process into a sub-protocol we make it possible to