Tie-Symbol
view release on metacpan or search on metacpan
lib/Tie/Symbol.pm view on Meta::CPAN
sub TIEHASH {
my ( $class, $namespace ) = @_;
$namespace //= 'main';
my $classname = ref $class || $class;
my $self = { ns => "$namespace", };
bless $self => $classname;
}
sub FETCH {
my ( $self, $name, $force ) = @_;
return $self->{$name} if ( not $force and scalar caller eq __PACKAGE__ );
my $namespace = $self->namespace;
if ( my ( $sigil, $label ) = ( $name =~ m{^([\$\@\%\&])(.+)$} ) ) {
my $type = $sigils{$sigil};
my $symbol = *{"${namespace}::${label}"} // return;
my $referent = *{$symbol}{$type} // return;
( run in 0.600 second using v1.01-cache-2.11-cpan-65fba6d93b7 )