foo
Stevan Little [Fri, 30 Jun 2006 16:12:34 +0000 (16:12 +0000)]
Changes
bench/lib/MOP/Installed/Point.pm [new file with mode: 0644]
bench/lib/MOP/Installed/Point3D.pm [new file with mode: 0644]
lib/Class/MOP.pm

diff --git a/Changes b/Changes
index 17e1d80..15a2be8 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,5 +1,25 @@
 Revision history for Perl extension Class-MOP.
 
+0.29_03
+    ++ DEVELOPER RELEASE ++
+    
+    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
+    
+    ** 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.
+
 0.29_02 Thurs. June 22, 2006
     ++ DEVELOPER RELEASE ++
     * Class::MOP::Class
diff --git a/bench/lib/MOP/Installed/Point.pm b/bench/lib/MOP/Installed/Point.pm
new file mode 100644 (file)
index 0000000..eb96573
--- /dev/null
@@ -0,0 +1,24 @@
+
+package MOP::Point;
+
+use strict;
+use warnings;
+use metaclass;
+
+__PACKAGE__->meta->add_attribute('x' => (accessor => 'x'));
+__PACKAGE__->meta->add_attribute('y' => (accessor => 'y'));
+
+sub new {
+    my $class = shift;
+    $class->meta->new_object(@_);
+}
+
+sub clear {
+    my $self = shift;
+    $self->x(0);
+    $self->y(0);    
+}
+
+1;
+
+__END__
\ No newline at end of file
diff --git a/bench/lib/MOP/Installed/Point3D.pm b/bench/lib/MOP/Installed/Point3D.pm
new file mode 100644 (file)
index 0000000..2bd544d
--- /dev/null
@@ -0,0 +1,20 @@
+
+package MOP::Point3D;
+
+use strict;
+use warnings;
+use metaclass;
+
+use base 'MOP::Point';
+
+__PACKAGE__->meta->add_attribute('z' => (accessor => 'z'));
+
+sub clear {
+    my $self = shift;
+    $self->SUPER::clear();
+    $self->z(0);    
+}
+
+1;
+
+__END__
\ No newline at end of file
index a646245..afc68bc 100644 (file)
@@ -13,7 +13,7 @@ use Class::MOP::Method;
 
 use Class::MOP::Class::Immutable;
 
-our $VERSION = '0.29_02';
+our $VERSION = '0.29_03';
 
 ## ----------------------------------------------------------------------------
 ## Setting up our environment ...