comparison Lib/IMPL/Class/MemberInfo.pm @ 230:6d8092d8ce1b

*reworked IMPL::Security *reworked IMPL::Web::Security *refactoring
author sergey
date Mon, 08 Oct 2012 03:37:37 +0400
parents 431db7034a88
children 2904da230022
comparison
equal deleted inserted replaced
229:47f77e6409f7 230:6d8092d8ce1b
1 package IMPL::Class::MemberInfo; 1 package IMPL::Class::MemberInfo;
2 use strict; 2 use strict;
3 use IMPL::_core::version;
4 use parent qw(IMPL::Object::Accessor); 3 use parent qw(IMPL::Object::Accessor);
5 4
6 require IMPL::Exception; 5 require IMPL::Exception;
7 6
8 use constant {
9 MOD_PUBLIC => 1,
10 MOD_PROTECTED => 2,
11 MOD_PRIVATE => 3
12 };
13
14 #TODO remove Virtual
15 __PACKAGE__->mk_accessors( 7 __PACKAGE__->mk_accessors(
16 qw( 8 qw(
17 Name 9 Name
18 Access 10 Access
19 Virtual
20 Class 11 Class
21 Frozen 12 Frozen
22 Implementor 13 Implementor
23 Attributes 14 Attributes
24 ) 15 )
31 die new IMPL::Exception('The name is required for the member') unless $this->Name; 22 die new IMPL::Exception('The name is required for the member') unless $this->Name;
32 die new IMPL::Exception('The class is required for the member') unless $this->Class; 23 die new IMPL::Exception('The class is required for the member') unless $this->Class;
33 24
34 $this->Attributes({}) unless defined $this->Attributes; 25 $this->Attributes({}) unless defined $this->Attributes;
35 $this->Frozen(0); 26 $this->Frozen(0);
36 $this->Virtual(0) unless defined $this->Virtual;
37 $this->Access(3) unless $this->Access; 27 $this->Access(3) unless $this->Access;
38 } 28 }
39 29
40 sub Implement { 30 sub Implement {
41 my ($this) = @_; 31 my ($this) = @_;
74 64
75 Default public. 65 Default public.
76 66
77 Атрибут доступа ( public | private | protected ) 67 Атрибут доступа ( public | private | protected )
78 68
79 =item C<[get,set] Virtual>
80
81 Default false.
82
83 Флаг виртуальности.
84
85 =item C<[get,set] Class> 69 =item C<[get,set] Class>
86 70
87 Класс владелец 71 Класс владелец
88 72
89 =item C<[get,set] Frozen> 73 =item C<[get,set] Frozen>