diff Lib/IMPL/declare.pm @ 279:af8af4b8337e

sync
author sergey
date Mon, 04 Feb 2013 17:16:45 +0400
parents 4ddb27ff4a0b
children c6d0f889ef87
line wrap: on
line diff
--- a/Lib/IMPL/declare.pm	Mon Feb 04 02:10:37 2013 +0400
+++ b/Lib/IMPL/declare.pm	Mon Feb 04 17:16:45 2013 +0400
@@ -73,8 +73,12 @@
 		}
 	}
 	
-	*{"${caller}::CTOR"} = \%ctor;
-    *{"${caller}::ISA"}  = \@isa;
+	%{"${caller}::CTOR"} = %ctor;
+    push @{"${caller}::ISA"}, @isa;
+    
+    if(ref($args->{meta}) eq 'ARRAY') {
+        $caller->SetMeta($_) foreach @{$args->{meta}};
+    }
 
 	my $props = $args->{props} || [];