diff Lib/IMPL/Object/Serializable.pm @ 49:16ada169ca75

migrating to the Eclipse IDE
author wizard@linux-odin.local
date Fri, 26 Feb 2010 10:49:21 +0300
parents 03e58a454b20
children c8fe3f84feba
line wrap: on
line diff
--- a/Lib/IMPL/Object/Serializable.pm	Fri Feb 26 01:43:42 2010 +0300
+++ b/Lib/IMPL/Object/Serializable.pm	Fri Feb 26 10:49:21 2010 +0300
@@ -1,54 +1,54 @@
-package IMPL::Object::Serializable;
-use strict;
-use warnings;
-
-require IMPL::Exception;
-use IMPL::Class::Property;
-
-sub restore {
-    my ($class,$data,$refSurrogate) = @_;
-    
-    if ($refSurrogate) {
-        $refSurrogate->callCTOR(@$data);
-        return $refSurrogate;
-    } else {
-        return $class->new(@$data);
-    }
-}
-
-sub save {
-    my ($this,$ctx,$predicate) = @_;
-    
-    ($this->_get_save_method)->($this,$ctx);
-}
-
-sub _get_save_method {
-    my ($class) = @_;
-    
-    $class = ref $class || $class;
-    
-    no strict 'refs';
-    if (my $method = *{"${class}::_impl_auto_save"}{CODE}) {
-        return $method;
-    } else {
-        my $code = <<SAVE_METHOD;
-package $class;
-sub _impl_auto_save {
-    my (\$this,\$ctx) = \@_;
-SAVE_METHOD
-    
-        $code .=
-        join "\n", map "\t".'$ctx->AddVar('.$_->Name.' => ' .
-            ((not ref $_->Mutators and $_->Mutators & prop_list) ? ('[$this->'.$_->Class.'::'.$_->Name.'()]') : ('$this->'.$_->Class.'::'.$_->Name.'()')) .
-        ') if defined ' . '$this->'.$_->Class.'::'.$_->Name.'()' . ';', grep $_->canGet, $class->get_meta('IMPL::Class::PropertyInfo',undef,1);
-        $code .= <<SAVE_METHOD;
-
-}
-\\\&_impl_auto_save;
-SAVE_METHOD
-
-        return (eval $code || die new IMPL::Exception("Failed to generate serialization method",$class,$@));
-    }
-}
-
-1;
+package IMPL::Object::Serializable;
+use strict;
+use warnings;
+
+require IMPL::Exception;
+use IMPL::Class::Property;
+
+sub restore {
+    my ($class,$data,$refSurrogate) = @_;
+    
+    if ($refSurrogate) {
+        $refSurrogate->callCTOR(@$data);
+        return $refSurrogate;
+    } else {
+        return $class->new(@$data);
+    }
+}
+
+sub save {
+    my ($this,$ctx,$predicate) = @_;
+    
+    ($this->_get_save_method)->($this,$ctx);
+}
+
+sub _get_save_method {
+    my ($class) = @_;
+    
+    $class = ref $class || $class;
+    
+    no strict 'refs';
+    if (my $method = *{"${class}::_impl_auto_save"}{CODE}) {
+        return $method;
+    } else {
+        my $code = <<SAVE_METHOD;
+package $class;
+sub _impl_auto_save {
+    my (\$this,\$ctx) = \@_;
+SAVE_METHOD
+    
+        $code .=
+        join "\n", map "\t".'$ctx->AddVar('.$_->Name.' => ' .
+            ((not ref $_->Mutators and $_->Mutators & prop_list) ? ('[$this->'.$_->Class.'::'.$_->Name.'()]') : ('$this->'.$_->Class.'::'.$_->Name.'()')) .
+        ') if defined ' . '$this->'.$_->Class.'::'.$_->Name.'()' . ';', grep $_->canGet, $class->get_meta('IMPL::Class::PropertyInfo',undef,1);
+        $code .= <<SAVE_METHOD;
+
+}
+\\\&_impl_auto_save;
+SAVE_METHOD
+
+        return (eval $code || die new IMPL::Exception("Failed to generate serialization method",$class,$@));
+    }
+}
+
+1;