Mercurial > pub > Impl
comparison lib/IMPL/Class/TypeInfo.pm @ 411:ee36115f6a34 ref20150831
sync
author | cin |
---|---|
date | Mon, 21 Sep 2015 00:53:10 +0300 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
410:9335cf010b23 | 411:ee36115f6a34 |
---|---|
1 package IMPL::Class::TypeInfo; | |
2 use strict; | |
3 use mro; | |
4 | |
5 require v5.10; | |
6 | |
7 use IMPL::declare { | |
8 require => { | |
9 PropertyInfo => 'IMPL::Class::PropertyInfo' | |
10 }, | |
11 base => [ | |
12 'IMPL::Object' => undef | |
13 ], | |
14 props => [ | |
15 name => 'r', | |
16 _methods => 'rw', | |
17 _props => 'rw', | |
18 _type => 'rw' | |
19 ] | |
20 }; | |
21 | |
22 sub GetProperties { | |
23 my $this = shift; | |
24 | |
25 my $cache = $this->_props; | |
26 unless ($cache) { | |
27 $cache = $this->_type->GetMeta( PropertyInfo, undef, 1 ); | |
28 $this->_props($cache); | |
29 } | |
30 return $cache; | |
31 } | |
32 | |
33 1; |