annotate Lib/IMPL/Object/Accessor.pm @ 290:7b0dad6117d5

*TTView: fixed memory leak
author sergey
date Wed, 20 Feb 2013 17:24:57 +0400
parents 4ddb27ff4a0b
children
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;
278
4ddb27ff4a0b core refactoring
cin
parents: 230
diff changeset
3
4ddb27ff4a0b core refactoring
cin
parents: 230
diff changeset
4 use parent qw(
4ddb27ff4a0b core refactoring
cin
parents: 230
diff changeset
5 IMPL::Object::Abstract
4ddb27ff4a0b core refactoring
cin
parents: 230
diff changeset
6 Class::Accessor
4ddb27ff4a0b core refactoring
cin
parents: 230
diff changeset
7 );
49
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
8
278
4ddb27ff4a0b core refactoring
cin
parents: 230
diff changeset
9 use IMPL::require {
4ddb27ff4a0b core refactoring
cin
parents: 230
diff changeset
10 ClassPropertyImplementor => '-IMPL::Code::AccessorPropertyImplementor'
4ddb27ff4a0b core refactoring
cin
parents: 230
diff changeset
11 };
4ddb27ff4a0b core refactoring
cin
parents: 230
diff changeset
12
4ddb27ff4a0b core refactoring
cin
parents: 230
diff changeset
13 require IMPL::Code::AccessorPropertyImplementor;
230
6d8092d8ce1b *reworked IMPL::Security
sergey
parents: 194
diff changeset
14
49
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
15 sub new {
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
16 my $class = shift;
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
17 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
18 $self->callCTOR(@_);
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
19 return $self;
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
20 }
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
21
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
22 sub surrogate {
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
23 $_[0]->Class::Accessor::new;
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
24 }
60
b0c068da93ac Lazy activation for the configuration objects (final concept)
wizard
parents: 49
diff changeset
25
49
16ada169ca75 migrating to the Eclipse IDE
wizard@linux-odin.local
parents: 4
diff changeset
26 1;