Acme-Class-Std
view release on metacpan or search on metacpan
}
sub ID ($) {
my ($package, undef, undef, $sub) = caller 1;
if ($sub eq 'Class::Std::new' && $_[0]->isa('SCALAR')
&& ($all || $enhanced{ref $_[0]})) {
# Strangely, it seems that one can dup an unopened file handle without
# warnings.
eval "open $count, '<&dead'";
my $ref = *{delete $Acme::Class::Std::{$count++}}{IO};
$_[0] = bless $ref, ref $_[0];
}
goto &Scalar::Util::refaddr;
}
{
local $^W;
*Class::Std::ID = \&ID;
}
__END__
=item Data::Dumper
package Kakroosh;
use Acme::Class::Std;
package main;
$o = Foo->new;
use Data::Dumper;
print Dumper $o;
cannot handle ref type 15 at /usr/local/lib/perl5/5.8.8/i386-freebsd/Data/Dumper.pm line 179.
$VAR1 = bless( , 'Foo' );
=item Storable
package Kakroosh;
use Acme::Class::Std;
package main;
$o = Foo->new;
use Storable;
my $f = Storable::freeze $o;
( run in 0.508 second using v1.01-cache-2.11-cpan-de7293f3b23 )