http://qs321.pair.com?node_id=1107480


in reply to Re: how to call a sub via variable in library
in thread how to call a sub via variable in library

you have given the best understanding of which i did not even have... Although this is wrong here is what i want to accomplish: $self->&$testname($system). Execute sub '$testname' with '$system' as parameter in object '$self'. Could you help further with this???
  • Comment on Re^2: how to call a sub via variable in library

Replies are listed 'Best First'.
Re^3: how to call a sub via variable in library
by BrowserUk (Patriarch) on Nov 17, 2014 at 22:04 UTC
    here is what i want to accomplish: $self->&$testname($system). Execute sub '$testname' with '$system' as parameter in object '$self'.

    Depends what do you mean by "... in object $self"?

    I see two possible interpretations of that:

    1. You simply want to execute the sub named in $testname (whilst incidentally running inside a method of object $self); in which case all you need is:
      $testname->( $system );

      You'll probably need no strict 'refs'; for that.

    2. Alternatively, you might mean that you want to invoke the method of object $self, who's name is held in $testname; in which case all you need is:
      $self->$testname( $system );

      Seems to work fine with full strict.


    With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.