Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re^2: Why is the error thrown from close(FH) when the error is the missing <> on while(FH)?

by techgrrl (Sexton)
on Feb 01, 2013 at 03:15 UTC ( #1016432=note: print w/replies, xml ) Need Help??


in reply to Re: Why is the error thrown from close(FH) when the error is the missing <> on while(FH)?
in thread Why is the error thrown from close(FH) when the error is the missing <> on while(FH)?

Thanks, but do bear in mind, I already know the error, and I fixed it.

This question has nothing to do with the syntax error, it is about trying to understand a diagnostic message, in order to gain wisdom.

I ran deparse, and it printed my code prepended with the word LINE: and followed it with a diagnostic saying the syntax was OK.

$ perl -MO=Deparse -p strip_keys.pl 
LINE: while (defined($_ = <ARGV>)) { use warnings; use strict 'refs'; our($opt_h, $opt_k, $opt_u); my($inline, $device, $config, $file, $context, @contexts); use Getopt::Long; &help unless GetOptions 'h', \$opt_h, 'u:s', \$opt_u, 'k:s', \$opt +_k, 'device:s', \$device; &help if $opt_h; etc. continue { print $_; }
strip_keys.pl syntax OK
  • Comment on Re^2: Why is the error thrown from close(FH) when the error is the missing <> on while(FH)?
  • Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1016432]
help
Chatterbox?
[ambrus]: Corion: from the docs, it definitely looks like it would be possible to write an AnyEvent driver for it using Prima::File and Prima::Timer.
[ambrus]: (I haven't found an idle event.)
[ambrus]: However, I also looked at the internals, and found two interesting things:
[marto]: stupid xpath question, I have a xpath copied from the browser, is the * wildcard supposed to work for IDs? e.g. '//*[@id="*"]/ div/div/header/p/a '?
[ambrus]: The main loop for unixish systems is in https://metacpan. org/source/ KARASIK/Prima-1. 49/unix/apc_app.c. It is a hand-rolled select loop, but also always spins at least once every 0.2 seconds for some reason.
[ambrus]: marto: no, not that way. if you just want to test for an existing id attribute, then write *[@id] , or you can match a regexp to the value of that attribute like *[@id=~/something/ ]
[marto]: ambrus, thanks I ended up going with '//*[starts- with(@id, "thread_")]...
[ambrus]: Sometimes it's easier to just match elements in ways other than xpath, like directly with perl code.

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (6)
As of 2016-12-08 10:50 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    On a regular basis, I'm most likely to spy upon:













    Results (140 votes). Check out past polls.