Java API: generator script whitespace cleanup, adding statistics gathering code
This commit is contained in:
parent
3e323e6ff8
commit
1bae6413c1
@ -806,6 +806,9 @@ class JavaWrapperGenerator(object):
|
||||
self.cpp_code = None
|
||||
self.ported_func_list = []
|
||||
self.skipped_func_list = []
|
||||
self.def_args_hist = {} # { def_args_cnt : funcs_cnt }
|
||||
self.classes_map = []
|
||||
self.classes_simple = []
|
||||
|
||||
def add_class_code_stream(self, class_name):
|
||||
jname = self.classes[class_name].jname
|
||||
@ -862,6 +865,10 @@ public class %(jc)s {
|
||||
if name in type_dict:
|
||||
print "Duplicated class: " + name
|
||||
return
|
||||
if '/Simple' in decl[2]:
|
||||
self.classes_simple.append(name)
|
||||
if '/Map' in decl[2]:
|
||||
self.classes_map.append(name)
|
||||
type_dict[name] = \
|
||||
{ "j_type" : classinfo.jname,
|
||||
"jn_type" : "long", "jn_args" : (("__int64", ".nativeObj"),),
|
||||
@ -946,6 +953,9 @@ public class %(jc)s {
|
||||
func_map[ffi.jname].add_func(ffi.funcs[0])
|
||||
else:
|
||||
func_map[ffi.jname] = ffi
|
||||
# calc args with def val
|
||||
cnt = len([a for a in ffi.funcs[0].args if a.defval])
|
||||
self.def_args_hist[cnt] = self.def_args_hist.get(cnt, 0) + 1
|
||||
|
||||
def save(self, path, buf):
|
||||
f = open(path, "wt")
|
||||
@ -1034,6 +1044,13 @@ extern "C" {
|
||||
(len(self.skipped_func_list), len(self.ported_func_list)+ len(self.skipped_func_list))
|
||||
)
|
||||
report.write("".join(self.skipped_func_list))
|
||||
|
||||
for i in self.def_args_hist.keys():
|
||||
report.write("\n%i def args - %i funcs" % (i, self.def_args_hist[i]))
|
||||
|
||||
report.write("\n\nclass as MAP:\n\t" + "\n\t".join(self.classes_map))
|
||||
report.write("\n\nclass SIMPLE:\n\t" + "\n\t".join(self.classes_simple))
|
||||
|
||||
self.save(output_path+"/"+module+".txt", report.getvalue())
|
||||
|
||||
print "Done %i of %i funcs." % (len(self.ported_func_list), len(self.ported_func_list)+ len(self.skipped_func_list))
|
||||
|
Loading…
x
Reference in New Issue
Block a user