Class::MOP::Class::Immutable
[gitmo/Class-MOP.git] / bench / lib / MOP / Immutable / Point.pm
diff --git a/bench/lib/MOP/Immutable/Point.pm b/bench/lib/MOP/Immutable/Point.pm
new file mode 100644 (file)
index 0000000..0461bb8
--- /dev/null
@@ -0,0 +1,26 @@
+
+package MOP::Immutable::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);    
+}
+
+__PACKAGE__->meta->make_immutable;
+
+1;
+
+__END__
\ No newline at end of file