Attribute-Tie
view release on metacpan or search on metacpan
lib/Attribute/Tie.pm view on Meta::CPAN
}
# DB_File, et al.
eval qq{ require $mod2tie };
return $MOD2TIE{$mod2tie} = $mod2tie unless $@;
# Anything else
eval qq{ require Tie::$mod2tie };
return $MOD2TIE{$mod2tie} = 'Tie::'.$mod2tie unless $@;
# Report Failure and die
my ( $pkg, $file, $line ) = caller(4);
die "Neither $mod2tie nor Tie::$mod2tie is available",
" at $file line $line\n";
}
sub error {
my ( $ref, $mod2tie, @tiearg ) = @_;
my ( $pkg, $file, $line ) = caller(4);
my $s = $SIGIL{ ref $ref };
die "tie(", join( ", ", $s . ref $ref, qq('$mod2tie'), @tiearg ),
") failed : $! at $file line $line\n";
}
sub UNIVERSAL::Tie : ATTR {
my ( $pkg, $sym, $ref, $attr, $data, $phase ) = @_;
my @tiearg = ref $data ? @$data : ($data);
my $mod2tie = Attribute::Tie::load(shift @tiearg, $ref);
my $obj =
( run in 0.730 second using v1.01-cache-2.11-cpan-a9ef4e587e4 )