![]() |
| ||
| Is it possible to pass a subroutine to another subroutine? Hello, I am writing some testing scripts. At the end of each test I may have to return my environment back to it's default state using various subroutines in various modules. I realize that using the END block I can run these subroutines, however I have hundreds of these test to write and there is various formatting, etc, that is repetitious... so I want to include a single function in my END block that will accept other functions as parameters and then be able to run them from within itself. A simple example would be: sub function_runner {I realize this will not work as is, but the gist of what I am trying do is to be able to have function_runner(function1, function2, function3, etc) in my end block. Any help point me in the right direction would be greatly appreciated. Thanks! |
| ||
| Re: Is it possible to pass a subroutine to another subroutine? You could try using a reference to a function. sub some_function {You can pass $some_function like any other scalar, but you need to use the arrow operator to run the function. $some_function->() Assuming you pass references to functions to your sub rotuine: sub function_runner { |
| ||
| Re: Is it possible to pass a subroutine to another subroutine? Hey Kevin, Just wanted to thank you. Passing references to the functions is exactly what I was trying to do, and it worked perfectly. |
| All times are GMT -4. The time now is 2:46 pm. |
Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC