package ScalarTieTest; use Carp; use strict; sub TIESCALAR { my $class = shift; my $scalar = shift; carp "ScalarTieTest::TIESCALAR($scalar)"; return bless \$scalar, $class; } sub FETCH { my $self = shift; confess "wrong type" unless ref $self; croak "usage error" if @_; carp "ScalarTieTest::FETCH()"; return $$self; } sub STORE { my $self = shift; confess "wrong type" unless ref $self; my $new_scalar = shift; croak "usage error" if @_; carp "ScalarTieTest::STORE($new_scalar)"; $$self=$new_scalar; return $new_scalar; } 1;