public class RealClassGenerator
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
private static boolean |
DEBUG |
| Constructor and Description |
|---|
RealClassGenerator() |
| Modifier and Type | Method and Description |
|---|---|
private static java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> |
buildSimpleToAllMap(java.lang.Class[] interfaces,
java.lang.String[] superTypeNames) |
static void |
coerceArgumentsToRuby(SkinnyMethodAdapter mv,
java.lang.Class[] paramTypes,
int rubyIndex) |
static void |
coerceResultAndReturn(SkinnyMethodAdapter mv,
java.lang.Class returnType) |
static java.lang.Class |
createOldStyleImplClass(java.lang.Class[] superTypes,
RubyClass rubyClass,
Ruby ruby,
java.lang.String name,
ClassDefiningClassLoader classLoader) |
static java.lang.Class |
createRealImplClass(java.lang.Class superClass,
java.lang.Class[] interfaces,
RubyClass rubyClass,
Ruby ruby,
java.lang.String name) |
static java.lang.Class |
defineOldStyleImplClass(Ruby ruby,
java.lang.String name,
java.lang.String[] superTypeNames,
java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> simpleToAll,
ClassDefiningClassLoader classLoader)
This variation on defineImplClass uses all the classic type coercion logic
for passing args and returning results.
|
static java.lang.Class |
defineRealImplClass(Ruby ruby,
java.lang.String name,
java.lang.Class superClass,
java.lang.String[] superTypeNames,
java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> simpleToAll)
This variation on defineImplClass uses all the classic type coercion logic
for passing args and returning results.
|
static boolean |
isCacheOk(CacheEntry entry,
IRubyObject self) |
private static final boolean DEBUG
private static java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> buildSimpleToAllMap(java.lang.Class[] interfaces,
java.lang.String[] superTypeNames)
throws java.lang.SecurityException
java.lang.SecurityExceptionpublic static java.lang.Class createOldStyleImplClass(java.lang.Class[] superTypes,
RubyClass rubyClass,
Ruby ruby,
java.lang.String name,
ClassDefiningClassLoader classLoader)
public static java.lang.Class createRealImplClass(java.lang.Class superClass,
java.lang.Class[] interfaces,
RubyClass rubyClass,
Ruby ruby,
java.lang.String name)
public static java.lang.Class defineOldStyleImplClass(Ruby ruby, java.lang.String name, java.lang.String[] superTypeNames, java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> simpleToAll, ClassDefiningClassLoader classLoader)
ruby - name - superTypeNames - simpleToAll - public static java.lang.Class defineRealImplClass(Ruby ruby, java.lang.String name, java.lang.Class superClass, java.lang.String[] superTypeNames, java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> simpleToAll)
ruby - name - superTypeNames - simpleToAll - public static void coerceArgumentsToRuby(SkinnyMethodAdapter mv, java.lang.Class[] paramTypes, int rubyIndex)
public static void coerceResultAndReturn(SkinnyMethodAdapter mv, java.lang.Class returnType)
public static boolean isCacheOk(CacheEntry entry, IRubyObject self)