self.deserializeArgs(function)
+ self.declareRet(function)
self.invokeFunction(function)
self.swizzleValues(function)
self.deserializeArgs(method)
+ self.declareRet(method)
self.invokeInterfaceMethod(interface, method)
self.swizzleValues(method)
visitor = SwizzledValueRegistrator()
visitor.visit(type, lvalue, rvalue)
+ def declareRet(self, function):
+ if function.type is not stdapi.Void:
+ print ' %s _result;' % (function.type)
+
def invokeFunction(self, function):
arg_names = ", ".join(function.argNames())
if function.type is not stdapi.Void:
- print ' %s _result;' % (function.type)
print ' _result = %s(%s);' % (function.name, arg_names)
print ' (void)_result;'
else:
arg_names = ", ".join(method.argNames())
if method.type is not stdapi.Void:
- print ' %s _result;' % (method.type)
print ' _result = _this->%s(%s);' % (method.name, arg_names)
print ' (void)_result;'
else:
functions = filter(self.filterFunction, api.functions)
for function in functions:
- if function.sideeffects:
+ if function.sideeffects and not function.internal:
self.retraceFunction(function)
interfaces = api.getAllInterfaces()
for interface in interfaces:
for method in interface.iterMethods():
- if method.sideeffects:
+ if method.sideeffects and not method.internal:
self.retraceInterfaceMethod(interface, method)
print 'const retrace::Entry %s[] = {' % self.table_name
for function in functions:
- if function.sideeffects:
- print ' {"%s", &retrace_%s},' % (function.name, function.name)
- else:
- print ' {"%s", &retrace::ignore},' % (function.name,)
+ if not function.internal:
+ if function.sideeffects:
+ print ' {"%s", &retrace_%s},' % (function.name, function.name)
+ else:
+ print ' {"%s", &retrace::ignore},' % (function.name,)
for interface in interfaces:
for method in interface.iterMethods():
if method.sideeffects: