407
|
1 package IMPL::Object::Accessor;
|
|
2 use strict;
|
|
3
|
|
4 use parent qw(
|
|
5 IMPL::Object::Abstract
|
|
6 Class::Accessor
|
|
7 );
|
|
8
|
|
9 use IMPL::require {
|
|
10 ClassPropertyImplementor => '-IMPL::Code::AccessorPropertyImplementor'
|
|
11 };
|
|
12
|
|
13 require IMPL::Code::AccessorPropertyImplementor;
|
|
14
|
|
15 sub new {
|
|
16 my $class = shift;
|
|
17 my $self = $class->Class::Accessor::new( @_ == 1 && ref $_[0] && UNIVERSAL::isa($_[0],'HASH') ? $_[0] : ());
|
|
18 $self->callCTOR(@_);
|
|
19 return $self;
|
|
20 }
|
|
21
|
|
22 sub surrogate {
|
|
23 $_[0]->Class::Accessor::new;
|
|
24 }
|
|
25
|
|
26 1;
|