Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re: Use of Typeglob

by dsb (Chaplain)
on Aug 10, 2005 at 02:29 UTC ( #482494=note: print w/ replies, xml ) Need Help??


in reply to Use of Typeglob

Seems like several of the previous posters used a typeglob to have a passable version of a filehandle. By passable, I mean that the filehandle can be passed into a function or placed in some other list form like an array.

In Seven Useful Uses of local, Tachyon demonstrates a pretty neat way of accomplishing just that.

my $filehandle = do { local *FH };
Tachyon's explanation:
do just introduces a block which will be evaluated, and will return the value of the last expression that it contains, which in this case is local *FH. The value of local *FH is a glob. But what glob?

local takes the existing FH glob and temporarily replaces it with a new glob. But then it immediately goes out of scope and puts the old glob back, leaving the new glob without a name. But then it returns the new, nameless glob, which is then stored into $filehandle. This is just what we wanted: A glob that has been disconnected from the symbol table.


dsb
This @ISA my cool %SIG


Comment on Re: Use of Typeglob
Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (7)
As of 2015-07-03 00:10 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (47 votes), past polls