5 use Variable::Magic qw(wizard cast);
7 BEGIN { package Foo; sub DESTROY { warn "in DESTROY\n"; } }
9 my $wiz = wizard data => sub { $_[1] },
10 free => sub { warn "destroyed $_[1]!\n"; };
21 cast $foo, $wiz, '$foo';
22 cast %foo, $wiz, '%foo';
31 cast %foo, $wiz, '%foo';
37 cast $foo, $wiz, '$foo';
41 warn "End of block\n";