diff Lib/IMPL/Object/Meta.pm @ 278:4ddb27ff4a0b

core refactoring
author cin
date Mon, 04 Feb 2013 02:10:37 +0400
parents d1676be8afcc
children
line wrap: on
line diff
--- a/Lib/IMPL/Object/Meta.pm	Fri Feb 01 16:37:59 2013 +0400
+++ b/Lib/IMPL/Object/Meta.pm	Mon Feb 04 02:10:37 2013 +0400
@@ -2,21 +2,23 @@
 use strict;
 use warnings;
 
-use parent qw(IMPL::Object);
-use IMPL::Class::Property;
-use IMPL::Class::Property::Direct;
-
-BEGIN {
-    public _direct property Container => prop_get | owner_set;
-}
+use IMPL::Const qw(:prop);
+use IMPL::declare {
+    base => [
+        'IMPL::Object' => undef
+    ],
+    props => [
+        owner => PROP_RO
+    ]
+};
 
 sub meta {
     my $class = shift;
     my $caller = caller;
     my $meta = $class->surrogate();
-    $meta->IMPL::Object::Meta::Container(scalar caller);
+    $meta->owner(scalar caller);
     $meta->callCTOR(@_);
-    $caller->set_meta($meta);
+    $caller->SetMeta($meta);
 }
 
 1;