immutable refacotring
[gitmo/Class-MOP.git] / lib / Class / MOP.pm
index 66db0e2..adbccfa 100644 (file)
@@ -373,6 +373,56 @@ Class::MOP::Method::Wrapped->meta->add_attribute(
 );
 
 ## --------------------------------------------------------
+## Class::MOP::Method::Accessor
+
+Class::MOP::Method::Accessor->meta->add_attribute(
+    Class::MOP::Attribute->new('attribute' => (
+        reader => { 
+            'associated_attribute' => \&Class::MOP::Method::Accessor::associated_attribute 
+        },
+    ))    
+);
+
+Class::MOP::Method::Accessor->meta->add_attribute(
+    Class::MOP::Attribute->new('accessor_type' => (
+        reader => { 'accessor_type' => \&Class::MOP::Method::Accessor::accessor_type },
+    ))    
+);
+
+Class::MOP::Method::Accessor->meta->add_attribute(
+    Class::MOP::Attribute->new('is_inline' => (
+        reader => { 'is_inline' => \&Class::MOP::Method::Accessor::is_inline },
+    ))    
+);
+
+## --------------------------------------------------------
+## Class::MOP::Method::Constructor
+
+Class::MOP::Method::Constructor->meta->add_attribute(
+    Class::MOP::Attribute->new('options' => (
+        reader => { 
+            'options' => \&Class::MOP::Method::Constructor::options 
+        },
+    ))    
+);
+
+Class::MOP::Method::Constructor->meta->add_attribute(
+    Class::MOP::Attribute->new('meta_instance' => (
+        reader => { 
+            'meta_instance' => \&Class::MOP::Method::Constructor::meta_instance 
+        },
+    ))    
+);
+
+Class::MOP::Method::Constructor->meta->add_attribute(
+    Class::MOP::Attribute->new('attributes' => (
+        reader => { 
+            'attributes' => \&Class::MOP::Method::Constructor::attributes 
+        },
+    ))    
+);
+
+## --------------------------------------------------------
 ## Class::MOP::Instance
 
 # NOTE:
@@ -412,7 +462,8 @@ $_->meta->make_immutable(
     Class::MOP::Object   
 
     Class::MOP::Method::Accessor
-    Class::MOP::Method::Wrapped    
+    Class::MOP::Method::Constructor    
+    Class::MOP::Method::Wrapped           
 /;
 
 1;