summaryrefslogtreecommitdiff
path: root/benchmarks/cmop/lib/Plain/Point.pm
diff options
context:
space:
mode:
Diffstat (limited to 'benchmarks/cmop/lib/Plain/Point.pm')
-rw-r--r--benchmarks/cmop/lib/Plain/Point.pm44
1 files changed, 44 insertions, 0 deletions
diff --git a/benchmarks/cmop/lib/Plain/Point.pm b/benchmarks/cmop/lib/Plain/Point.pm
new file mode 100644
index 0000000..3a69f56
--- /dev/null
+++ b/benchmarks/cmop/lib/Plain/Point.pm
@@ -0,0 +1,44 @@
+#!/usr/bin/perl
+
+package Plain::Point;
+
+use strict;
+use warnings;
+
+sub new {
+ my ( $class, %params ) = @_;
+
+ return bless {
+ x => $params{x} || 10,
+ y => $params{y},
+ }, $class;
+}
+
+sub x {
+ my ( $self, @args ) = @_;
+
+ if ( @args ) {
+ $self->{x} = $args[0];
+ }
+
+ return $self->{x};
+}
+
+sub y {
+ my ( $self, @args ) = @_;
+
+ if ( @args ) {
+ $self->{y} = $args[0];
+ }
+
+ return $self->{y};
+}
+
+sub clear {
+ my $self = shift;
+ @{$self}{qw/x y/} = (0, 0);
+}
+
+__PACKAGE__;
+
+__END__