in reply to Re: Call subroutine of main namespace from package in Plack
in thread Call subroutine of main namespace from package in Plack

Hello thanos, I want to do the contrary. Get value from main script and retrieve in module. Thanks.
  • Comment on Re^2: Call subroutine of main namespace from package in Plack

Replies are listed 'Best First'.
Re^3: Call subroutine of main namespace from package in Plack
by stevieb (Canon) on Apr 11, 2018 at 15:07 UTC

    That's rather backwards. Instead, create a function in the module, and from main, call that function with the required parameters.

Re^3: Call subroutine of main namespace from package in Plack
by thanos1983 (Parson) on Apr 11, 2018 at 15:11 UTC

    Hello again Thenothing,

    When you say contrary you mean this?

    main.pl

    #!/usr/bin/perl use strict; use warnings; use Mypackage; my $object = new Mypackage(); $object->setValue(100); print $object->getValue() . "\n"; # retrievable from any script __END__ $ perl main.pl 100

    Mypackage.pm

    package Mypackage; use strict; use warnings; sub new { my $class = shift; my $self = { _value => shift, }; bless $self, $class; return $self; } sub getValue { my( $self ) = @_; return $self->{_value}; } sub setValue { my ( $self, $value ) = @_; $self->{_value} = $value if defined($value); # return $self->{_value}; } 1;

    If not, show an example with words to understand what you mean.

    Update: Maybe this? Initialize the class with a value and then update it?

    #!/usr/bin/perl use strict; use warnings; use Mypackage; my $object = new Mypackage(100); print $object->getValue() . "\n"; $object->setValue(200); print $object->getValue() . "\n"; __END__ $ perl main.pl 100 200

    Hope this helps, BR.

    Seeking for Perl wisdom...on the process of learning...not there...yet!
      I appreciate your participation thanos1983 Thanks.

        Hello Thenothing,

        On my last update, you can retrieve the value either from the module or from any script that instantiates the class. You can also update the value on any script as and then retrieve it again as shown.

        Is this what you are looking for?

        Let us know if you need further help, BR.

        Seeking for Perl wisdom...on the process of learning...not there...yet!