DynamicMethod method = entry.method;
if (methodMissing(method, caller)) {
return callMethodMissing(context, self, name, method, arg1, arg2, arg3, block);
}
cache = new SuperTuple(name, entry);
return method.call(context, self, selfType, name, arg1, arg2, arg3, block);
}
protected IRubyObject callMethodMissing(ThreadContext context, IRubyObject self, String name, DynamicMethod method, IRubyObject[] args) {
return RuntimeHelpers.callMethodMissing(context, self, method.getVisibility(), name, callType, args, Block.NULL_BLOCK);
}