Libraryless. Click here for Pure Java version (5239L/29K).
sO call_withVarargs(O o, S methodName, O... args) ctex { if (o == null) null; if (o instanceof Class) { Class c = (Class) o; _MethodCache cache = callOpt_getCache(c); Method me = cache.findStaticMethod(methodName, args); if (me != null) ret invokeMethod(me, null, args); // try varargs L<Method> methods = cache.cache.get(methodName); if (methods != null) methodSearch: for (Method m : methods) { continue unless m.isVarArgs(); continue unless isStaticMethod(m); O[] newArgs = massageArgsForVarArgsCall(m, args); if (newArgs != null) ret invokeMethod(m, null, newArgs); } fail("Method " + c.getName() + "." + methodName + "(" + joinWithComma(classNames(args)) + ") not found"); } else { Class c = o.getClass(); _MethodCache cache = callOpt_getCache(c); Method me = cache.findMethod(methodName, args); if (me != null) ret invokeMethod(me, o, args); // try varargs L<Method> methods = cache.cache.get(methodName); if (methods != null) methodSearch: for (Method m : methods) { continue unless m.isVarArgs(); O[] newArgs = massageArgsForVarArgsCall(m, args); if (newArgs != null) ret invokeMethod(m, o, newArgs); } fail("Method " + c.getName() + "." + methodName + "(" + joinWithComma(classNames(args)) + ") not found"); } }
Began life as a copy of #1018503
download show line numbers debug dex old transpilations
Travelled to 7 computer(s): bhatertpkbcr, cfunsshuasjs, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tvejysmllsmz, vouqrxazstgt
No comments. add comment
Snippet ID: | #1022095 |
Snippet name: | call_withVarargs |
Eternal ID of this version: | #1022095/13 |
Text MD5: | 37388bb676aa1de5cc4e222576a5b72d |
Transpilation MD5: | d396ef3e3120dcbe0409025a5e66513d |
Author: | stefan |
Category: | javax |
Type: | JavaX fragment (include) |
Public (visible to everyone): | Yes |
Archived (hidden from active list): | No |
Created/modified: | 2022-03-08 02:03:13 |
Source code size: | 1444 bytes / 42 lines |
Pitched / IR pitched: | No / No |
Views / Downloads: | 300 / 371 |
Version history: | 12 change(s) |
Referenced in: | [show references] |