On Wed, 2009-12-30 at 16:13 +0100, Jeremiah Foster wrote: > On Dec 30, 2009, at 15:54, Trevor Vallender wrote: > > > Hi, > > > > I have just moved a piece of code into a separate module. However, the > > subroutine in the new module needs to reference a subroutine in the > > script it's called from. Is there any way around this? > > > > Basically, I am using AnyEvent::XMPP, and want the setup code in the > > module. This code sets up which subroutines to call when certain events > > occur, and all these will be in the calling script. > > > > Can I pass the names of subroutines in the calling script to the > > subroutine in the module somehow? > > > > Thanks, and sorry if my question is a little jumbled, I'm having > > problems explaining it clearly. Hopefully you understand what I mean. > > Code snippets are always useful for clarifying your question. >
I have a piece of code which sets subroutines to be called on certain events: $cl->reg_cb( session_ready=>sub { sessionReady(@_); }, disconnect=>sub { disconnect(@_); }, error=>sub { error(@_); }, message=>sub { messageReceived(@_); } ); I want this in a module. However, I want sessionReady() et al to be in the calling code. Is there a way I can either have the module be okay with this, and know that these subroutines will be present in the calling code, or a way I can pass the subroutines to the module with something like setup(&sessionReady, &disconnect, &error, &messageReceived); ? > Jeremiah > Trevor. -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/