我需要使用python在C++文件中查找所有出現的函數調用,並提取每個調用的參數。
我打與pygccxml包,並提取給出的函數調用的字符串參數是非常容易的:使用python查找C++文件中某個函數的調用
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'])
# ...
有沒有辦法找到使用pygccxml包對某個函數的調用?
或者,也許這個軟件包對於我想要做的事情來說是一種矯枉過正:)而且有一種更簡單的方法?使用正則表達式查找函數調用恐怕比第一次看到的要複雜得多......