I need to find all occurrences of a function call in a C++ file using python, and extract the arguments for each call.
I m playing with the pygccxml package, and extracting the arguments given a string with the function call is extremely easy:
from pygccxml.declarations import call_invocation
def test_is_call_invocation(call):
if call_invocation.is_call_invocation(call):
print call_invocation.name(call)
for arg in call_invocation.args(call):
print " ",arg
else:
print "not a function invocation"
我找不到的是从文件中解析电话的方法:
from pygccxml import parser
from pygccxml import declarations
decls = parser.parse( [ main.cpp ] )
# ...
Is there a way to find the calls to a certain function using the pygccxml package?
Or maybe that package is an overkill for what I m trying to do :) and there s a much simpler way? Finding the function calls with a regular expression is, I m afraid, much trickier than it might look at a first sight...