org.jruby.java
Class MiniJava

java.lang.Object
  extended by org.jruby.java.MiniJava
All Implemented Interfaces:
Library

public class MiniJava
extends java.lang.Object
implements Library

Author:
headius

Nested Class Summary
static class MiniJava.AbstractJavaWrapperMethod
           
static class MiniJava.AbstractJavaWrapperMethodZero
           
static class MiniJava.JavaMethodFactory
           
static class MiniJava.JavaObjectWrapper
           
protected static class MiniJava.JavaObjectWrapperMethod
           
protected static class MiniJava.JavaObjectWrapperMethodZero
           
protected static class MiniJava.JavaVoidWrapperMethod
           
protected static class MiniJava.JavaVoidWrapperMethodZero
           
 
Constructor Summary
MiniJava()
           
 
Method Summary
static void coerceArgumentsToRuby(SkinnyMethodAdapter mv, java.lang.Class[] paramTypes, int rubyIndex)
           
static void coerceResultAndReturn(SkinnyMethodAdapter mv, java.lang.Class returnType)
           
static RubyClass createImplClass(java.lang.Class[] superTypes, Ruby ruby, java.lang.String name)
           
protected static RubyModule createMirrorForClass(Ruby ruby, java.lang.Class cls)
           
static java.lang.Class createOldStyleImplClass(java.lang.Class[] superTypes, RubyClass rubyClass, Ruby ruby, java.lang.String name)
           
static java.lang.Class defineImplClass(Ruby ruby, java.lang.String name, java.lang.String[] superTypeNames, java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> simpleToAll)
           
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)
          This variation on defineImplClass uses all the classic type coercion logic for passing args and returning results.
protected static RaiseException error(Ruby ruby, java.lang.Exception e, java.lang.String message)
           
protected static java.lang.Class findClass(java.lang.ClassLoader classLoader, java.lang.String className)
           
static java.lang.Class getJavaClassFromObject(IRubyObject obj)
           
protected static MiniJava.JavaMethodFactory getMethodFactory(java.lang.Class returnType)
           
static RubyModule getMirrorForClass(Ruby ruby, java.lang.Class cls)
           
static boolean isCacheOk(CacheEntry entry, IRubyObject self)
           
static IRubyObject javaToRuby(Ruby ruby, java.lang.Object object)
           
 void load(Ruby runtime, boolean wrap)
           
protected static java.lang.String mangleMethodFieldName(java.lang.String baseName, java.lang.Class[] paramTypes)
           
static IRubyObject new_class(ThreadContext context, IRubyObject self, IRubyObject[] interfaces)
           
static RubyClass populateImplClass(Ruby ruby, java.lang.Class newClass, java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> simpleToAll)
           
protected static void populateMirrorForArrayClass(RubyModule rubyMod, java.lang.Class cls)
           
protected static void populateMirrorForClass(RubyModule rubyMod, java.lang.Class cls)
           
static IRubyObject rb_import(ThreadContext context, IRubyObject self, IRubyObject name)
           
static IRubyObject rb_import(ThreadContext context, IRubyObject self, IRubyObject name, IRubyObject as)
           
static java.lang.Object rubyToJava(IRubyObject object)
           
static CacheEntry searchWithCache(IRubyObject obj, java.lang.String name1)
           
static CacheEntry searchWithCache(IRubyObject obj, java.lang.String name1, java.lang.String name2)
           
static CacheEntry searchWithCache(IRubyObject obj, java.lang.String name1, java.lang.String name2, java.lang.String name3)
           
static CacheEntry searchWithCache(IRubyObject obj, java.lang.String name1, java.lang.String name2, java.lang.String name3, java.lang.String name4)
           
static CacheEntry searchWithCache(IRubyObject obj, java.lang.String name1, java.lang.String name2, java.lang.String name3, java.lang.String name4, java.lang.String name5)
           
static CacheEntry searchWithCache(IRubyObject obj, java.lang.String name1, java.lang.String name2, java.lang.String name3, java.lang.String name4, java.lang.String name5, java.lang.String name6)
           
static CacheEntry searchWithCache(IRubyObject obj, java.lang.String name1, java.lang.String name2, java.lang.String name3, java.lang.String name4, java.lang.String name5, java.lang.String name6, java.lang.String name7)
           
static CacheEntry searchWithCache(IRubyObject obj, java.lang.String name1, java.lang.String name2, java.lang.String name3, java.lang.String name4, java.lang.String name5, java.lang.String name6, java.lang.String name7, java.lang.String name8)
           
static CacheEntry searchWithCache(RubyClass clazz, java.lang.String name1)
           
static CacheEntry searchWithCache(RubyClass clazz, java.lang.String name1, java.lang.String name2)
           
static CacheEntry searchWithCache(RubyClass clazz, java.lang.String name1, java.lang.String name2, java.lang.String name3)
           
static CacheEntry searchWithCache(RubyClass clazz, java.lang.String name1, java.lang.String name2, java.lang.String name3, java.lang.String name4)
           
static CacheEntry searchWithCache(RubyClass clazz, java.lang.String name1, java.lang.String name2, java.lang.String name3, java.lang.String name4, java.lang.String name5)
           
static CacheEntry searchWithCache(RubyClass clazz, java.lang.String name1, java.lang.String name2, java.lang.String name3, java.lang.String name4, java.lang.String name5, java.lang.String name6)
           
static CacheEntry searchWithCache(RubyClass clazz, java.lang.String name1, java.lang.String name2, java.lang.String name3, java.lang.String name4, java.lang.String name5, java.lang.String name6, java.lang.String name7)
           
static CacheEntry searchWithCache(RubyClass clazz, java.lang.String name1, java.lang.String name2, java.lang.String name3, java.lang.String name4, java.lang.String name5, java.lang.String name6, java.lang.String name7, java.lang.String name8)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MiniJava

public MiniJava()
Method Detail

load

public void load(Ruby runtime,
                 boolean wrap)
Specified by:
load in interface Library

new_class

public static IRubyObject new_class(ThreadContext context,
                                    IRubyObject self,
                                    IRubyObject[] interfaces)

rb_import

public static IRubyObject rb_import(ThreadContext context,
                                    IRubyObject self,
                                    IRubyObject name)

rb_import

public static IRubyObject rb_import(ThreadContext context,
                                    IRubyObject self,
                                    IRubyObject name,
                                    IRubyObject as)

createImplClass

public static RubyClass createImplClass(java.lang.Class[] superTypes,
                                        Ruby ruby,
                                        java.lang.String name)

createOldStyleImplClass

public static java.lang.Class createOldStyleImplClass(java.lang.Class[] superTypes,
                                                      RubyClass rubyClass,
                                                      Ruby ruby,
                                                      java.lang.String name)

defineImplClass

public static java.lang.Class defineImplClass(Ruby ruby,
                                              java.lang.String name,
                                              java.lang.String[] superTypeNames,
                                              java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> simpleToAll)

defineOldStyleImplClass

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)
This variation on defineImplClass uses all the classic type coercion logic for passing args and returning results.

Parameters:
ruby -
name -
superTypeNames -
simpleToAll -
Returns:

coerceArgumentsToRuby

public static void coerceArgumentsToRuby(SkinnyMethodAdapter mv,
                                         java.lang.Class[] paramTypes,
                                         int rubyIndex)

coerceResultAndReturn

public static void coerceResultAndReturn(SkinnyMethodAdapter mv,
                                         java.lang.Class returnType)

populateImplClass

public static RubyClass populateImplClass(Ruby ruby,
                                          java.lang.Class newClass,
                                          java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> simpleToAll)

mangleMethodFieldName

protected static java.lang.String mangleMethodFieldName(java.lang.String baseName,
                                                        java.lang.Class[] paramTypes)

findClass

protected static java.lang.Class findClass(java.lang.ClassLoader classLoader,
                                           java.lang.String className)
                                    throws java.lang.ClassNotFoundException
Throws:
java.lang.ClassNotFoundException

getMirrorForClass

public static RubyModule getMirrorForClass(Ruby ruby,
                                           java.lang.Class cls)

createMirrorForClass

protected static RubyModule createMirrorForClass(Ruby ruby,
                                                 java.lang.Class cls)

populateMirrorForClass

protected static void populateMirrorForClass(RubyModule rubyMod,
                                             java.lang.Class cls)

populateMirrorForArrayClass

protected static void populateMirrorForArrayClass(RubyModule rubyMod,
                                                  java.lang.Class cls)

getMethodFactory

protected static MiniJava.JavaMethodFactory getMethodFactory(java.lang.Class returnType)

error

protected static RaiseException error(Ruby ruby,
                                      java.lang.Exception e,
                                      java.lang.String message)
                               throws RaiseException
Throws:
RaiseException

rubyToJava

public static java.lang.Object rubyToJava(IRubyObject object)

javaToRuby

public static IRubyObject javaToRuby(Ruby ruby,
                                     java.lang.Object object)

getJavaClassFromObject

public static java.lang.Class getJavaClassFromObject(IRubyObject obj)

searchWithCache

public static CacheEntry searchWithCache(RubyClass clazz,
                                         java.lang.String name1)

searchWithCache

public static CacheEntry searchWithCache(RubyClass clazz,
                                         java.lang.String name1,
                                         java.lang.String name2)

searchWithCache

public static CacheEntry searchWithCache(RubyClass clazz,
                                         java.lang.String name1,
                                         java.lang.String name2,
                                         java.lang.String name3)

searchWithCache

public static CacheEntry searchWithCache(RubyClass clazz,
                                         java.lang.String name1,
                                         java.lang.String name2,
                                         java.lang.String name3,
                                         java.lang.String name4)

searchWithCache

public static CacheEntry searchWithCache(RubyClass clazz,
                                         java.lang.String name1,
                                         java.lang.String name2,
                                         java.lang.String name3,
                                         java.lang.String name4,
                                         java.lang.String name5)

searchWithCache

public static CacheEntry searchWithCache(RubyClass clazz,
                                         java.lang.String name1,
                                         java.lang.String name2,
                                         java.lang.String name3,
                                         java.lang.String name4,
                                         java.lang.String name5,
                                         java.lang.String name6)

searchWithCache

public static CacheEntry searchWithCache(RubyClass clazz,
                                         java.lang.String name1,
                                         java.lang.String name2,
                                         java.lang.String name3,
                                         java.lang.String name4,
                                         java.lang.String name5,
                                         java.lang.String name6,
                                         java.lang.String name7)

searchWithCache

public static CacheEntry searchWithCache(RubyClass clazz,
                                         java.lang.String name1,
                                         java.lang.String name2,
                                         java.lang.String name3,
                                         java.lang.String name4,
                                         java.lang.String name5,
                                         java.lang.String name6,
                                         java.lang.String name7,
                                         java.lang.String name8)

searchWithCache

public static CacheEntry searchWithCache(IRubyObject obj,
                                         java.lang.String name1)

searchWithCache

public static CacheEntry searchWithCache(IRubyObject obj,
                                         java.lang.String name1,
                                         java.lang.String name2)

searchWithCache

public static CacheEntry searchWithCache(IRubyObject obj,
                                         java.lang.String name1,
                                         java.lang.String name2,
                                         java.lang.String name3)

searchWithCache

public static CacheEntry searchWithCache(IRubyObject obj,
                                         java.lang.String name1,
                                         java.lang.String name2,
                                         java.lang.String name3,
                                         java.lang.String name4)

searchWithCache

public static CacheEntry searchWithCache(IRubyObject obj,
                                         java.lang.String name1,
                                         java.lang.String name2,
                                         java.lang.String name3,
                                         java.lang.String name4,
                                         java.lang.String name5)

searchWithCache

public static CacheEntry searchWithCache(IRubyObject obj,
                                         java.lang.String name1,
                                         java.lang.String name2,
                                         java.lang.String name3,
                                         java.lang.String name4,
                                         java.lang.String name5,
                                         java.lang.String name6)

searchWithCache

public static CacheEntry searchWithCache(IRubyObject obj,
                                         java.lang.String name1,
                                         java.lang.String name2,
                                         java.lang.String name3,
                                         java.lang.String name4,
                                         java.lang.String name5,
                                         java.lang.String name6,
                                         java.lang.String name7)

searchWithCache

public static CacheEntry searchWithCache(IRubyObject obj,
                                         java.lang.String name1,
                                         java.lang.String name2,
                                         java.lang.String name3,
                                         java.lang.String name4,
                                         java.lang.String name5,
                                         java.lang.String name6,
                                         java.lang.String name7,
                                         java.lang.String name8)

isCacheOk

public static boolean isCacheOk(CacheEntry entry,
                                IRubyObject self)


Copyright © 2002-2009 JRuby Team. All Rights Reserved.