Mercurial > pub > Impl
diff lib/IMPL/Class/TypeInfo.pm @ 411:ee36115f6a34 ref20150831
sync
author | cin |
---|---|
date | Mon, 21 Sep 2015 00:53:10 +0300 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lib/IMPL/Class/TypeInfo.pm Mon Sep 21 00:53:10 2015 +0300 @@ -0,0 +1,33 @@ +package IMPL::Class::TypeInfo; +use strict; +use mro; + +require v5.10; + +use IMPL::declare { + require => { + PropertyInfo => 'IMPL::Class::PropertyInfo' + }, + base => [ + 'IMPL::Object' => undef + ], + props => [ + name => 'r', + _methods => 'rw', + _props => 'rw', + _type => 'rw' + ] +}; + +sub GetProperties { + my $this = shift; + + my $cache = $this->_props; + unless ($cache) { + $cache = $this->_type->GetMeta( PropertyInfo, undef, 1 ); + $this->_props($cache); + } + return $cache; +} + +1;