in reply to Re^2: Avoiding circular references
in thread Avoiding circular references
So you pass $dbi as an argument.
package A; sub new { my ( $class, $href ) = @_; my $self = { dbi => $$href{dbi} }; $self->{helper} = Helper->new( helper_function => sub { my $dbi = $$href{dbi}; return $self->this_is_from_A($dbi, @_); # p +ass $dbi } ); bless $self, $class; } sub do_something { my $self = shift; $self->{helper}->called_from_helper(); } sub this_is_from_A { my ($self, $dbi, $arg) = @_; # r +eceive $dbi print "$arg\nthis_is_from_A using $dbi\n"; }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: Avoiding circular references
by frazap (Monk) on Dec 06, 2019 at 15:16 UTC | |
by haj (Vicar) on Dec 06, 2019 at 19:27 UTC |