diff Lib/IMPL/Class/MemberInfo.pm @ 163:6ce1f052b90a

temp commit
author wizard
date Tue, 15 Mar 2011 02:32:42 +0300
parents 44977efed303
children 76515373dac0
line wrap: on
line diff
--- a/Lib/IMPL/Class/MemberInfo.pm	Wed Dec 29 16:55:24 2010 +0300
+++ b/Lib/IMPL/Class/MemberInfo.pm	Tue Mar 15 02:32:42 2011 +0300
@@ -1,5 +1,6 @@
 package IMPL::Class::MemberInfo;
 use strict;
+use IMPL::_core::version;
 use base qw(IMPL::Object::Accessor);
 
 require IMPL::Exception;
@@ -38,13 +39,62 @@
     return;
 }
 
-#TODO: Debug version
-#sub set {
-#    my $this = shift;
-#    if ($this->Frozen) {
-#        die new IMPL::Exception('The member information is frozen', $this->Name);
-#    }
-#    $this->SUPER::set(@_);
-#}
+1;
+
+__END__
+
+=pod
+
+=head1 NAME
+
+C<IMPL::Class::MemberInfo> - информация о члене класса.
+
+=head1 DESCRIPTION
+
+Данный класс является базовым для таких классов как C<IMPL::Class::PropertyInfo>, C<IMPL::Class::MethodInfo> и 
+предназначен для хренения метаданных.
+
+Данный класс наследуется от C<IMPL::Object::Accessor> и не содержит в себе метаданных о своих членах.
+
+=head1 MEMBERS
+
+=over
+
+=item C<[get,set] Name>
+
+Имя члена.
+
+=item C<[get,set] Access>
+
+Default public.
 
-1;
+Атрибут доступа ( public | private | protected )
+
+=item C<[get,set] Virtual>
+
+Default false.
+
+Флаг виртуальности.
+
+=item C<[get,set] Class>
+
+Класс владелец
+        
+=item C<[get,set] Frozen>
+
+Флаг невозможности внесения изменений
+
+=item C<[get,set] Attributes>
+
+Дополнительные атрибуты
+
+=item C<Implement()>
+
+Устанавливает C<Frozen> в C<1>, добавляет в метаданные класса.
+
+При реализации собственного субкласса, данный метод может быть переопределен для
+реализации дополнительной обработки (например, создание методов доступа для свойств).
+
+=back
+
+=cut