Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much

Re^2: Error location in Filter-Include

by mosh (Scribe)
on Jul 27, 2005 at 11:58 UTC ( #478564=note: print w/replies, xml ) Need Help??

in reply to Re: Error location in Filter-Include
in thread Error location in Filter-Include

Thanks broquaint !

Although, I'm not sure I understand what you have written. Can you describe in words what's the aim of each element ?

What's the meaning of the "post =>" ?
What is the meaning of "sub (" without the subname ?
What should be in $_[0] and $_1] ?
What's the meaning of "$Filter::Include::LINE" ?

Thanks, again,


Replies are listed 'Best First'.
Re^3: Error location in Filter-Include
by broquaint (Abbot) on Jul 27, 2005 at 12:22 UTC
    Ah, well, that's quite a lot to explain, but I shall take your questions one at a time:
    What's the meaning of the "post =>" ?
    Here the => operator, commonly known as the fat comma is simply "stringifying" (i.e turning the bareword post into a string) its left-hand side argument, which in this case is post. For more information on the fat comma see. perlop. Looking at it from a higher level it is also specifying that the post handler is being provided. For information on Filter::Include's handlers see. the HANDLERS section.
    What is the meaning of "sub (" without the subname ?
    When sub is used without a name it is creating an anonymous sub and so is acting as an anonymous subroutine constuctor. This means that it will create a subroutine and return a reference to that subroutine. It is anonymous by virtue of the fact that it can be only referred to by its reference and not its name, which is orthogonal to the anonymous array ([]) and anonymous hash ({}) constructors. For more information on anonymous subroutines see. perlsub.
    What should be in $_[0] and $_[1] ?
    As documented in the HANDLERS. section of Filter::Include the first argument ($_[0]) will contain the name of the file or module being included and the second argument ($_[1]) will be the code that has just been filtered.
    What's the meaning of "$Filter::Include::LINE" ?
    This was a little more subtle and is not currently documented in Filter::Include, which I apologise for. It holds the current line number as of the last include. This should definitely be documented and perhaps better exposed through the API. Your post definitely gave me pause for thought about how your problem could solved nicely and if it should in fact be part of the module as it certainly looks to be a handy feature. Perhaps, again, it could be implemented as another option to import. Thanks for your input, it is, as always, much appreciated.


Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://478564]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (3)
As of 2022-09-27 00:52 GMT
Find Nodes?
    Voting Booth?
    I prefer my indexes to start at:

    Results (118 votes). Check out past polls.