diff Lib/IMPL/Object/Meta.pm @ 63:76b878ad6596

Added serialization support for the IMPL::Object::List More intelligent Exception message Fixed encoding support in the actions Improoved tests Minor fixes
author wizard
date Mon, 15 Mar 2010 02:38:09 +0300
parents 16ada169ca75
children 42fbb38d4a48
line wrap: on
line diff
--- a/Lib/IMPL/Object/Meta.pm	Fri Mar 12 16:23:46 2010 +0300
+++ b/Lib/IMPL/Object/Meta.pm	Mon Mar 15 02:38:09 2010 +0300
@@ -7,17 +7,42 @@
 use IMPL::Class::Property::Direct;
 
 BEGIN {
-    public _direct property Container => prop_get;
+    public _direct property Container => prop_get | owner_set;
 }
 
 sub meta {
     my $class = shift;
     my $caller = caller;
     my $meta = $class->surrogate();
-    $meta->{$Container} = $caller;
+    $meta->IMPL::Object::Meta::Container(caller);
     $meta->callCTOR(@_);
     $caller->set_meta($meta);
 }
 
+1;
 
-1;
+__END__
+
+=pod
+
+=head1 SYNOPSIS
+
+package Foo;
+
+meta BarAttribute('Simple bar attribute'); #mark Foo with BarAttribute
+
+=head1 DESCRIPTION
+
+Базовый класс для мета-свойств класса. Определяет оператор C< meta > для создания метаданных в вызвавшем классе.
+
+=head1 MEMBERS
+
+=over
+
+=item C< Container >
+
+Свойство заполняется до вызова конструктора и содержит имя модуля к которому применяется атрибут.
+
+=back
+
+=cut
\ No newline at end of file