Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: regexp for finding all function calls

by marksman (Novice)
on Jul 17, 2009 at 18:40 UTC ( #781139=note: print w/replies, xml ) Need Help??


in reply to regexp for finding all function calls

I'm still working on this problem, and have decided to try the perl PPI.

I'm a little stuck on how to find all calls to Mod::func within PPI. I've successfully read in the document, and am calling the PPI::Node->find method.
http://search.cpan.org/~adamk/PPI-1.203/lib/PPI/Node.pm#find_$class_|_\&wanted

My first question is how to construct the anonymous subroutine to find all PPI::Statements that match Mod::func.

A second question is if it is possible to extract the line number of the statement from PPI. Otherwise I may also use B::Xref and hope that the Mod::func calls that it finds matches the ones returned by PPI.

Update: here's the code I'm working on right now, but the 'and' condition in the anonymous sub is returning false on everything. Hopefully the intent is clear though
# find all statements that have a PPI::Token::Word with "Mod::func" my $res = $Doc->find ( sub { $_[1]->isa('PPI::Statement') and $_[1]->contains('PPI::Token::Word') } );

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://781139]
help
Chatterbox?
[Corion]: thezip: Yeah - we have "CAP", but that means "Change Ablauf Plan" (Change Sequence Plan). Likely there is a true ITIL name for this too.
[Corion]: While I'm not really a fan of ITIL, it certainly is better than nothing and it at least provides a common vocabulary, so if you have ITIL somewhere at your disposal, it might be worth a look
[Corion]: Hmm - that should be somewhere in the "Release Deployment Plan", but I don't find a good English link (nor a good German one ;) )
[thezip]: My project manager is asking "Why do we need this?" Ahem...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (7)
As of 2017-02-23 17:57 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Before electricity was invented, what was the Electric Eel called?






    Results (350 votes). Check out past polls.