Populate insertion_order when attributes are added
nperez [Fri, 8 May 2009 18:10:24 +0000 (13:10 -0500)]
lib/Class/MOP/Class.pm

index 82ca2b2..1889d04 100644 (file)
@@ -827,6 +827,10 @@ sub add_attribute {
     } else {
         $self->invalidate_meta_instances();
     }
+    
+    # get our count of previously inserted attributes and
+    # increment by one so this attribute knows its order
+    $attribute->insertion_order((scalar keys %{$self->get_attribute_map}) + 1);
 
     # then onto installing the new accessors
     $self->get_attribute_map->{$attribute->name} = $attribute;