in reply to De-Overload reference?
perl -E ' use v5.36; use overload q{%{}} => sub { { foo => 1 } }; sub foo { $_[0]->$*->{foo} } my $x= bless \{ foo => 2 }, "main"; say $x->foo; '
perl -E ' use v5.36; use Scalar::Util "refaddr"; use overload q{%{}} => sub { { foo => 1 } }; our %attrs; sub new { my $self= bless {}, shift; $attrs{refaddr $self}= { @_ }; $s +elf } sub DESTROY { delete $attrs{refaddr $_[0]} } sub foo { $attrs{refaddr $_[0]}{foo} } my $x= main->new(foo => 2); say $x->foo; '
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: De-Overload reference?
by LanX (Saint) on Apr 17, 2024 at 22:41 UTC | |
by NERDVANA (Priest) on Apr 18, 2024 at 02:47 UTC | |
|
Re^2: De-Overload reference?
by ikegami (Patriarch) on Apr 17, 2024 at 21:00 UTC | |
by NERDVANA (Priest) on Apr 17, 2024 at 23:12 UTC | |
by LanX (Saint) on Apr 17, 2024 at 22:15 UTC |