vendor: OpenCV 5.0.0 snapshot at 40738fb16ceddb5fb3fea747585f7ce6abb0605b
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
import traceback
|
||||
|
||||
class Symbol(object):
|
||||
def __init__(self, anchor, type, cppname):
|
||||
self.anchor = anchor
|
||||
self.type = type
|
||||
self.cppname = cppname
|
||||
#if anchor == 'ga586ebfb0a7fb604b35a23d85391329be':
|
||||
# print(repr(self))
|
||||
# traceback.print_stack()
|
||||
|
||||
def __repr__(self):
|
||||
return '%s:%s@%s' % (self.type, self.cppname, self.anchor)
|
||||
|
||||
def add_to_file(files_dict, file, anchor):
|
||||
anchors = files_dict.setdefault(file, [])
|
||||
anchors.append(anchor)
|
||||
|
||||
|
||||
def scan_namespace_constants(ns, ns_name, files_dict):
|
||||
constants = ns.findall("./member[@kind='enumvalue']")
|
||||
for c in constants:
|
||||
c_name = c.find("./name").text
|
||||
name = ns_name + '::' + c_name
|
||||
file = c.find("./anchorfile").text
|
||||
anchor = c.find("./anchor").text
|
||||
#print(' CONST: {} => {}#{}'.format(name, file, anchor))
|
||||
add_to_file(files_dict, file, Symbol(anchor, "const", name))
|
||||
|
||||
def scan_namespace_functions(ns, ns_name, files_dict):
|
||||
functions = ns.findall("./member[@kind='function']")
|
||||
for f in functions:
|
||||
f_name = f.find("./name").text
|
||||
name = ns_name + '::' + f_name
|
||||
file = f.find("./anchorfile").text
|
||||
anchor = f.find("./anchor").text
|
||||
#print(' FN: {} => {}#{}'.format(name, file, anchor))
|
||||
add_to_file(files_dict, file, Symbol(anchor, "fn", name))
|
||||
|
||||
def scan_class_methods(c, c_name, files_dict):
|
||||
methods = c.findall("./member[@kind='function']")
|
||||
for m in methods:
|
||||
m_name = m.find("./name").text
|
||||
name = c_name + '::' + m_name
|
||||
file = m.find("./anchorfile").text
|
||||
anchor = m.find("./anchor").text
|
||||
#print(' Method: {} => {}#{}'.format(name, file, anchor))
|
||||
add_to_file(files_dict, file, Symbol(anchor, "method", name))
|
||||
Reference in New Issue
Block a user