annotate Lib/IMPL/Object/Accessor.pm @ 54:f4e045e47770

commit
author wizard@linux-odin.local
date Tue, 02 Mar 2010 20:15:57 +0300
parents 16ada169ca75
children b0c068da93ac
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
49
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
1 package IMPL::Object::Accessor;
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
2 use strict;
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
3 use base qw(IMPL::Object::Abstract Class::Accessor IMPL::Class::Meta);
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
4
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
5 sub new {
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
6 my $class = shift;
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
7 my $self = $class->Class::Accessor::new( @_ == 1 && ref $_[0] && UNIVERSAL::isa($_[0],'HASH') ? $_[0] : ());
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
8 $self->callCTOR(@_);
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
9 return $self;
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
10 }
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
11
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
12 sub surrogate {
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
13 $_[0]->Class::Accessor::new;
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
14 }
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
15 1;