public class org.jruby.javasupport.Java implements org.jruby.runtime.load.Library
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.javasupport.Java
super_class: java.lang.Object
{
public static final boolean NEW_STYLE_EXTENSION;
descriptor: Z
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final boolean OBJECT_PROXY_CACHE;
descriptor: Z
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private static final java.util.regex.Pattern CAMEL_CASE_PACKAGE_SPLITTER;
descriptor: Ljava/util/regex/Pattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/jruby/javasupport/Java;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.jruby.javasupport.Java.$assertionsDisabled:Z
3: getstatic org.jruby.util.cli.Options.JI_NEWSTYLEEXTENSION:Lcom/headius/options/Option;
invokevirtual com.headius.options.Option.load:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
putstatic org.jruby.javasupport.Java.NEW_STYLE_EXTENSION:Z
4: getstatic org.jruby.util.cli.Options.JI_OBJECTPROXYCACHE:Lcom/headius/options/Option;
invokevirtual com.headius.options.Option.load:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
putstatic org.jruby.javasupport.Java.OBJECT_PROXY_CACHE:Z
5: ldc "([a-z0-9_]+)([A-Z])"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
putstatic org.jruby.javasupport.Java.CAMEL_CASE_PACKAGE_SPLITTER:Ljava/util/regex/Pattern;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/javasupport/Java;
public void load(org.jruby.Ruby, boolean);
descriptor: (Lorg/jruby/Ruby;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic org.jruby.javasupport.Java.createJavaModule:(Lorg/jruby/Ruby;)Lorg/jruby/RubyModule;
astore 3
start local 3 1: aload 1
aload 3
invokestatic org.jruby.javasupport.JavaPackage.createJavaPackageClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyModule;
pop
2: aload 1
invokestatic org.jruby.javasupport.ext.Kernel.define:(Lorg/jruby/Ruby;)V
3: aload 1
invokestatic org.jruby.javasupport.ext.JavaLang.define:(Lorg/jruby/Ruby;)V
4: aload 1
invokestatic org.jruby.javasupport.ext.JavaLangReflect.define:(Lorg/jruby/Ruby;)V
5: aload 1
invokestatic org.jruby.javasupport.ext.JavaUtil.define:(Lorg/jruby/Ruby;)V
6: aload 1
invokestatic org.jruby.javasupport.ext.JavaUtilRegex.define:(Lorg/jruby/Ruby;)V
7: aload 1
invokestatic org.jruby.javasupport.ext.JavaIo.define:(Lorg/jruby/Ruby;)V
8: aload 1
invokestatic org.jruby.javasupport.ext.JavaNet.define:(Lorg/jruby/Ruby;)V
9: aload 1
invokestatic org.jruby.javasupport.ext.JavaMath.define:(Lorg/jruby/Ruby;)V
10: aload 1
invokestatic org.jruby.javasupport.ext.JavaTime.define:(Lorg/jruby/Ruby;)V
11: aload 1
invokevirtual org.jruby.Ruby.getLoadService:()Lorg/jruby/runtime/load/LoadService;
ldc "jruby/java.rb"
iconst_0
invokevirtual org.jruby.runtime.load.LoadService.load:(Ljava/lang/String;Z)V
12: aload 1
ldc "ArrayJavaProxy"
invokevirtual org.jruby.Ruby.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
astore 4
start local 4 13: aload 4
aload 1
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
invokevirtual org.jruby.javasupport.JavaSupport.getObjectJavaClass:()Lorg/jruby/javasupport/JavaClass;
invokevirtual org.jruby.javasupport.JavaClass.getProxyClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.setSuperClass:(Lorg/jruby/RubyClass;)V
14: aload 4
aload 1
invokevirtual org.jruby.Ruby.getEnumerable:()Lorg/jruby/RubyModule;
invokevirtual org.jruby.RubyClass.includeModule:(Lorg/jruby/runtime/builtin/IRubyObject;)V
15: aload 1
invokestatic org.jruby.RubyClassPathVariable.createClassPathVariable:(Lorg/jruby/Ruby;)V
16: aload 1
invokestatic org.jruby.javasupport.proxy.JavaProxyClassFactory.createFactory:()Lorg/jruby/javasupport/proxy/JavaProxyClassFactory;
invokevirtual org.jruby.Ruby.setJavaProxyClassFactory:(Lorg/jruby/javasupport/proxy/JavaProxyClassFactory;)V
17: new org.jruby.java.util.SystemPropertiesMap
dup
invokespecial org.jruby.java.util.SystemPropertiesMap.<init>:()V
astore 5
start local 5 18: aload 1
ldc Lorg/jruby/java/util/SystemPropertiesMap;
invokestatic org.jruby.javasupport.Java.getProxyClass:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
checkcast org.jruby.RubyClass
astore 6
start local 6 19: aload 1
invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
ldc "ENV_JAVA"
new org.jruby.java.proxies.MapJavaProxy
dup
aload 1
aload 6
aload 5
invokespecial org.jruby.java.proxies.MapJavaProxy.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/util/Map;)V
invokevirtual org.jruby.RubyClass.setConstantQuiet:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
20: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/jruby/javasupport/Java;
0 21 1 runtime Lorg/jruby/Ruby;
0 21 2 wrap Z
1 21 3 Java Lorg/jruby/RubyModule;
13 21 4 ArrayJavaProxy Lorg/jruby/RubyClass;
18 21 5 systemProperties Ljava/util/Map;
19 21 6 proxyClass Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
wrap
public static org.jruby.RubyModule createJavaModule(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyModule;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
astore 1
start local 1 1: aload 0
ldc "Java"
invokevirtual org.jruby.Ruby.defineModule:(Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 2
start local 2 2: aload 2
ldc Lorg/jruby/javasupport/Java;
invokevirtual org.jruby.RubyModule.defineAnnotatedMethods:(Ljava/lang/Class;)V
3: aload 0
aload 2
invokestatic org.jruby.javasupport.JavaObject.createJavaObjectClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
astore 3
start local 3 4: aload 0
aload 2
aload 3
invokestatic org.jruby.javasupport.JavaArray.createJavaArrayClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;Lorg/jruby/RubyClass;)Lorg/jruby/RubyClass;
pop
5: aload 0
aload 2
aload 3
invokestatic org.jruby.javasupport.JavaClass.createJavaClassClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;Lorg/jruby/RubyClass;)Lorg/jruby/RubyClass;
pop
6: aload 0
aload 2
invokestatic org.jruby.javasupport.JavaMethod.createJavaMethodClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
7: aload 0
aload 2
invokestatic org.jruby.javasupport.JavaConstructor.createJavaConstructorClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
8: aload 0
aload 2
invokestatic org.jruby.javasupport.JavaField.createJavaFieldClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
9: aload 1
invokestatic org.jruby.javasupport.JavaProxyMethods.createJavaProxyMethods:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyModule;
pop
10: aload 1
invokestatic org.jruby.java.proxies.JavaProxy.createJavaProxy:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyClass;
pop
11: aload 1
invokestatic org.jruby.java.proxies.ArrayJavaProxyCreator.createArrayJavaProxyCreator:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyClass;
pop
12: aload 1
invokestatic org.jruby.java.proxies.ConcreteJavaProxy.createConcreteJavaProxy:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyClass;
pop
13: aload 1
invokestatic org.jruby.java.proxies.InterfaceJavaProxy.createInterfaceJavaProxy:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyClass;
pop
14: aload 1
invokestatic org.jruby.java.proxies.ArrayJavaProxy.createArrayJavaProxy:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyClass;
pop
15: aload 0
invokestatic org.jruby.java.proxies.MapJavaProxy.createMapJavaProxy:(Lorg/jruby/Ruby;)Lorg/jruby/RubyClass;
pop
16: aload 0
aload 2
invokestatic org.jruby.javasupport.proxy.JavaProxyClass.createJavaProxyClasses:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)V
17: aload 1
invokestatic org.jruby.java.proxies.JavaInterfaceTemplate.createJavaInterfaceTemplateModule:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyModule;
pop
18: aload 0
ldc "JavaUtilities"
invokevirtual org.jruby.Ruby.defineModule:(Ljava/lang/String;)Lorg/jruby/RubyModule;
ldc Lorg/jruby/javasupport/JavaUtilities;
invokevirtual org.jruby.RubyModule.defineAnnotatedMethods:(Ljava/lang/Class;)V
19: aload 0
invokestatic org.jruby.javasupport.JavaArrayUtilities.createJavaArrayUtilitiesModule:(Lorg/jruby/Ruby;)Lorg/jruby/RubyModule;
pop
20: aload 0
invokevirtual org.jruby.Ruby.getArray:()Lorg/jruby/RubyClass;
ldc Lorg/jruby/java/addons/ArrayJavaAddons;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
21: aload 0
invokevirtual org.jruby.Ruby.getKernel:()Lorg/jruby/RubyModule;
ldc Lorg/jruby/java/addons/KernelJavaAddons;
invokevirtual org.jruby.RubyModule.defineAnnotatedMethods:(Ljava/lang/Class;)V
22: aload 0
invokevirtual org.jruby.Ruby.getString:()Lorg/jruby/RubyClass;
ldc Lorg/jruby/java/addons/StringJavaAddons;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
23: aload 0
invokevirtual org.jruby.Ruby.getIO:()Lorg/jruby/RubyClass;
ldc Lorg/jruby/java/addons/IOJavaAddons;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
24: aload 0
invokevirtual org.jruby.Ruby.getClassClass:()Lorg/jruby/RubyClass;
ldc Lorg/jruby/java/addons/ClassJavaAddons;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
25: aload 0
invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
ldc "StringIO"
invokevirtual org.jruby.RubyClass.isConstantDefined:(Ljava/lang/String;)Z
ifeq 27
26: aload 0
invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
ldc "StringIO"
invokevirtual org.jruby.RubyClass.getConstant:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyClass
ldc Lorg/jruby/java/addons/IOJavaAddons$AnyIO;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
27: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyModule org.jruby.RubyClass
StackMap stack:
aload 0
aload 0
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
invokevirtual org.jruby.javasupport.JavaSupport.getNameClassMap:()Ljava/util/Map;
invokestatic org.jruby.javasupport.Java.addNameClassMappings:(Lorg/jruby/Ruby;Ljava/util/Map;)V
28: aload 0
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
aload 0
ldc Ljava/lang/Object;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokevirtual org.jruby.javasupport.JavaSupport.setObjectJavaClass:(Lorg/jruby/javasupport/JavaClass;)V
29: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 runtime Lorg/jruby/Ruby;
1 30 1 context Lorg/jruby/runtime/ThreadContext;
2 30 2 Java Lorg/jruby/RubyModule;
4 30 3 _JavaObject Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime final
private static void addNameClassMappings(org.jruby.Ruby, java.util.Map<java.lang.String, org.jruby.javasupport.JavaClass>);
descriptor: (Lorg/jruby/Ruby;Ljava/util/Map;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=14, args_size=2
start local 0 start local 1 0: aload 0
ldc Ljava/lang/Boolean;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
astore 2
start local 2 1: aload 1
ldc "boolean"
aload 0
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 1
ldc "Boolean"
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: aload 1
ldc "java.lang.Boolean"
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 0
ldc Ljava/lang/Byte;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
astore 3
start local 3 5: aload 1
ldc "byte"
aload 0
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: aload 1
ldc "Byte"
aload 3
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: aload 1
ldc "java.lang.Byte"
aload 3
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: aload 0
ldc Ljava/lang/Short;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
astore 4
start local 4 9: aload 1
ldc "short"
aload 0
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
10: aload 1
ldc "Short"
aload 4
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
11: aload 1
ldc "java.lang.Short"
aload 4
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
12: aload 0
ldc Ljava/lang/Character;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
astore 5
start local 5 13: aload 1
ldc "char"
aload 0
getstatic java.lang.Character.TYPE:Ljava/lang/Class;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
14: aload 1
ldc "Character"
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
15: aload 1
ldc "Char"
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
16: aload 1
ldc "java.lang.Character"
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
17: aload 0
ldc Ljava/lang/Integer;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
astore 6
start local 6 18: aload 1
ldc "int"
aload 0
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
19: aload 1
ldc "Integer"
aload 6
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
20: aload 1
ldc "Int"
aload 6
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
21: aload 1
ldc "java.lang.Integer"
aload 6
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
22: aload 0
ldc Ljava/lang/Long;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
astore 7
start local 7 23: aload 1
ldc "long"
aload 0
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
24: aload 1
ldc "Long"
aload 7
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
25: aload 1
ldc "java.lang.Long"
aload 7
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
26: aload 0
ldc Ljava/lang/Float;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
astore 8
start local 8 27: aload 1
ldc "float"
aload 0
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
28: aload 1
ldc "Float"
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
29: aload 1
ldc "java.lang.Float"
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
30: aload 0
ldc Ljava/lang/Double;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
astore 9
start local 9 31: aload 1
ldc "double"
aload 0
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
32: aload 1
ldc "Double"
aload 9
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
33: aload 1
ldc "java.lang.Double"
aload 9
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
34: aload 0
ldc Ljava/math/BigInteger;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
astore 10
start local 10 35: aload 1
ldc "big_int"
aload 10
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
36: aload 1
ldc "big_integer"
aload 10
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
37: aload 1
ldc "BigInteger"
aload 10
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
38: aload 1
ldc "java.math.BigInteger"
aload 10
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
39: aload 0
ldc Ljava/math/BigDecimal;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
astore 11
start local 11 40: aload 1
ldc "big_decimal"
aload 11
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
41: aload 1
ldc "BigDecimal"
aload 11
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
42: aload 1
ldc "java.math.BigDecimal"
aload 11
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
43: aload 0
ldc Ljava/lang/Object;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
astore 12
start local 12 44: aload 1
ldc "object"
aload 12
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
45: aload 1
ldc "Object"
aload 12
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
46: aload 1
ldc "java.lang.Object"
aload 12
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
47: aload 0
ldc Ljava/lang/String;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
astore 13
start local 13 48: aload 1
ldc "string"
aload 13
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
49: aload 1
ldc "String"
aload 13
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
50: aload 1
ldc "java.lang.String"
aload 13
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
51: aload 1
ldc "void"
aload 0
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
52: aload 1
ldc "Void"
aload 0
ldc Ljava/lang/Void;
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
53: return
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 54 0 runtime Lorg/jruby/Ruby;
0 54 1 nameClassMap Ljava/util/Map<Ljava/lang/String;Lorg/jruby/javasupport/JavaClass;>;
1 54 2 booleanClass Lorg/jruby/javasupport/JavaClass;
5 54 3 byteClass Lorg/jruby/javasupport/JavaClass;
9 54 4 shortClass Lorg/jruby/javasupport/JavaClass;
13 54 5 charClass Lorg/jruby/javasupport/JavaClass;
18 54 6 intClass Lorg/jruby/javasupport/JavaClass;
23 54 7 longClass Lorg/jruby/javasupport/JavaClass;
27 54 8 floatClass Lorg/jruby/javasupport/JavaClass;
31 54 9 doubleClass Lorg/jruby/javasupport/JavaClass;
35 54 10 bigintClass Lorg/jruby/javasupport/JavaClass;
40 54 11 bigdecimalClass Lorg/jruby/javasupport/JavaClass;
44 54 12 objectClass Lorg/jruby/javasupport/JavaClass;
48 54 13 stringClass Lorg/jruby/javasupport/JavaClass;
Signature: (Lorg/jruby/Ruby;Ljava/util/Map<Ljava/lang/String;Lorg/jruby/javasupport/JavaClass;>;)V
MethodParameters:
Name Flags
runtime final
nameClassMap final
public static org.jruby.runtime.builtin.IRubyObject create_proxy_class(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
astore 4
start local 4 1: aload 3
instanceof org.jruby.RubyModule
ifne 3
2: aload 4
aload 3
aload 4
invokevirtual org.jruby.Ruby.getModule:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.Ruby.newTypeError:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;)Lorg/jruby/exceptions/RaiseException;
athrow
3: StackMap locals: org.jruby.Ruby
StackMap stack:
aload 0
aload 2
invokestatic org.jruby.javasupport.Java.get_proxy_class:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
astore 5
start local 5 4: aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
astore 6
start local 6 5: aload 3
checkcast org.jruby.RubyModule
aload 6
invokevirtual org.jruby.RubyModule.getConstantNoConstMissing:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 7
start local 7 6: aload 7
ifnull 8
aload 7
getstatic org.jruby.RubyBasicObject.UNDEF:Lorg/jruby/runtime/builtin/IRubyObject;
if_acmpeq 8
aload 7
aload 5
if_acmpeq 8
7: aload 4
invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
new java.lang.StringBuilder
dup
ldc "replacing "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " with "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " in constant '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " on class/module "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.common.RubyWarnings.warn:(Ljava/lang/String;)V
8: StackMap locals: org.jruby.RubyModule java.lang.String org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 3
checkcast org.jruby.RubyModule
aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
aload 5
invokevirtual org.jruby.RubyModule.setConstantQuiet:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
9: aload 5
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 self Lorg/jruby/runtime/builtin/IRubyObject;
0 10 1 name Lorg/jruby/runtime/builtin/IRubyObject;
0 10 2 javaClass Lorg/jruby/runtime/builtin/IRubyObject;
0 10 3 module Lorg/jruby/runtime/builtin/IRubyObject;
1 10 4 runtime Lorg/jruby/Ruby;
4 10 5 proxyClass Lorg/jruby/RubyModule;
5 10 6 constName Ljava/lang/String;
6 10 7 existing Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
self
name
javaClass
module
public static org.jruby.runtime.builtin.IRubyObject get_java_class(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic org.jruby.javasupport.JavaClass.for_name:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/javasupport/JavaClass;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Exception
astore 2
start local 2 3: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
aload 2
aconst_null
invokevirtual org.jruby.javasupport.JavaSupport.handleNativeException:(Ljava/lang/Throwable;Ljava/lang/reflect/Member;)V
4: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 self Lorg/jruby/runtime/builtin/IRubyObject;
0 5 1 name Lorg/jruby/runtime/builtin/IRubyObject;
3 5 2 e Ljava/lang/Exception;
Exception table:
from to target type
0 1 2 Class java.lang.Exception
MethodParameters:
Name Flags
self final
name final
public static org.jruby.runtime.builtin.IRubyObject getInstance(org.jruby.Ruby, java.lang.Object);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokestatic org.jruby.javasupport.Java.getInstance:(Lorg/jruby/Ruby;Ljava/lang/Object;Z)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 rawJavaObject Ljava/lang/Object;
MethodParameters:
Name Flags
runtime
rawJavaObject
public static org.jruby.runtime.builtin.IRubyObject getInstance(org.jruby.Ruby, java.lang.Object, boolean);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;Z)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 5
1: aload 0
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic org.jruby.javasupport.Java.getProxyClass:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
checkcast org.jruby.RubyClass
astore 3
start local 3 2: getstatic org.jruby.javasupport.Java.OBJECT_PROXY_CACHE:Z
ifne 3
iload 2
ifne 3
aload 3
invokevirtual org.jruby.RubyClass.getCacheProxy:()Z
ifeq 4
3: StackMap locals: org.jruby.RubyClass
StackMap stack:
aload 0
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
invokevirtual org.jruby.javasupport.JavaSupport.getObjectProxyCache:()Lorg/jruby/javasupport/util/ObjectProxyCache;
aload 1
aload 3
invokevirtual org.jruby.javasupport.util.ObjectProxyCache.getOrCreate:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
areturn
4: StackMap locals:
StackMap stack:
aload 1
aload 3
invokestatic org.jruby.javasupport.Java.allocateProxy:(Ljava/lang/Object;Lorg/jruby/RubyClass;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 runtime Lorg/jruby/Ruby;
0 6 1 rawJavaObject Ljava/lang/Object;
0 6 2 forceCache Z
2 5 3 proxyClass Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
rawJavaObject
forceCache
public static org.jruby.RubyModule getInterfaceModule(org.jruby.Ruby, org.jruby.javasupport.JavaClass);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/javasupport/JavaClass;)Lorg/jruby/RubyModule;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.jruby.javasupport.JavaClass.javaClass:()Ljava/lang/Class;
invokestatic org.jruby.javasupport.Java.getInterfaceModule:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 javaClass Lorg/jruby/javasupport/JavaClass;
MethodParameters:
Name Flags
runtime final
javaClass final
public static org.jruby.RubyModule getInterfaceModule(org.jruby.Ruby, java.lang.Class);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic org.jruby.javasupport.Java.getProxyClass:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 javaClass Ljava/lang/Class;
MethodParameters:
Name Flags
runtime final
javaClass final
public static org.jruby.RubyModule get_interface_module(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.jruby.RubyString
ifeq 3
1: aload 0
aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
invokestatic org.jruby.javasupport.JavaClass.forNameVerbose:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/javasupport/JavaClass;
astore 2
start local 2 2: goto 11
end local 2 3: StackMap locals:
StackMap stack:
aload 1
instanceof org.jruby.javasupport.JavaClass
ifeq 6
4: aload 1
checkcast org.jruby.javasupport.JavaClass
astore 2
start local 2 5: goto 11
end local 2 6: StackMap locals:
StackMap stack:
aload 1
invokestatic org.jruby.javasupport.Java.unwrapJavaString:(Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/String;
dup
astore 3
start local 3 7: ifnull 10
8: aload 0
aload 3
invokestatic org.jruby.javasupport.JavaClass.forNameVerbose:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/javasupport/JavaClass;
astore 2
start local 2 9: goto 11
end local 2 10: StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject top java.lang.String
StackMap stack:
aload 0
new java.lang.StringBuilder
dup
ldc "expected JavaClass, got "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 3 start local 2 11: StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.javasupport.JavaClass
StackMap stack:
aload 0
aload 2
invokestatic org.jruby.javasupport.Java.getInterfaceModule:(Lorg/jruby/Ruby;Lorg/jruby/javasupport/JavaClass;)Lorg/jruby/RubyModule;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 runtime Lorg/jruby/Ruby;
0 12 1 javaClassObject Lorg/jruby/runtime/builtin/IRubyObject;
2 3 2 javaClass Lorg/jruby/javasupport/JavaClass;
5 6 2 javaClass Lorg/jruby/javasupport/JavaClass;
9 10 2 javaClass Lorg/jruby/javasupport/JavaClass;
11 12 2 javaClass Lorg/jruby/javasupport/JavaClass;
7 11 3 javaName Ljava/lang/String;
MethodParameters:
Name Flags
runtime final
javaClassObject
public static org.jruby.RubyModule get_proxy_class(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
astore 2
start local 2 1: aload 1
instanceof org.jruby.RubyString
ifeq 4
2: aload 0
aload 1
invokestatic org.jruby.javasupport.JavaClass.for_name:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/javasupport/JavaClass;
astore 3
start local 3 3: goto 12
end local 3 4: StackMap locals: org.jruby.Ruby
StackMap stack:
aload 1
instanceof org.jruby.javasupport.JavaClass
ifeq 7
5: aload 1
checkcast org.jruby.javasupport.JavaClass
astore 3
start local 3 6: goto 12
end local 3 7: StackMap locals:
StackMap stack:
aload 1
invokestatic org.jruby.javasupport.Java.unwrapJavaString:(Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/String;
dup
astore 4
start local 4 8: ifnull 11
9: aload 0
aload 4
invokestatic org.jruby.javasupport.JavaClass.for_name:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/javasupport/JavaClass;
astore 3
start local 3 10: goto 12
end local 3 11: StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby top java.lang.String
StackMap stack:
aload 2
aload 1
aload 2
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
invokevirtual org.jruby.javasupport.JavaSupport.getJavaClassClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.Ruby.newTypeError:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 4 start local 3 12: StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.javasupport.JavaClass
StackMap stack:
aload 2
aload 3
invokestatic org.jruby.javasupport.Java.getProxyClass:(Lorg/jruby/Ruby;Lorg/jruby/javasupport/JavaClass;)Lorg/jruby/RubyModule;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 self Lorg/jruby/runtime/builtin/IRubyObject;
0 13 1 java_class Lorg/jruby/runtime/builtin/IRubyObject;
1 13 2 runtime Lorg/jruby/Ruby;
3 4 3 javaClass Lorg/jruby/javasupport/JavaClass;
6 7 3 javaClass Lorg/jruby/javasupport/JavaClass;
10 11 3 javaClass Lorg/jruby/javasupport/JavaClass;
12 13 3 javaClass Lorg/jruby/javasupport/JavaClass;
8 12 4 javaName Ljava/lang/String;
MethodParameters:
Name Flags
self final
java_class final
private static java.lang.String unwrapJavaString(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
instanceof org.jruby.java.proxies.JavaProxy
ifeq 5
1: aload 0
checkcast org.jruby.java.proxies.JavaProxy
invokevirtual org.jruby.java.proxies.JavaProxy.getObject:()Ljava/lang/Object;
astore 1
start local 1 2: aload 1
instanceof java.lang.String
ifeq 3
aload 1
checkcast java.lang.String
goto 4
StackMap locals: java.lang.Object
StackMap stack:
3: aconst_null
StackMap locals:
StackMap stack: java.lang.String
4: areturn
end local 1 5: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 arg Lorg/jruby/runtime/builtin/IRubyObject;
2 5 1 str Ljava/lang/Object;
MethodParameters:
Name Flags
arg
public static org.jruby.RubyClass getProxyClassForObject(org.jruby.Ruby, java.lang.Object);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/RubyClass;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic org.jruby.javasupport.Java.getProxyClass:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
checkcast org.jruby.RubyClass
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 object Ljava/lang/Object;
MethodParameters:
Name Flags
runtime
object
public static org.jruby.RubyModule getProxyClass(org.jruby.Ruby, org.jruby.javasupport.JavaClass);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/javasupport/JavaClass;)Lorg/jruby/RubyModule;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.jruby.javasupport.JavaClass.javaClass:()Ljava/lang/Class;
invokestatic org.jruby.javasupport.Java.getProxyClass:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 javaClass Lorg/jruby/javasupport/JavaClass;
MethodParameters:
Name Flags
runtime
javaClass
public static org.jruby.RubyModule getProxyClass(org.jruby.Ruby, java.lang.Class<?>);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
aload 1
invokevirtual org.jruby.javasupport.JavaSupport.getUnfinishedProxy:(Ljava/lang/Class;)Lorg/jruby/RubyModule;
astore 2
start local 2 1: aload 2
ifnull 2
aload 2
areturn
2: StackMap locals: org.jruby.RubyModule
StackMap stack:
aload 0
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
aload 1
invokevirtual org.jruby.javasupport.JavaSupport.getProxyClassFromCache:(Ljava/lang/Class;)Lorg/jruby/RubyModule;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 runtime Lorg/jruby/Ruby;
0 3 1 clazz Ljava/lang/Class<*>;
1 3 2 proxy Lorg/jruby/RubyModule;
Signature: (Lorg/jruby/Ruby;Ljava/lang/Class<*>;)Lorg/jruby/RubyModule;
MethodParameters:
Name Flags
runtime final
clazz final
static org.jruby.RubyModule createProxyClassForClass(org.jruby.Ruby, java.lang.Class<?>);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
astore 2
start local 2 1: aconst_null
astore 4
start local 4 2: aload 1
invokevirtual java.lang.Class.isInterface:()Z
ifeq 5
3: aload 0
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
invokevirtual org.jruby.javasupport.JavaSupport.getJavaInterfaceTemplate:()Lorg/jruby/RubyModule;
invokevirtual org.jruby.RubyModule.dup:()Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyModule
astore 3
start local 3 4: goto 16
end local 3 5: StackMap locals: org.jruby.Ruby java.lang.Class org.jruby.javasupport.JavaSupport top org.jruby.RubyClass
StackMap stack:
aload 1
invokevirtual java.lang.Class.isArray:()Z
ifeq 8
6: aload 2
invokevirtual org.jruby.javasupport.JavaSupport.getArrayProxyClass:()Lorg/jruby/RubyClass;
astore 4
7: goto 15
StackMap locals:
StackMap stack:
8: aload 1
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 11
9: aload 2
invokevirtual org.jruby.javasupport.JavaSupport.getConcreteProxyClass:()Lorg/jruby/RubyClass;
astore 4
10: goto 15
StackMap locals:
StackMap stack:
11: aload 1
ldc Ljava/lang/Object;
if_acmpne 14
12: aload 2
invokevirtual org.jruby.javasupport.JavaSupport.getConcreteProxyClass:()Lorg/jruby/RubyClass;
astore 4
13: goto 15
14: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
invokestatic org.jruby.javasupport.Java.getProxyClass:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
checkcast org.jruby.RubyClass
astore 4
15: StackMap locals:
StackMap stack:
aload 0
aload 4
invokestatic org.jruby.RubyClass.newClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)Lorg/jruby/RubyClass;
astore 3
start local 3 16: StackMap locals: org.jruby.Ruby java.lang.Class org.jruby.javasupport.JavaSupport org.jruby.RubyModule org.jruby.RubyClass
StackMap stack:
aload 2
aload 1
aload 3
invokevirtual org.jruby.javasupport.JavaSupport.beginProxy:(Ljava/lang/Class;Lorg/jruby/RubyModule;)V
17: aload 1
invokevirtual java.lang.Class.isInterface:()Z
ifeq 20
18: aload 0
aload 1
aload 3
invokestatic org.jruby.javasupport.Java.generateInterfaceProxy:(Lorg/jruby/Ruby;Ljava/lang/Class;Lorg/jruby/RubyModule;)V
19: goto 25
20: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 3
checkcast org.jruby.RubyClass
aload 4
invokestatic org.jruby.javasupport.Java.generateClassProxy:(Lorg/jruby/Ruby;Ljava/lang/Class;Lorg/jruby/RubyClass;Lorg/jruby/RubyClass;)V
21: goto 25
StackMap locals:
StackMap stack: java.lang.Throwable
22: astore 5
23: aload 2
aload 1
invokevirtual org.jruby.javasupport.JavaSupport.endProxy:(Ljava/lang/Class;)V
24: aload 5
athrow
25: StackMap locals:
StackMap stack:
aload 2
aload 1
invokevirtual org.jruby.javasupport.JavaSupport.endProxy:(Ljava/lang/Class;)V
26: aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 runtime Lorg/jruby/Ruby;
0 27 1 clazz Ljava/lang/Class<*>;
1 27 2 javaSupport Lorg/jruby/javasupport/JavaSupport;
4 5 3 proxy Lorg/jruby/RubyModule;
16 27 3 proxy Lorg/jruby/RubyModule;
2 27 4 superClass Lorg/jruby/RubyClass;
Exception table:
from to target type
17 22 22 any
Signature: (Lorg/jruby/Ruby;Ljava/lang/Class<*>;)Lorg/jruby/RubyModule;
MethodParameters:
Name Flags
runtime final
clazz final
private static void generateInterfaceProxy(org.jruby.Ruby, java.lang.Class, org.jruby.RubyModule);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Class;Lorg/jruby/RubyModule;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.jruby.javasupport.Java.$assertionsDisabled:Z
ifne 1
aload 1
invokevirtual java.lang.Class.isInterface:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
astore 3
start local 3 2: aload 3
arraylength
istore 4
start local 4 3: goto 6
4: StackMap locals: java.lang.Class[] int
StackMap stack:
aload 0
aload 3
iload 4
aaload
invokestatic org.jruby.javasupport.Java.getInterfaceModule:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
astore 5
start local 5 5: aload 2
aload 5
invokevirtual org.jruby.RubyModule.includeModule:(Lorg/jruby/runtime/builtin/IRubyObject;)V
end local 5 6: StackMap locals:
StackMap stack:
iinc 4 -1
iload 4
ifge 4
end local 4 7: aload 0
aload 1
aload 2
invokestatic org.jruby.javasupport.binding.Initializer.setupProxyModule:(Lorg/jruby/Ruby;Ljava/lang/Class;Lorg/jruby/RubyModule;)Lorg/jruby/RubyModule;
pop
8: aload 2
invokestatic org.jruby.javasupport.Java.addToJavaPackageModule:(Lorg/jruby/RubyModule;)V
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 runtime Lorg/jruby/Ruby;
0 10 1 javaClass Ljava/lang/Class;
0 10 2 proxy Lorg/jruby/RubyModule;
2 10 3 extended [Ljava/lang/Class;
3 7 4 i I
5 6 5 extModule Lorg/jruby/RubyModule;
MethodParameters:
Name Flags
runtime final
javaClass final
proxy final
private static void generateClassProxy(org.jruby.Ruby, java.lang.Class<?>, org.jruby.RubyClass, org.jruby.RubyClass);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Class;Lorg/jruby/RubyClass;Lorg/jruby/RubyClass;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual java.lang.Class.isArray:()Z
ifeq 5
1: aload 0
aload 2
aload 1
aload 3
iconst_1
invokestatic org.jruby.javasupport.Java.createProxyClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/lang/Class;Lorg/jruby/RubyClass;Z)Lorg/jruby/RubyClass;
pop
2: aload 1
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
if_acmpne 24
3: aload 2
ldc Lorg/jruby/javasupport/Java$ByteArrayProxyMethods;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
4: goto 24
5: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 8
6: aload 0
aload 2
aload 1
aload 3
iconst_1
invokestatic org.jruby.javasupport.Java.createProxyClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/lang/Class;Lorg/jruby/RubyClass;Z)Lorg/jruby/RubyClass;
pop
7: goto 24
8: StackMap locals:
StackMap stack:
aload 1
ldc Ljava/lang/Object;
if_acmpne 16
9: aload 0
aload 2
aload 1
aload 3
iconst_1
invokestatic org.jruby.javasupport.Java.createProxyClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/lang/Class;Lorg/jruby/RubyClass;Z)Lorg/jruby/RubyClass;
pop
10: getstatic org.jruby.javasupport.Java.NEW_STYLE_EXTENSION:Z
ifeq 13
11: aload 2
invokevirtual org.jruby.RubyClass.getMetaClass:()Lorg/jruby/RubyClass;
ldc Lorg/jruby/javasupport/Java$NewStyleExtensionInherited;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
12: goto 14
13: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.jruby.RubyClass.getMetaClass:()Lorg/jruby/RubyClass;
ldc Lorg/jruby/javasupport/Java$OldStyleExtensionInherited;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
14: StackMap locals:
StackMap stack:
aload 2
invokestatic org.jruby.javasupport.Java.addToJavaPackageModule:(Lorg/jruby/RubyModule;)V
15: goto 24
16: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 1
aload 3
iconst_0
invokestatic org.jruby.javasupport.Java.createProxyClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/lang/Class;Lorg/jruby/RubyClass;Z)Lorg/jruby/RubyClass;
pop
17: aload 1
invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
astore 4
start local 4 18: aload 4
arraylength
istore 5
start local 5 19: goto 21
20: StackMap locals: java.lang.Class[] int
StackMap stack:
aload 2
aload 0
aload 4
iload 5
aaload
invokestatic org.jruby.javasupport.Java.getInterfaceModule:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
invokevirtual org.jruby.RubyClass.includeModule:(Lorg/jruby/runtime/builtin/IRubyObject;)V
21: StackMap locals:
StackMap stack:
iinc 5 -1
iload 5
ifge 20
end local 5 22: aload 1
invokevirtual java.lang.Class.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isPublic:(I)Z
ifeq 24
23: aload 2
invokestatic org.jruby.javasupport.Java.addToJavaPackageModule:(Lorg/jruby/RubyModule;)V
end local 4 24: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.Class.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isFinal:(I)Z
ifeq 27
25: aload 1
invokevirtual java.lang.Class.getCanonicalName:()Ljava/lang/String;
astore 4
start local 4 26: aload 2
invokevirtual org.jruby.RubyClass.getMetaClass:()Lorg/jruby/RubyClass;
ldc "inherited"
new org.jruby.javasupport.Java$1
dup
aload 2
getstatic org.jruby.runtime.Visibility.PUBLIC:Lorg/jruby/runtime/Visibility;
ldc "inherited"
aload 4
invokespecial org.jruby.javasupport.Java$1.<init>:(Lorg/jruby/RubyModule;Lorg/jruby/runtime/Visibility;Ljava/lang/String;Ljava/lang/String;)V
invokevirtual org.jruby.RubyClass.addMethod:(Ljava/lang/String;Lorg/jruby/internal/runtime/methods/DynamicMethod;)V
end local 4 27: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 runtime Lorg/jruby/Ruby;
0 28 1 clazz Ljava/lang/Class<*>;
0 28 2 proxy Lorg/jruby/RubyClass;
0 28 3 superClass Lorg/jruby/RubyClass;
18 24 4 interfaces [Ljava/lang/Class;
19 22 5 i I
26 27 4 clazzName Ljava/lang/String;
Signature: (Lorg/jruby/Ruby;Ljava/lang/Class<*>;Lorg/jruby/RubyClass;Lorg/jruby/RubyClass;)V
MethodParameters:
Name Flags
runtime
clazz
proxy
superClass
private static org.jruby.RubyClass createProxyClass(org.jruby.Ruby, org.jruby.RubyClass, java.lang.Class<?>, org.jruby.RubyClass, boolean);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/lang/Class;Lorg/jruby/RubyClass;Z)Lorg/jruby/RubyClass;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
aload 3
invokevirtual org.jruby.RubyClass.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.makeMetaClass:(Lorg/jruby/RubyClass;)Lorg/jruby/RubyClass;
pop
1: ldc Ljava/util/Map;
aload 2
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 6
2: aload 1
aload 0
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
invokevirtual org.jruby.javasupport.JavaSupport.getMapJavaProxyClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getAllocator:()Lorg/jruby/runtime/ObjectAllocator;
invokevirtual org.jruby.RubyClass.setAllocator:(Lorg/jruby/runtime/ObjectAllocator;)V
3: aload 1
ldc Lorg/jruby/java/proxies/MapJavaProxy;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
4: aload 1
aload 0
invokevirtual org.jruby.Ruby.getEnumerable:()Lorg/jruby/RubyModule;
invokevirtual org.jruby.RubyClass.includeModule:(Lorg/jruby/runtime/builtin/IRubyObject;)V
5: goto 7
6: StackMap locals:
StackMap stack:
aload 1
aload 3
invokevirtual org.jruby.RubyClass.getAllocator:()Lorg/jruby/runtime/ObjectAllocator;
invokevirtual org.jruby.RubyClass.setAllocator:(Lorg/jruby/runtime/ObjectAllocator;)V
7: StackMap locals:
StackMap stack:
aload 1
ldc Lorg/jruby/java/proxies/JavaProxy$ClassMethods;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
8: iload 4
ifeq 9
aload 1
aload 3
invokevirtual org.jruby.RubyClass.inherit:(Lorg/jruby/RubyClass;)V
9: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 1
invokestatic org.jruby.javasupport.binding.Initializer.setupProxyClass:(Lorg/jruby/Ruby;Ljava/lang/Class;Lorg/jruby/RubyClass;)Lorg/jruby/RubyModule;
pop
10: aload 1
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 runtime Lorg/jruby/Ruby;
0 11 1 proxyClass Lorg/jruby/RubyClass;
0 11 2 javaClass Ljava/lang/Class<*>;
0 11 3 superClass Lorg/jruby/RubyClass;
0 11 4 invokeInherited Z
Signature: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/lang/Class<*>;Lorg/jruby/RubyClass;Z)Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime final
proxyClass final
javaClass final
superClass final
invokeInherited
public static org.jruby.runtime.builtin.IRubyObject concrete_proxy_inherited(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
aload 0
aload 1
invokestatic org.jruby.javasupport.Java.invokeProxyClassInherited:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 clazz Lorg/jruby/runtime/builtin/IRubyObject;
0 1 1 subclazz Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
clazz final
subclazz final
private static org.jruby.runtime.builtin.IRubyObject invokeProxyClassInherited(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
astore 3
start local 3 1: aload 3
invokevirtual org.jruby.javasupport.JavaSupport.getJavaProxyClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getMetaClass:()Lorg/jruby/RubyClass;
astore 4
start local 4 2: aload 0
aload 4
aload 1
ldc "inherited"
aload 2
getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
invokestatic org.jruby.runtime.Helpers.invokeAs:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyClass;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
3: aload 2
instanceof org.jruby.RubyClass
ifne 5
4: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 2
aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getClassClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.Ruby.newTypeError:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;)Lorg/jruby/exceptions/RaiseException;
athrow
5: StackMap locals: org.jruby.javasupport.JavaSupport org.jruby.RubyClass
StackMap stack:
aload 0
aload 2
checkcast org.jruby.RubyClass
invokestatic org.jruby.javasupport.Java.setupJavaSubclass:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyClass;)V
6: aload 0
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 context Lorg/jruby/runtime/ThreadContext;
0 7 1 clazz Lorg/jruby/runtime/builtin/IRubyObject;
0 7 2 subclazz Lorg/jruby/runtime/builtin/IRubyObject;
1 7 3 javaSupport Lorg/jruby/javasupport/JavaSupport;
2 7 4 javaProxyClass Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
context final
clazz final
subclazz final
private static void setupJavaSubclass(org.jruby.runtime.ThreadContext, org.jruby.RubyClass);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyClass;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ldc "@java_proxy_class"
aload 0
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
invokevirtual org.jruby.RubyClass.setInstanceVariable:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
1: aload 1
iconst_1
invokevirtual org.jruby.RubyClass.setCacheProxy:(Z)V
2: aload 1
invokevirtual org.jruby.RubyClass.getSingletonClass:()Lorg/jruby/RubyClass;
astore 2
start local 2 3: aload 2
aload 0
ldc "java_proxy_class"
invokevirtual org.jruby.RubyClass.addReadWriteAttribute:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)V
4: aload 2
ldc "java_interfaces"
new org.jruby.javasupport.Java$2
dup
aload 2
getstatic org.jruby.runtime.Visibility.PUBLIC:Lorg/jruby/runtime/Visibility;
ldc "java_interfaces"
invokespecial org.jruby.javasupport.Java$2.<init>:(Lorg/jruby/RubyModule;Lorg/jruby/runtime/Visibility;Ljava/lang/String;)V
invokevirtual org.jruby.RubyClass.addMethod:(Ljava/lang/String;Lorg/jruby/internal/runtime/methods/DynamicMethod;)V
5: aload 1
ldc "__jcreate!"
new org.jruby.javasupport.Java$JCreateMethod
dup
aload 2
invokespecial org.jruby.javasupport.Java$JCreateMethod.<init>:(Lorg/jruby/RubyModule;)V
invokevirtual org.jruby.RubyClass.addMethod:(Ljava/lang/String;Lorg/jruby/internal/runtime/methods/DynamicMethod;)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 context Lorg/jruby/runtime/ThreadContext;
0 7 1 subclass Lorg/jruby/RubyClass;
3 7 2 subclassSingleton Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
context final
subclass final
static <T extends org.jruby.javasupport.ParameterTypes> java.util.ArrayList<T> findCallablesForArity(int, T[]);
descriptor: (I[Lorg/jruby/javasupport/ParameterTypes;)Ljava/util/ArrayList;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
aload 1
arraylength
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 6
3: StackMap locals: java.util.ArrayList int
StackMap stack:
iload 0
aload 1
iload 3
invokestatic org.jruby.javasupport.Java.checkCallableForArity:(I[Lorg/jruby/javasupport/ParameterTypes;I)Lorg/jruby/javasupport/ParameterTypes;
astore 4
start local 4 4: aload 4
ifnull 5
aload 2
aload 4
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 4 5: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
aload 1
arraylength
if_icmplt 3
end local 3 7: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 arity I
0 8 1 callables [Lorg/jruby/javasupport/ParameterTypes;
1 8 2 forArity Ljava/util/ArrayList<TT;>;
2 7 3 i I
4 5 4 found TT;
Signature: <T::Lorg/jruby/javasupport/ParameterTypes;>(I[TT;)Ljava/util/ArrayList<TT;>;
MethodParameters:
Name Flags
arity final
callables final
private static <T extends org.jruby.javasupport.ParameterTypes> T checkCallableForArity(int, T[], );
descriptor: (I[Lorg/jruby/javasupport/ParameterTypes;I)Lorg/jruby/javasupport/ParameterTypes;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iload 2
aaload
astore 3
start local 3 1: aload 3
invokeinterface org.jruby.javasupport.ParameterTypes.getArity:()I
istore 4
start local 4 2: iload 4
iload 0
if_icmpne 3
aload 3
areturn
3: StackMap locals: org.jruby.javasupport.ParameterTypes int
StackMap stack:
aload 3
invokeinterface org.jruby.javasupport.ParameterTypes.isVarArgs:()Z
ifeq 5
iload 4
iconst_1
isub
iload 0
if_icmpgt 5
4: aload 3
areturn
5: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 arity I
0 6 1 callables [Lorg/jruby/javasupport/ParameterTypes;
0 6 2 index I
1 6 3 callable TT;
2 6 4 callableArity I
Signature: <T::Lorg/jruby/javasupport/ParameterTypes;>(I[TT;I)TT;
MethodParameters:
Name Flags
arity final
callables final
index final
private static void addToJavaPackageModule(org.jruby.RubyModule);
descriptor: (Lorg/jruby/RubyModule;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=8, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyModule.getRuntime:()Lorg/jruby/Ruby;
astore 1
start local 1 1: aload 0
invokevirtual org.jruby.RubyModule.dataGetStruct:()Ljava/lang/Object;
checkcast java.lang.Class
astore 2
start local 2 2: aload 2
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
dup
astore 3
start local 3 3: ifnonnull 4
return
4: StackMap locals: org.jruby.Ruby java.lang.Class java.lang.String
StackMap stack:
aload 3
bipush 36
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 6
5: return
6: StackMap locals:
StackMap stack:
aload 3
bipush 46
invokevirtual java.lang.String.lastIndexOf:(I)I
istore 6
start local 6 7: iload 6
ifge 8
ldc ""
goto 9
StackMap locals: org.jruby.RubyModule org.jruby.Ruby java.lang.Class java.lang.String top top int
StackMap stack:
8: aload 3
iconst_0
iload 6
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
9: astore 7
start local 7 10: aload 1
aload 7
invokestatic org.jruby.javasupport.Java.getJavaPackageModule:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 4
start local 4 11: aload 4
ifnonnull 12
aload 3
goto 13
StackMap locals: org.jruby.RubyModule org.jruby.Ruby java.lang.Class java.lang.String org.jruby.RubyModule top int java.lang.String
StackMap stack:
12: aload 3
iload 6
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
13: astore 5
end local 7 end local 6 start local 5 14: aload 4
ifnull 18
15: aload 5
invokestatic org.jruby.util.IdUtil.isConstant:(Ljava/lang/String;)Z
ifne 16
aload 4
instanceof org.jruby.javasupport.JavaPackage
ifeq 18
16: StackMap locals: org.jruby.RubyModule org.jruby.Ruby java.lang.Class java.lang.String org.jruby.RubyModule java.lang.String
StackMap stack:
aload 4
aload 5
invokevirtual org.jruby.RubyModule.getConstantAt:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
ifnonnull 18
17: aload 4
aload 5
aload 0
invokevirtual org.jruby.RubyModule.setConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
18: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 proxyClass Lorg/jruby/RubyModule;
1 19 1 runtime Lorg/jruby/Ruby;
2 19 2 clazz Ljava/lang/Class<*>;
3 19 3 fullName Ljava/lang/String;
11 19 4 parentModule Lorg/jruby/RubyModule;
14 19 5 className Ljava/lang/String;
7 14 6 endPackage I
10 14 7 packageString Ljava/lang/String;
MethodParameters:
Name Flags
proxyClass
public static org.jruby.RubyModule getJavaPackageModule(org.jruby.Ruby, java.lang.Package);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Package;)Lorg/jruby/RubyModule;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ifnonnull 1
ldc ""
goto 2
StackMap locals:
StackMap stack: org.jruby.Ruby
1: aload 1
invokevirtual java.lang.Package.getName:()Ljava/lang/String;
StackMap locals: org.jruby.Ruby java.lang.Package
StackMap stack: org.jruby.Ruby java.lang.String
2: invokestatic org.jruby.javasupport.Java.getJavaPackageModule:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 runtime Lorg/jruby/Ruby;
0 3 1 pkg Ljava/lang/Package;
MethodParameters:
Name Flags
runtime final
pkg final
public static org.jruby.RubyModule getJavaPackageModule(org.jruby.Ruby, java.lang.String);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.String.length:()I
dup
istore 3
start local 3 1: ifne 4
2: ldc "Default"
astore 2
start local 2 3: goto 14
end local 2 4: StackMap locals: org.jruby.Ruby java.lang.String top int
StackMap stack:
new java.lang.StringBuilder
dup
iload 3
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 4
start local 4 5: iconst_0
istore 5
start local 5 6: goto 12
7: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 1
bipush 46
iload 5
invokevirtual java.lang.String.indexOf:(II)I
istore 6
start local 6 8: iload 6
iconst_m1
if_icmpne 9
iload 3
istore 6
9: StackMap locals: int
StackMap stack:
aload 4
aload 1
iload 5
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.toUpperCase:(C)C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
10: aload 1
iload 5
iconst_1
iadd
iload 6
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
11: iload 6
iconst_1
iadd
istore 5
end local 6 StackMap locals:
StackMap stack:
12: iload 5
iload 3
if_icmplt 7
end local 5 13: aload 4
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
end local 4 start local 2 14: StackMap locals: org.jruby.Ruby java.lang.String java.lang.String int
StackMap stack:
aload 0
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
invokevirtual org.jruby.javasupport.JavaSupport.getJavaModule:()Lorg/jruby/RubyModule;
astore 4
start local 4 15: aload 4
aload 2
invokevirtual org.jruby.RubyModule.getConstantAt:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
start local 5 16: aload 5
ifnonnull 18
17: aload 0
aload 4
aload 2
aload 1
invokestatic org.jruby.javasupport.Java.createPackageModule:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/RubyModule;
areturn
18: StackMap locals: org.jruby.RubyModule org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 5
instanceof org.jruby.RubyModule
ifeq 20
19: aload 5
checkcast org.jruby.RubyModule
areturn
20: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 runtime Lorg/jruby/Ruby;
0 21 1 packageString Ljava/lang/String;
3 4 2 packageName Ljava/lang/String;
14 21 2 packageName Ljava/lang/String;
1 21 3 length I
5 14 4 name Ljava/lang/StringBuilder;
6 13 5 start I
8 12 6 offset I
15 21 4 javaModule Lorg/jruby/RubyModule;
16 21 5 packageModule Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
runtime final
packageString final
private static org.jruby.RubyModule createPackageModule(org.jruby.Ruby, org.jruby.RubyModule, java.lang.String, java.lang.String);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyModule;Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/RubyModule;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 3
aload 1
invokestatic org.jruby.javasupport.JavaPackage.newPackage:(Lorg/jruby/Ruby;Ljava/lang/CharSequence;Lorg/jruby/RubyModule;)Lorg/jruby/RubyModule;
astore 4
start local 4 1: aload 1
dup
astore 5
monitorenter
2: aload 1
aload 2
invokevirtual org.jruby.RubyModule.fetchConstant:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 6
start local 6 3: aload 6
ifnull 6
4: aload 6
checkcast org.jruby.RubyModule
aload 5
monitorexit
5: areturn
6: StackMap locals: org.jruby.RubyModule org.jruby.RubyModule org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 1
aload 2
invokevirtual java.lang.String.intern:()Ljava/lang/String;
aload 4
invokevirtual org.jruby.RubyModule.setConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
end local 6 7: aload 5
monitorexit
8: goto 11
StackMap locals: org.jruby.Ruby org.jruby.RubyModule java.lang.String java.lang.String org.jruby.RubyModule org.jruby.RubyModule
StackMap stack: java.lang.Throwable
9: aload 5
monitorexit
10: athrow
11: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 runtime Lorg/jruby/Ruby;
0 12 1 parentModule Lorg/jruby/RubyModule;
0 12 2 name Ljava/lang/String;
0 12 3 packageString Ljava/lang/String;
1 12 4 packageModule Lorg/jruby/RubyModule;
3 7 6 packageAlreadySet Lorg/jruby/runtime/builtin/IRubyObject;
Exception table:
from to target type
2 5 9 any
6 8 9 any
9 10 9 any
MethodParameters:
Name Flags
runtime final
parentModule final
name final
packageString final
private static org.jruby.RubyModule getPackageModule(org.jruby.Ruby, java.lang.String);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
invokevirtual org.jruby.javasupport.JavaSupport.getJavaModule:()Lorg/jruby/RubyModule;
astore 2
start local 2 1: aload 2
aload 1
invokevirtual org.jruby.RubyModule.getConstantAt:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
start local 3 2: aload 3
instanceof org.jruby.RubyModule
ifeq 3
aload 3
checkcast org.jruby.RubyModule
areturn
3: StackMap locals: org.jruby.RubyModule org.jruby.runtime.builtin.IRubyObject
StackMap stack:
ldc "Default"
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
ldc ""
astore 4
start local 4 4: goto 7
end local 4 5: StackMap locals:
StackMap stack:
getstatic org.jruby.javasupport.Java.CAMEL_CASE_PACKAGE_SPLITTER:Ljava/util/regex/Pattern;
aload 1
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 5
start local 5 6: aload 5
ldc "$1.$2"
invokevirtual java.util.regex.Matcher.replaceAll:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
astore 4
end local 5 start local 4 7: StackMap locals: java.lang.String
StackMap stack:
aload 0
aload 2
aload 1
aload 4
invokestatic org.jruby.javasupport.Java.createPackageModule:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/RubyModule;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 runtime Lorg/jruby/Ruby;
0 8 1 name Ljava/lang/String;
1 8 2 javaModule Lorg/jruby/RubyModule;
2 8 3 packageModule Lorg/jruby/runtime/builtin/IRubyObject;
4 5 4 packageName Ljava/lang/String;
7 8 4 packageName Ljava/lang/String;
6 7 5 match Ljava/util/regex/Matcher;
MethodParameters:
Name Flags
runtime final
name final
public static org.jruby.RubyModule get_package_module(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
invokestatic org.jruby.javasupport.Java.getPackageModule:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 self Lorg/jruby/runtime/builtin/IRubyObject;
0 1 1 name Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
self final
name final
public static org.jruby.runtime.builtin.IRubyObject get_package_module_dot_format(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
astore 2
start local 2 1: aload 2
aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
invokestatic org.jruby.javasupport.Java.getJavaPackageModule:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 3
start local 3 2: aload 3
ifnonnull 3
aload 2
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
goto 4
StackMap locals: org.jruby.Ruby org.jruby.RubyModule
StackMap stack:
3: aload 3
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject
4: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 self Lorg/jruby/runtime/builtin/IRubyObject;
0 5 1 dottedName Lorg/jruby/runtime/builtin/IRubyObject;
1 5 2 runtime Lorg/jruby/Ruby;
2 5 3 module Lorg/jruby/RubyModule;
MethodParameters:
Name Flags
self final
dottedName final
static org.jruby.RubyModule getProxyOrPackageUnderPackage(org.jruby.runtime.ThreadContext, org.jruby.RubyModule, java.lang.String, boolean);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyModule;Ljava/lang/String;Z)Lorg/jruby/RubyModule;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 4
start local 4 1: aload 2
invokevirtual java.lang.String.length:()I
ifne 3
2: aload 4
ldc "empty class or package name"
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
3: StackMap locals: org.jruby.Ruby
StackMap stack:
aload 1
aload 2
invokestatic org.jruby.javasupport.JavaPackage.buildPackageName:(Lorg/jruby/RubyModule;Ljava/lang/String;)Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
astore 5
start local 5 4: aload 2
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.isUpperCase:(C)Z
ifne 13
5: aload 4
aload 2
iconst_0
invokestatic org.jruby.javasupport.Java.checkJavaReservedNames:(Lorg/jruby/Ruby;Ljava/lang/String;Z)V
6: aload 4
aload 5
invokestatic org.jruby.javasupport.Java.getProxyClassOrNull:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 7
start local 7 7: aload 7
ifnull 9
aload 7
astore 6
start local 6 8: goto 25
end local 6 9: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyModule java.lang.String int org.jruby.Ruby java.lang.String top org.jruby.RubyModule
StackMap stack:
aload 4
aload 5
invokestatic org.jruby.javasupport.Java.getJavaPackageModule:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 8
start local 8 10: aload 8
ifnonnull 11
aconst_null
areturn
11: StackMap locals: org.jruby.RubyModule
StackMap stack:
aload 8
astore 6
end local 8 end local 7 start local 6 12: goto 25
end local 6 13: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyModule java.lang.String int org.jruby.Ruby java.lang.String
StackMap stack:
aload 4
aload 5
invokestatic org.jruby.javasupport.Java.getProxyClassOrNull:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 7
start local 7 14: aload 7
ifnull 16
aload 7
astore 6
start local 6 15: goto 25
end local 6 16: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyModule java.lang.String int org.jruby.Ruby java.lang.String top org.jruby.RubyModule
StackMap stack:
aload 4
invokestatic org.jruby.javasupport.Java.allowUppercasePackageNames:(Lorg/jruby/Ruby;)Z
ifeq 20
17: aload 4
aload 5
invokestatic org.jruby.javasupport.Java.getJavaPackageModule:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 6
start local 6 18: aload 6
ifnonnull 25
19: aload 4
new java.lang.StringBuilder
dup
ldc "missing class (or package) name (`"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "')"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5
invokevirtual org.jruby.Ruby.newNameError:(Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 6 20: StackMap locals:
StackMap stack:
aload 4
new java.lang.StringBuilder
dup
ldc "missing class name (`"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "')"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5
invokevirtual org.jruby.Ruby.newNameError:(Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 7 21: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyModule java.lang.String int org.jruby.Ruby java.lang.String
StackMap stack: java.lang.RuntimeException
astore 7
start local 7 22: aload 7
instanceof org.jruby.exceptions.RaiseException
ifeq 23
aload 7
athrow
23: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyModule java.lang.String int org.jruby.Ruby java.lang.String top java.lang.RuntimeException
StackMap stack:
aload 4
invokevirtual org.jruby.Ruby.isDebug:()Z
ifeq 24
aload 7
invokevirtual java.lang.RuntimeException.printStackTrace:()V
24: StackMap locals:
StackMap stack:
aload 4
new java.lang.StringBuilder
dup
ldc "missing class or uppercase package name (`"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'), caused by "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5
invokevirtual org.jruby.Ruby.newNameError:(Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 7 start local 6 25: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyModule java.lang.String int org.jruby.Ruby java.lang.String org.jruby.RubyModule
StackMap stack:
iload 3
ifeq 26
aload 1
aload 2
aload 6
invokestatic org.jruby.javasupport.Java.bindJavaPackageOrClassMethod:(Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/RubyModule;)Z
pop
26: StackMap locals:
StackMap stack:
aload 6
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 context Lorg/jruby/runtime/ThreadContext;
0 27 1 parentPackage Lorg/jruby/RubyModule;
0 27 2 name Ljava/lang/String;
0 27 3 cacheMethod Z
1 27 4 runtime Lorg/jruby/Ruby;
4 27 5 fullName Ljava/lang/String;
8 9 6 result Lorg/jruby/RubyModule;
12 13 6 result Lorg/jruby/RubyModule;
15 16 6 result Lorg/jruby/RubyModule;
18 20 6 result Lorg/jruby/RubyModule;
25 27 6 result Lorg/jruby/RubyModule;
7 12 7 proxyClass Lorg/jruby/RubyModule;
10 12 8 packageModule Lorg/jruby/RubyModule;
14 21 7 javaClass Lorg/jruby/RubyModule;
22 25 7 e Ljava/lang/RuntimeException;
Exception table:
from to target type
13 21 21 Class java.lang.RuntimeException
MethodParameters:
Name Flags
context final
parentPackage final
name final
cacheMethod final
private static boolean allowUppercasePackageNames(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.Ruby.getInstanceConfig:()Lorg/jruby/RubyInstanceConfig;
invokevirtual org.jruby.RubyInstanceConfig.getAllowUppercasePackageNames:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
MethodParameters:
Name Flags
runtime final
private static void checkJavaReservedNames(org.jruby.Ruby, java.lang.String, boolean);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;Z)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ifne 2
aload 1
invokestatic org.jruby.javasupport.JavaClass.isPrimitiveName:(Ljava/lang/String;)Z
ifeq 2
1: aload 0
new java.lang.StringBuilder
dup
ldc "illegal package name component: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
2: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 runtime Lorg/jruby/Ruby;
0 3 1 name Ljava/lang/String;
0 3 2 allowPrimitives Z
MethodParameters:
Name Flags
runtime final
name final
allowPrimitives final
private static org.jruby.RubyModule getProxyClassOrNull(org.jruby.Ruby, java.lang.String);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokestatic org.jruby.javasupport.Java.getProxyClassOrNull:(Lorg/jruby/Ruby;Ljava/lang/String;Z)Lorg/jruby/RubyModule;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 className Ljava/lang/String;
MethodParameters:
Name Flags
runtime final
className final
private static org.jruby.RubyModule getProxyClassOrNull(org.jruby.Ruby, java.lang.String, boolean);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;Z)Lorg/jruby/RubyModule;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=8, args_size=3
start local 0 start local 1 start local 2 0: ldc Lorg/jruby/javasupport/Java;
dup
astore 4
monitorenter
1: aload 0
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
aload 1
invokevirtual org.jruby.javasupport.JavaSupport.loadJavaClass:(Ljava/lang/String;)Ljava/lang/Class;
astore 3
start local 3 2: aload 4
monitorexit
3: goto 27
end local 3 StackMap locals: org.jruby.Ruby java.lang.String int top java.lang.Class
StackMap stack: java.lang.Throwable
4: aload 4
monitorexit
5: athrow
6: StackMap locals: org.jruby.Ruby java.lang.String int
StackMap stack: java.lang.ExceptionInInitializerError
astore 4
start local 4 7: aload 0
new java.lang.StringBuilder
dup
ldc "cannot initialize Java class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
bipush 40
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
aload 4
iconst_0
invokevirtual org.jruby.Ruby.newNameError:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;Z)Lorg/jruby/exceptions/RaiseException;
athrow
end local 4 8: StackMap locals:
StackMap stack: java.lang.UnsupportedClassVersionError
astore 4
start local 4 9: aload 4
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 5
start local 5 10: aload 4
invokevirtual java.lang.UnsupportedClassVersionError.getLocalizedMessage:()Ljava/lang/String;
astore 6
start local 6 11: aload 6
ifnull 19
12: aload 6
ldc "unsupported major.minor version"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 7
start local 7 13: iload 7
ifle 20
14: iload 7
ldc "unsupported major.minor version"
invokevirtual java.lang.String.length:()I
iadd
istore 7
15: aload 6
iload 7
invokestatic org.jruby.javasupport.Java.mapMajorMinorClassVersionToJavaVersion:(Ljava/lang/String;I)I
istore 7
16: iload 7
ifle 17
new java.lang.StringBuilder
dup
ldc "needs Java "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 7
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
goto 20
17: StackMap locals: org.jruby.Ruby java.lang.String int top java.lang.UnsupportedClassVersionError java.lang.String java.lang.String int
StackMap stack:
new java.lang.StringBuilder
dup
bipush 40
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
end local 7 18: goto 20
19: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
bipush 40
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
20: StackMap locals:
StackMap stack:
aload 0
new java.lang.StringBuilder
dup
ldc "cannot link Java class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
aload 4
iconst_0
invokevirtual org.jruby.Ruby.newNameError:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;Z)Lorg/jruby/exceptions/RaiseException;
athrow
end local 6 end local 5 end local 4 21: StackMap locals: org.jruby.Ruby java.lang.String int
StackMap stack: java.lang.Throwable
pop
22: aconst_null
areturn
23: StackMap locals:
StackMap stack: java.lang.LinkageError
astore 4
start local 4 24: aload 0
new java.lang.StringBuilder
dup
ldc "cannot link Java class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
bipush 40
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
aload 4
iconst_0
invokevirtual org.jruby.Ruby.newNameError:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;Z)Lorg/jruby/exceptions/RaiseException;
athrow
end local 4 25: StackMap locals:
StackMap stack: java.lang.SecurityException
astore 4
start local 4 26: aload 0
aload 4
invokevirtual java.lang.SecurityException.getLocalizedMessage:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newSecurityError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 4 start local 3 27: StackMap locals: java.lang.Class
StackMap stack:
iload 2
ifeq 29
28: aload 0
aload 0
aload 3
invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
invokestatic org.jruby.javasupport.Java.getProxyClass:(Lorg/jruby/Ruby;Lorg/jruby/javasupport/JavaClass;)Lorg/jruby/RubyModule;
areturn
29: StackMap locals:
StackMap stack:
aload 0
aload 3
invokestatic org.jruby.javasupport.Java.getProxyClass:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/RubyModule;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 runtime Lorg/jruby/Ruby;
0 30 1 className Ljava/lang/String;
0 30 2 initJavaClass Z
2 4 3 clazz Ljava/lang/Class<*>;
27 30 3 clazz Ljava/lang/Class<*>;
7 8 4 ex Ljava/lang/ExceptionInInitializerError;
9 21 4 ex Ljava/lang/UnsupportedClassVersionError;
10 21 5 type Ljava/lang/String;
11 21 6 msg Ljava/lang/String;
13 18 7 idx I
24 25 4 ex Ljava/lang/LinkageError;
26 27 4 ex Ljava/lang/SecurityException;
Exception table:
from to target type
1 3 4 any
4 5 4 any
0 6 6 Class java.lang.ExceptionInInitializerError
0 6 8 Class java.lang.UnsupportedClassVersionError
0 6 21 Class java.lang.NoClassDefFoundError
0 6 21 Class java.lang.ClassNotFoundException
0 6 23 Class java.lang.LinkageError
0 6 25 Class java.lang.SecurityException
MethodParameters:
Name Flags
runtime final
className final
initJavaClass final
private static int mapMajorMinorClassVersionToJavaVersion(java.lang.String, int);
descriptor: (Ljava/lang/String;I)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
bipush 46
iload 1
invokevirtual java.lang.String.indexOf:(II)I
dup
istore 2
start local 2 1: iconst_m1
if_icmpne 2
aload 0
invokevirtual java.lang.String.length:()I
istore 2
2: StackMap locals: int
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 0
3: aload 0
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
bipush 50
isub
bipush 6
iadd
4: ireturn
5: StackMap locals:
StackMap stack: java.lang.RuntimeException
pop
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 msg Ljava/lang/String;
0 6 1 offset I
1 6 2 end I
Exception table:
from to target type
3 4 5 Class java.lang.RuntimeException
MethodParameters:
Name Flags
msg
offset final
public static org.jruby.runtime.builtin.IRubyObject get_proxy_or_package_under_package(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 4
start local 4 1: aload 2
instanceof org.jruby.RubyModule
ifne 3
2: aload 4
aload 2
aload 4
invokevirtual org.jruby.Ruby.getModule:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.Ruby.newTypeError:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;)Lorg/jruby/exceptions/RaiseException;
athrow
3: StackMap locals: org.jruby.Ruby
StackMap stack:
aload 0
aload 2
checkcast org.jruby.RubyModule
aload 3
invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
iconst_1
invokestatic org.jruby.javasupport.Java.getProxyOrPackageUnderPackage:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyModule;Ljava/lang/String;Z)Lorg/jruby/RubyModule;
astore 5
start local 5 4: aload 5
ifnull 5
aload 5
goto 6
StackMap locals: org.jruby.RubyModule
StackMap stack:
5: aload 0
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject
6: areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 context Lorg/jruby/runtime/ThreadContext;
0 7 1 self Lorg/jruby/runtime/builtin/IRubyObject;
0 7 2 parentPackage Lorg/jruby/runtime/builtin/IRubyObject;
0 7 3 name Lorg/jruby/runtime/builtin/IRubyObject;
1 7 4 runtime Lorg/jruby/Ruby;
4 7 5 result Lorg/jruby/RubyModule;
MethodParameters:
Name Flags
context final
self final
parentPackage final
name final
private static org.jruby.RubyModule getTopLevelProxyOrPackage(org.jruby.Ruby, java.lang.String, boolean);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;Z)Lorg/jruby/RubyModule;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.lang.String.length:()I
ifne 2
1: aload 0
ldc "empty class or package name"
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
2: StackMap locals:
StackMap stack:
aload 1
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.isLowerCase:(C)Z
ifeq 11
3: aload 0
aload 1
invokestatic org.jruby.javasupport.Java.getProxyClassOrNull:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 4
start local 4 4: aload 4
ifnull 6
aload 4
astore 3
start local 3 5: goto 15
end local 3 6: StackMap locals: org.jruby.Ruby java.lang.String int top org.jruby.RubyModule
StackMap stack:
aload 0
aload 1
iconst_1
invokestatic org.jruby.javasupport.Java.checkJavaReservedNames:(Lorg/jruby/Ruby;Ljava/lang/String;Z)V
7: aload 0
aload 1
invokestatic org.jruby.javasupport.Java.getJavaPackageModule:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 5
start local 5 8: aload 5
ifnonnull 9
aconst_null
areturn
9: StackMap locals: org.jruby.RubyModule
StackMap stack:
aload 5
astore 3
end local 5 end local 4 start local 3 10: goto 15
end local 3 11: StackMap locals: org.jruby.Ruby java.lang.String int
StackMap stack:
aload 0
aload 1
invokestatic org.jruby.javasupport.Java.getProxyClassOrNull:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 4
start local 4 12: aload 4
ifnull 14
aload 4
astore 3
start local 3 13: goto 15
end local 3 14: StackMap locals: org.jruby.Ruby java.lang.String int top org.jruby.RubyModule
StackMap stack:
aload 0
aload 1
invokestatic org.jruby.javasupport.Java.getPackageModule:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 3
end local 4 start local 3 15: StackMap locals: org.jruby.Ruby java.lang.String int org.jruby.RubyModule
StackMap stack:
iload 2
ifeq 16
aload 0
aload 1
aload 3
invokestatic org.jruby.javasupport.Java.bindJavaPackageOrClassMethod:(Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/RubyModule;)Z
pop
16: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 runtime Lorg/jruby/Ruby;
0 17 1 name Ljava/lang/String;
0 17 2 cacheMethod Z
5 6 3 result Lorg/jruby/RubyModule;
10 11 3 result Lorg/jruby/RubyModule;
13 14 3 result Lorg/jruby/RubyModule;
15 17 3 result Lorg/jruby/RubyModule;
4 10 4 proxyClass Lorg/jruby/RubyModule;
8 10 5 packageModule Lorg/jruby/RubyModule;
12 15 4 javaClass Lorg/jruby/RubyModule;
MethodParameters:
Name Flags
runtime final
name final
cacheMethod final
private static boolean bindJavaPackageOrClassMethod(org.jruby.Ruby, java.lang.String, org.jruby.RubyModule);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/RubyModule;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
invokevirtual org.jruby.javasupport.JavaSupport.getJavaModule:()Lorg/jruby/RubyModule;
astore 3
start local 3 1: aload 3
aload 1
aload 2
invokestatic org.jruby.javasupport.Java.bindJavaPackageOrClassMethod:(Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/RubyModule;)Z
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 runtime Lorg/jruby/Ruby;
0 2 1 name Ljava/lang/String;
0 2 2 packageOrClass Lorg/jruby/RubyModule;
1 2 3 javaPackage Lorg/jruby/RubyModule;
MethodParameters:
Name Flags
runtime final
name final
packageOrClass final
private static boolean bindJavaPackageOrClassMethod(org.jruby.RubyModule, java.lang.String, org.jruby.RubyModule);
descriptor: (Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/RubyModule;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.jruby.RubyModule.getMetaClass:()Lorg/jruby/RubyClass;
aload 1
iconst_0
invokevirtual org.jruby.RubyClass.isMethodBound:(Ljava/lang/String;Z)Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.jruby.RubyModule.getSingletonClass:()Lorg/jruby/RubyClass;
astore 3
start local 3 3: aload 3
aload 1
invokevirtual java.lang.String.intern:()Ljava/lang/String;
new org.jruby.javasupport.Java$JavaAccessor
dup
aload 3
aload 2
aload 0
aload 1
invokespecial org.jruby.javasupport.Java$JavaAccessor.<init>:(Lorg/jruby/RubyClass;Lorg/jruby/RubyModule;Lorg/jruby/RubyModule;Ljava/lang/String;)V
invokevirtual org.jruby.RubyClass.addMethod:(Ljava/lang/String;Lorg/jruby/internal/runtime/methods/DynamicMethod;)V
4: iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 parentPackage Lorg/jruby/RubyModule;
0 5 1 name Ljava/lang/String;
0 5 2 packageOrClass Lorg/jruby/RubyModule;
3 5 3 singleton Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
parentPackage final
name final
packageOrClass final
private static org.jruby.RubyModule getProxyUnderClass(org.jruby.runtime.ThreadContext, org.jruby.RubyModule, java.lang.String);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyModule;Ljava/lang/String;)Lorg/jruby/RubyModule;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 1: aload 2
invokevirtual java.lang.String.length:()I
ifne 2
aload 3
ldc "empty class name"
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
2: StackMap locals: org.jruby.Ruby
StackMap stack:
aload 0
aload 1
invokestatic org.jruby.javasupport.JavaClass.getJavaClass:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyModule;)Ljava/lang/Class;
astore 4
start local 4 3: aload 4
ifnonnull 4
aconst_null
areturn
4: StackMap locals: java.lang.Class
StackMap stack:
new java.lang.StringBuilder
dup
aload 4
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
bipush 36
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 5: aload 3
aload 5
invokestatic org.jruby.javasupport.Java.getProxyClassOrNull:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 6
start local 6 6: aload 6
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 context Lorg/jruby/runtime/ThreadContext;
0 7 1 enclosingClass Lorg/jruby/RubyModule;
0 7 2 name Ljava/lang/String;
1 7 3 runtime Lorg/jruby/Ruby;
3 7 4 enclosing Ljava/lang/Class<*>;
5 7 5 fullName Ljava/lang/String;
6 7 6 result Lorg/jruby/RubyModule;
MethodParameters:
Name Flags
context final
enclosingClass final
name final
public static org.jruby.runtime.builtin.IRubyObject get_inner_class(org.jruby.runtime.ThreadContext, org.jruby.RubyModule, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyModule;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
astore 3
start local 3 1: aload 0
aload 1
aload 3
invokestatic org.jruby.javasupport.Java.getProxyUnderClass:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyModule;Ljava/lang/String;)Lorg/jruby/RubyModule;
astore 4
start local 4 2: aload 4
ifnonnull 4
3: aload 0
aload 1
aload 2
getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
invokestatic org.jruby.runtime.Helpers.invokeSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
4: StackMap locals: java.lang.String org.jruby.RubyModule
StackMap stack:
aload 1
aload 3
aload 4
iconst_1
invokestatic org.jruby.javasupport.Java.cacheConstant:(Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/RubyModule;Z)Lorg/jruby/RubyModule;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 context Lorg/jruby/runtime/ThreadContext;
0 5 1 self Lorg/jruby/RubyModule;
0 5 2 name Lorg/jruby/runtime/builtin/IRubyObject;
1 5 3 constName Ljava/lang/String;
2 5 4 innerClass Lorg/jruby/RubyModule;
MethodParameters:
Name Flags
context final
self final
name final
public static org.jruby.runtime.builtin.IRubyObject const_missing(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 1: aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
astore 4
start local 4 2: aload 3
aload 4
iconst_0
invokestatic org.jruby.javasupport.Java.getTopLevelProxyOrPackage:(Lorg/jruby/Ruby;Ljava/lang/String;Z)Lorg/jruby/RubyModule;
astore 5
start local 5 3: aload 5
ifnonnull 4
aload 0
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
4: StackMap locals: org.jruby.Ruby java.lang.String org.jruby.RubyModule
StackMap stack:
aload 1
checkcast org.jruby.RubyModule
aload 4
aload 5
iconst_0
invokestatic org.jruby.javasupport.Java.cacheConstant:(Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/RubyModule;Z)Lorg/jruby/RubyModule;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 context Lorg/jruby/runtime/ThreadContext;
0 5 1 self Lorg/jruby/runtime/builtin/IRubyObject;
0 5 2 name Lorg/jruby/runtime/builtin/IRubyObject;
1 5 3 runtime Lorg/jruby/Ruby;
2 5 4 constName Ljava/lang/String;
3 5 5 packageOrClass Lorg/jruby/RubyModule;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(meta = true)
MethodParameters:
Name Flags
context final
self final
name final
private static org.jruby.RubyModule cacheConstant(org.jruby.RubyModule, java.lang.String, org.jruby.RubyModule, boolean);
descriptor: (Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/RubyModule;Z)Lorg/jruby/RubyModule;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
ifnull 11
1: aload 0
dup
astore 4
monitorenter
2: aload 0
aload 1
invokevirtual org.jruby.RubyModule.fetchConstant:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
start local 5 3: aload 5
ifnull 5
aload 5
checkcast org.jruby.RubyModule
aload 4
monitorexit
4: areturn
5: StackMap locals: org.jruby.RubyModule org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 0
aload 1
aload 2
iload 3
invokevirtual org.jruby.RubyModule.setConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
pop
end local 5 6: aload 4
monitorexit
7: goto 10
StackMap locals: org.jruby.RubyModule java.lang.String org.jruby.RubyModule int org.jruby.RubyModule
StackMap stack: java.lang.Throwable
8: aload 4
monitorexit
9: athrow
10: StackMap locals:
StackMap stack:
aload 2
areturn
11: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 owner Lorg/jruby/RubyModule;
0 12 1 constName Ljava/lang/String;
0 12 2 packageOrClass Lorg/jruby/RubyModule;
0 12 3 hidden Z
3 6 5 alreadySet Lorg/jruby/runtime/builtin/IRubyObject;
Exception table:
from to target type
2 4 8 any
5 7 8 any
8 9 8 any
MethodParameters:
Name Flags
owner final
constName final
packageOrClass final
hidden final
public static org.jruby.runtime.builtin.IRubyObject method_missing(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
iconst_1
invokestatic org.jruby.javasupport.Java.getTopLevelProxyOrPackage:(Lorg/jruby/Ruby;Ljava/lang/String;Z)Lorg/jruby/RubyModule;
astore 3
start local 3 1: aload 3
ifnull 2
aload 3
areturn
2: StackMap locals: org.jruby.RubyModule
StackMap stack:
aload 0
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 context Lorg/jruby/runtime/ThreadContext;
0 3 1 self Lorg/jruby/runtime/builtin/IRubyObject;
0 3 2 name Lorg/jruby/runtime/builtin/IRubyObject;
1 3 3 result Lorg/jruby/RubyModule;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"method_missing"}, meta = true, required = 1)
MethodParameters:
Name Flags
context
self final
name final
public static org.jruby.runtime.builtin.IRubyObject method_missing(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
iconst_0
aaload
astore 3
start local 3 1: aload 2
arraylength
iconst_1
if_icmple 4
2: aload 2
arraylength
iconst_1
isub
istore 4
start local 4 3: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
ldc "Java does not have a method `"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "' with "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " arguments"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 4 4: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 0
aload 1
aload 3
invokestatic org.jruby.javasupport.Java.method_missing:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 context Lorg/jruby/runtime/ThreadContext;
0 5 1 self Lorg/jruby/runtime/builtin/IRubyObject;
0 5 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
1 5 3 name Lorg/jruby/runtime/builtin/IRubyObject;
3 4 4 count I
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"method_missing"}, meta = true, rest = true)
MethodParameters:
Name Flags
context
self final
args final
public static org.jruby.runtime.builtin.IRubyObject get_top_level_proxy_or_package(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
iconst_1
invokestatic org.jruby.javasupport.Java.getTopLevelProxyOrPackage:(Lorg/jruby/Ruby;Ljava/lang/String;Z)Lorg/jruby/RubyModule;
astore 3
start local 3 1: aload 3
ifnull 2
aload 3
goto 3
StackMap locals: org.jruby.RubyModule
StackMap stack:
2: aload 0
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject
3: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 context Lorg/jruby/runtime/ThreadContext;
0 4 1 self Lorg/jruby/runtime/builtin/IRubyObject;
0 4 2 name Lorg/jruby/runtime/builtin/IRubyObject;
1 4 3 result Lorg/jruby/RubyModule;
MethodParameters:
Name Flags
context final
self final
name final
public static org.jruby.runtime.builtin.IRubyObject wrap(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
checkcast org.jruby.javasupport.JavaObject
invokevirtual org.jruby.javasupport.JavaObject.getValue:()Ljava/lang/Object;
invokestatic org.jruby.javasupport.Java.getInstance:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 java_object Lorg/jruby/runtime/builtin/IRubyObject;
MethodParameters:
Name Flags
runtime
java_object
public static org.jruby.runtime.builtin.IRubyObject java_to_ruby(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
aload 1
invokestatic org.jruby.javasupport.JavaUtil.java_to_ruby:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 3
start local 3 3: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
aload 3
aconst_null
invokevirtual org.jruby.javasupport.JavaSupport.handleNativeException:(Ljava/lang/Throwable;Ljava/lang/reflect/Member;)V
4: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 5 1 object Lorg/jruby/runtime/builtin/IRubyObject;
0 5 2 unusedBlock Lorg/jruby/runtime/Block;
3 5 3 e Ljava/lang/RuntimeException;
Exception table:
from to target type
0 1 2 Class java.lang.RuntimeException
RuntimeVisibleAnnotations:
java.lang.Deprecated()
org.jruby.anno.JRubyMethod(module = true, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
recv
object
unusedBlock
public static org.jruby.runtime.builtin.IRubyObject ruby_to_java(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic org.jruby.javasupport.JavaUtil.ruby_to_java:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 1 1 object Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 unusedBlock Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
org.jruby.anno.JRubyMethod(module = true, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
recv final
object
unusedBlock
public static org.jruby.runtime.builtin.IRubyObject java_to_primitive(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic org.jruby.javasupport.JavaUtil.java_to_primitive:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 1 1 object Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 unusedBlock Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
org.jruby.anno.JRubyMethod(module = true, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
recv
object
unusedBlock
public static org.jruby.runtime.builtin.IRubyObject new_proxy_instance2(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
checkcast org.jruby.RubyArray
invokevirtual org.jruby.RubyArray.toJavaArray:()[Lorg/jruby/runtime/builtin/IRubyObject;
astore 4
start local 4 1: aload 4
arraylength
anewarray java.lang.Class
astore 5
start local 5 2: iconst_0
istore 6
start local 6 3: goto 8
4: StackMap locals: org.jruby.runtime.builtin.IRubyObject[] java.lang.Class[] int
StackMap stack:
aload 4
iload 6
aaload
instanceof org.jruby.javasupport.JavaClass
ifeq 5
aload 4
iload 6
aaload
checkcast org.jruby.javasupport.JavaClass
invokevirtual org.jruby.javasupport.JavaClass.interface_p:()Lorg/jruby/RubyBoolean;
invokevirtual org.jruby.RubyBoolean.isTrue:()Z
ifne 6
5: StackMap locals:
StackMap stack:
aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
ldc "Java interface expected. got: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
iload 6
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
6: StackMap locals:
StackMap stack:
aload 5
iload 6
aload 4
iload 6
aaload
checkcast org.jruby.javasupport.JavaClass
invokevirtual org.jruby.javasupport.JavaClass.javaClass:()Ljava/lang/Class;
aastore
7: iinc 6 1
StackMap locals:
StackMap stack:
8: iload 6
aload 4
arraylength
if_icmplt 4
end local 6 9: aload 1
aload 5
invokestatic org.jruby.javasupport.Java.newInterfaceImpl:(Lorg/jruby/runtime/builtin/IRubyObject;[Ljava/lang/Class;)Lorg/jruby/javasupport/JavaObject;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 10 1 wrapper Lorg/jruby/runtime/builtin/IRubyObject;
0 10 2 ifcs Lorg/jruby/runtime/builtin/IRubyObject;
0 10 3 block Lorg/jruby/runtime/Block;
1 10 4 javaClasses [Lorg/jruby/runtime/builtin/IRubyObject;
2 10 5 interfaces [Ljava/lang/Class;
3 9 6 i I
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(required = 2, module = true, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
recv
wrapper final
ifcs
block
public static org.jruby.javasupport.JavaObject newInterfaceImpl(org.jruby.runtime.builtin.IRubyObject, java.lang.Class[]);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;[Ljava/lang/Class;)Lorg/jruby/javasupport/JavaObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=12, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
astore 2
start local 2 1: aload 1
arraylength
istore 3
start local 3 2: iload 3
tableswitch { // 1 - 2
1: 3
2: 4
default: 5
}
3: StackMap locals: org.jruby.Ruby int
StackMap stack:
iconst_2
anewarray java.lang.Class
dup
iconst_0
aload 1
iconst_0
aaload
aastore
dup
iconst_1
ldc Lorg/jruby/java/proxies/RubyObjectHolderProxy;
aastore
astore 1
4: StackMap locals:
StackMap stack:
iconst_3
anewarray java.lang.Class
dup
iconst_0
aload 1
iconst_0
aaload
aastore
dup
iconst_1
aload 1
iconst_1
aaload
aastore
dup
iconst_2
ldc Lorg/jruby/java/proxies/RubyObjectHolderProxy;
aastore
astore 1
5: StackMap locals:
StackMap stack:
aload 1
iload 3
iconst_1
iadd
invokestatic org.jruby.util.ArraySupport.newCopy:([Ljava/lang/Class;I)[Ljava/lang/Class;
astore 1
6: aload 1
iload 3
ldc Lorg/jruby/java/proxies/RubyObjectHolderProxy;
aastore
7: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
astore 4
start local 4 8: aload 4
invokevirtual org.jruby.RubyClass.isSingleton:()Z
ifeq 9
aload 4
invokevirtual org.jruby.RubyClass.getRealClass:()Lorg/jruby/RubyClass;
aload 2
invokevirtual org.jruby.Ruby.getProc:()Lorg/jruby/RubyClass;
if_acmpne 9
iconst_1
goto 10
StackMap locals: org.jruby.RubyClass
StackMap stack:
9: iconst_0
StackMap locals:
StackMap stack: int
10: istore 5
start local 5 11: aload 2
invokevirtual org.jruby.Ruby.getJRubyClassLoader:()Lorg/jruby/util/JRubyClassLoader;
astore 6
start local 6 12: getstatic org.jruby.RubyInstanceConfig.INTERFACES_USE_PROXY:Z
ifeq 14
13: aload 2
aload 0
aload 1
aload 6
invokestatic org.jruby.javasupport.Java.newProxyInterfaceImpl:(Lorg/jruby/runtime/builtin/IRubyObject;[Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/lang/Object;
invokestatic org.jruby.javasupport.JavaObject.wrap:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/javasupport/JavaObject;
areturn
14: StackMap locals: int org.jruby.util.JRubyClassLoader
StackMap stack:
aload 1
invokestatic org.jruby.javasupport.Java.interfacesHashCode:([Ljava/lang/Class;)I
istore 8
start local 8 15: iload 5
ifeq 19
16: bipush 31
iload 8
imul
aload 2
invokevirtual org.jruby.Ruby.getProc:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.hashCode:()I
iadd
istore 8
17: aload 6
astore 7
start local 7 18: goto 21
end local 7 19: StackMap locals: org.jruby.runtime.builtin.IRubyObject java.lang.Class[] org.jruby.Ruby int org.jruby.RubyClass int org.jruby.util.JRubyClassLoader top int
StackMap stack:
bipush 31
iload 8
imul
aload 4
invokevirtual org.jruby.RubyClass.getRealClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.hashCode:()I
iadd
istore 8
20: new org.jruby.util.OneShotClassLoader
dup
aload 6
invokespecial org.jruby.util.OneShotClassLoader.<init>:(Lorg/jruby/util/JRubyClassLoader;)V
astore 7
start local 7 21: StackMap locals: org.jruby.runtime.builtin.IRubyObject java.lang.Class[] org.jruby.Ruby int org.jruby.RubyClass int org.jruby.util.JRubyClassLoader org.jruby.util.ClassDefiningClassLoader int
StackMap stack:
new java.lang.StringBuilder
dup
ldc "org.jruby.gen.InterfaceImpl"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 8
invokestatic java.lang.Math.abs:(I)I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 9
start local 9 22: aload 9
iconst_1
aload 6
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
astore 10
start local 10 23: goto 26
end local 10 24: StackMap locals: org.jruby.runtime.builtin.IRubyObject java.lang.Class[] org.jruby.Ruby int org.jruby.RubyClass int org.jruby.util.JRubyClassLoader org.jruby.util.ClassDefiningClassLoader int java.lang.String
StackMap stack: java.lang.ClassNotFoundException
pop
25: aload 1
aload 4
aload 2
aload 9
aload 7
invokestatic org.jruby.java.codegen.RealClassGenerator.createOldStyleImplClass:([Ljava/lang/Class;Lorg/jruby/RubyClass;Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/util/ClassDefiningClassLoader;)Ljava/lang/Class;
astore 10
start local 10 26: StackMap locals: java.lang.Class
StackMap stack:
aload 10
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Lorg/jruby/runtime/builtin/IRubyObject;
aastore
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 11
start local 11 27: aload 2
aload 11
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
invokestatic org.jruby.javasupport.JavaObject.wrap:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/javasupport/JavaObject;
28: areturn
end local 11 29: StackMap locals:
StackMap stack: java.lang.reflect.InvocationTargetException
astore 11
start local 11 30: aload 2
aload 11
invokestatic org.jruby.javasupport.Java.mapGeneratedProxyException:(Lorg/jruby/Ruby;Ljava/lang/reflect/InvocationTargetException;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 11 31: StackMap locals:
StackMap stack: java.lang.ReflectiveOperationException
astore 11
start local 11 32: aload 2
aload 11
invokestatic org.jruby.javasupport.Java.mapGeneratedProxyException:(Lorg/jruby/Ruby;Ljava/lang/ReflectiveOperationException;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 wrapper Lorg/jruby/runtime/builtin/IRubyObject;
0 33 1 interfaces [Ljava/lang/Class;
1 33 2 runtime Lorg/jruby/Ruby;
2 33 3 length I
8 33 4 wrapperClass Lorg/jruby/RubyClass;
11 33 5 isProc Z
12 33 6 jrubyClassLoader Lorg/jruby/util/JRubyClassLoader;
18 19 7 classLoader Lorg/jruby/util/ClassDefiningClassLoader;
21 33 7 classLoader Lorg/jruby/util/ClassDefiningClassLoader;
15 33 8 interfacesHashCode I
22 33 9 implClassName Ljava/lang/String;
23 24 10 proxyImplClass Ljava/lang/Class<*>;
26 33 10 proxyImplClass Ljava/lang/Class<*>;
27 29 11 proxyConstructor Ljava/lang/reflect/Constructor<*>;
30 31 11 e Ljava/lang/reflect/InvocationTargetException;
32 33 11 e Ljava/lang/ReflectiveOperationException;
Exception table:
from to target type
22 23 24 Class java.lang.ClassNotFoundException
26 28 29 Class java.lang.reflect.InvocationTargetException
26 28 31 Class java.lang.ReflectiveOperationException
MethodParameters:
Name Flags
wrapper final
interfaces
private static java.lang.Object newProxyInterfaceImpl(org.jruby.runtime.builtin.IRubyObject, java.lang.Class[], java.lang.ClassLoader);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;[Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 1
new org.jruby.javasupport.Java$InterfaceProxyHandler
dup
aload 0
aload 1
invokespecial org.jruby.javasupport.Java$InterfaceProxyHandler.<init>:(Lorg/jruby/runtime/builtin/IRubyObject;[Ljava/lang/Class;)V
invokestatic java.lang.reflect.Proxy.newProxyInstance:(Ljava/lang/ClassLoader;[Ljava/lang/Class;Ljava/lang/reflect/InvocationHandler;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 wrapper Lorg/jruby/runtime/builtin/IRubyObject;
0 1 1 interfaces [Ljava/lang/Class;
0 1 2 loader Ljava/lang/ClassLoader;
MethodParameters:
Name Flags
wrapper final
interfaces final
loader final
public static java.lang.Class generateRealClass(org.jruby.RubyClass);
descriptor: (Lorg/jruby/RubyClass;)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=7, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyClass.getRuntime:()Lorg/jruby/Ruby;
astore 1
start local 1 1: aload 0
invokestatic org.jruby.javasupport.Java.getInterfacesFromRubyClass:(Lorg/jruby/RubyClass;)[Ljava/lang/Class;
astore 2
start local 2 2: aload 2
invokestatic org.jruby.javasupport.Java.interfacesHashCode:([Ljava/lang/Class;)I
istore 3
start local 3 3: bipush 31
iload 3
imul
aload 0
invokevirtual org.jruby.RubyClass.hashCode:()I
iadd
istore 3
4: ldc "org.jruby.gen."
astore 4
start local 4 5: aload 0
invokevirtual org.jruby.RubyClass.getBaseName:()Ljava/lang/String;
ifnonnull 8
6: new java.lang.StringBuilder
dup
aload 4
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "anon_class"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokestatic java.lang.System.identityHashCode:(Ljava/lang/Object;)I
invokestatic java.lang.Math.abs:(I)I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 95
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
iload 3
invokestatic java.lang.Math.abs:(I)I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
7: goto 9
8: StackMap locals: org.jruby.RubyClass org.jruby.Ruby java.lang.Class[] int java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
aload 4
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual org.jruby.RubyClass.getName:()Ljava/lang/String;
ldc "::"
ldc "$$"
invokestatic org.jruby.util.StringSupport.replaceAll:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 95
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
iload 3
invokestatic java.lang.Math.abs:(I)I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
9: StackMap locals:
StackMap stack:
aload 4
iconst_1
aload 1
invokevirtual org.jruby.Ruby.getJRubyClassLoader:()Lorg/jruby/util/JRubyClassLoader;
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
astore 5
start local 5 10: goto 18
end local 5 11: StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
pop
12: aload 0
invokevirtual org.jruby.RubyClass.getSuperClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getRealClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getReifiedClass:()Ljava/lang/Class;
astore 6
start local 6 13: aload 6
ifnonnull 14
ldc Lorg/jruby/RubyObject;
astore 6
14: StackMap locals: org.jruby.RubyClass org.jruby.Ruby java.lang.Class[] int java.lang.String top java.lang.Class
StackMap stack:
aload 6
aload 2
aload 0
aload 1
aload 4
invokestatic org.jruby.java.codegen.RealClassGenerator.createRealImplClass:(Ljava/lang/Class;[Ljava/lang/Class;Lorg/jruby/RubyClass;Lorg/jruby/Ruby;Ljava/lang/String;)Ljava/lang/Class;
astore 5
start local 5 15: getstatic org.jruby.javasupport.Java.NEW_STYLE_EXTENSION:Z
ifeq 18
16: ldc Lorg/jruby/RubyBasicObject;
aload 5
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 18
aload 0
invokevirtual org.jruby.RubyClass.getMethods:()Ljava/util/Map;
ldc "initialize"
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 18
17: aload 0
ldc "initialize"
new org.jruby.javasupport.Java$DummyInitialize
dup
aload 0
invokespecial org.jruby.javasupport.Java$DummyInitialize.<init>:(Lorg/jruby/RubyClass;)V
invokevirtual org.jruby.RubyClass.addMethod:(Ljava/lang/String;Lorg/jruby/internal/runtime/methods/DynamicMethod;)V
end local 6 18: StackMap locals: org.jruby.RubyClass org.jruby.Ruby java.lang.Class[] int java.lang.String java.lang.Class
StackMap stack:
aload 0
aload 5
invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
19: aload 0
aload 5
invokevirtual org.jruby.RubyClass.setRubyClassAllocator:(Ljava/lang/Class;)V
20: aload 5
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 clazz Lorg/jruby/RubyClass;
1 21 1 runtime Lorg/jruby/Ruby;
2 21 2 interfaces [Ljava/lang/Class;
3 21 3 interfacesHashCode I
5 21 4 implClassName Ljava/lang/String;
10 11 5 proxyImplClass Ljava/lang/Class<+Lorg/jruby/runtime/builtin/IRubyObject;>;
15 21 5 proxyImplClass Ljava/lang/Class<+Lorg/jruby/runtime/builtin/IRubyObject;>;
13 18 6 superClass Ljava/lang/Class<+Lorg/jruby/runtime/builtin/IRubyObject;>;
Exception table:
from to target type
9 10 11 Class java.lang.ClassNotFoundException
MethodParameters:
Name Flags
clazz final
public static java.lang.reflect.Constructor getRealClassConstructor(org.jruby.Ruby, java.lang.Class<?>);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 1
iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Lorg/jruby/Ruby;
aastore
dup
iconst_1
ldc Lorg/jruby/RubyClass;
aastore
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
astore 2
start local 2 3: aload 0
aload 2
invokestatic org.jruby.javasupport.Java.mapGeneratedProxyException:(Lorg/jruby/Ruby;Ljava/lang/ReflectiveOperationException;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 runtime Lorg/jruby/Ruby;
0 4 1 proxyImplClass Ljava/lang/Class<*>;
3 4 2 e Ljava/lang/NoSuchMethodException;
Exception table:
from to target type
0 1 2 Class java.lang.NoSuchMethodException
Signature: (Lorg/jruby/Ruby;Ljava/lang/Class<*>;)Ljava/lang/reflect/Constructor;
MethodParameters:
Name Flags
runtime final
proxyImplClass
public static org.jruby.runtime.builtin.IRubyObject constructProxy(org.jruby.Ruby, java.lang.reflect.Constructor, org.jruby.RubyClass);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/reflect/Constructor;Lorg/jruby/RubyClass;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 2
aastore
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jruby.runtime.builtin.IRubyObject
1: areturn
2: StackMap locals:
StackMap stack: java.lang.reflect.InvocationTargetException
astore 3
start local 3 3: aload 0
aload 3
invokestatic org.jruby.javasupport.Java.mapGeneratedProxyException:(Lorg/jruby/Ruby;Ljava/lang/reflect/InvocationTargetException;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 3 4: StackMap locals:
StackMap stack: java.lang.ReflectiveOperationException
astore 3
start local 3 5: aload 0
aload 3
invokestatic org.jruby.javasupport.Java.mapGeneratedProxyException:(Lorg/jruby/Ruby;Ljava/lang/ReflectiveOperationException;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 runtime Lorg/jruby/Ruby;
0 6 1 proxyConstructor Ljava/lang/reflect/Constructor;
0 6 2 clazz Lorg/jruby/RubyClass;
3 4 3 e Ljava/lang/reflect/InvocationTargetException;
5 6 3 e Ljava/lang/ReflectiveOperationException;
Exception table:
from to target type
0 1 2 Class java.lang.reflect.InvocationTargetException
0 1 4 Class java.lang.ReflectiveOperationException
MethodParameters:
Name Flags
runtime
proxyConstructor
clazz
private static org.jruby.exceptions.RaiseException mapGeneratedProxyException(org.jruby.Ruby, java.lang.ReflectiveOperationException);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/ReflectiveOperationException;)Lorg/jruby/exceptions/RaiseException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
new java.lang.StringBuilder
dup
ldc "Exception instantiating generated interface impl:\n"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
astore 2
start local 2 1: aload 2
aload 1
invokevirtual org.jruby.exceptions.RaiseException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
pop
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 runtime Lorg/jruby/Ruby;
0 3 1 e Ljava/lang/ReflectiveOperationException;
1 3 2 ex Lorg/jruby/exceptions/RaiseException;
MethodParameters:
Name Flags
runtime final
e final
private static org.jruby.exceptions.RaiseException mapGeneratedProxyException(org.jruby.Ruby, java.lang.reflect.InvocationTargetException);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/reflect/InvocationTargetException;)Lorg/jruby/exceptions/RaiseException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
new java.lang.StringBuilder
dup
ldc "Exception instantiating generated interface impl:\n"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.reflect.InvocationTargetException.getTargetException:()Ljava/lang/Throwable;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
astore 2
start local 2 1: aload 2
aload 1
invokevirtual org.jruby.exceptions.RaiseException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
pop
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 runtime Lorg/jruby/Ruby;
0 3 1 e Ljava/lang/reflect/InvocationTargetException;
1 3 2 ex Lorg/jruby/exceptions/RaiseException;
MethodParameters:
Name Flags
runtime final
e final
public static org.jruby.runtime.builtin.IRubyObject allocateProxy(java.lang.Object, org.jruby.RubyClass);
descriptor: (Ljava/lang/Object;Lorg/jruby/RubyClass;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.jruby.RubyClass.getRuntime:()Lorg/jruby/Ruby;
astore 2
start local 2 1: aload 1
invokevirtual org.jruby.RubyClass.getSuperClass:()Lorg/jruby/RubyClass;
aload 2
invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
invokevirtual org.jruby.javasupport.JavaSupport.getArrayProxyClass:()Lorg/jruby/RubyClass;
if_acmpne 3
2: new org.jruby.java.proxies.ArrayJavaProxy
dup
aload 2
aload 1
aload 0
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
invokestatic org.jruby.javasupport.JavaUtil.getJavaConverter:(Ljava/lang/Class;)Lorg/jruby/javasupport/JavaUtil$JavaConverter;
invokespecial org.jruby.java.proxies.ArrayJavaProxy.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/lang/Object;Lorg/jruby/javasupport/JavaUtil$JavaConverter;)V
areturn
3: StackMap locals: org.jruby.Ruby
StackMap stack:
aload 1
invokevirtual org.jruby.RubyClass.allocate:()Lorg/jruby/runtime/builtin/IRubyObject;
astore 3
start local 3 4: aload 3
instanceof org.jruby.java.proxies.JavaProxy
ifeq 7
5: aload 3
checkcast org.jruby.java.proxies.JavaProxy
aload 0
invokevirtual org.jruby.java.proxies.JavaProxy.setObject:(Ljava/lang/Object;)V
6: goto 9
7: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 2
aload 0
invokestatic org.jruby.javasupport.JavaObject.wrap:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/javasupport/JavaObject;
astore 4
start local 4 8: aload 3
aload 4
invokeinterface org.jruby.runtime.builtin.IRubyObject.dataWrapStruct:(Ljava/lang/Object;)V
end local 4 9: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 javaObject Ljava/lang/Object;
0 10 1 clazz Lorg/jruby/RubyClass;
1 10 2 runtime Lorg/jruby/Ruby;
4 10 3 proxy Lorg/jruby/runtime/builtin/IRubyObject;
8 9 4 wrappedObject Lorg/jruby/javasupport/JavaObject;
MethodParameters:
Name Flags
javaObject
clazz
public static org.jruby.runtime.builtin.IRubyObject wrapJavaObject(org.jruby.Ruby, java.lang.Object);
descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
aload 1
invokestatic org.jruby.javasupport.Java.getProxyClassForObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/RubyClass;
invokestatic org.jruby.javasupport.Java.allocateProxy:(Ljava/lang/Object;Lorg/jruby/RubyClass;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 object Ljava/lang/Object;
MethodParameters:
Name Flags
runtime
object
public static java.lang.Class[] getInterfacesFromRubyClass(org.jruby.RubyClass);
descriptor: (Lorg/jruby/RubyClass;)[Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 1
start local 1 1: goto 8
2: StackMap locals: java.util.Set
StackMap stack:
aload 0
invokevirtual org.jruby.RubyClass.getInstanceVariables:()Lorg/jruby/runtime/builtin/InstanceVariables;
ldc "@java_interfaces"
invokeinterface org.jruby.runtime.builtin.InstanceVariables.getInstanceVariable:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 2
start local 2 3: aload 2
instanceof org.jruby.RubyArray
ifeq 7
4: aload 2
checkcast org.jruby.RubyArray
astore 3
start local 3 5: aload 3
invokevirtual org.jruby.RubyArray.isFrozen:()Z
ifne 6
aload 3
iconst_1
invokevirtual org.jruby.RubyArray.setFrozen:(Z)V
6: StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.RubyArray
StackMap stack:
aload 1
aload 3
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
end local 3 7: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.jruby.RubyClass.getSuperClass:()Lorg/jruby/RubyClass;
astore 0
end local 2 8: StackMap locals:
StackMap stack:
aload 0
ifnonnull 2
9: aload 1
aload 1
invokeinterface java.util.Set.size:()I
anewarray java.lang.Class
invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.Class[]
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 klass Lorg/jruby/RubyClass;
1 10 1 interfaces Ljava/util/Set<Ljava/lang/Class;>;
3 8 2 maybeInterfaces Lorg/jruby/runtime/builtin/IRubyObject;
5 7 3 moreInterfaces Lorg/jruby/RubyArray;
MethodParameters:
Name Flags
klass
private static int interfacesHashCode(java.lang.Class[]);
descriptor: ([Ljava/lang/Class;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=6, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
iconst_1
istore 1
start local 1 3: aload 0
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 9
StackMap locals: java.lang.Class[] int top int int java.lang.Class[]
StackMap stack:
4: aload 5
iload 3
aaload
astore 2
start local 2 5: bipush 31
iload 1
imul
aload 2
ifnonnull 6
iconst_0
goto 7
StackMap locals: java.lang.Class[] int java.lang.Class int int java.lang.Class[]
StackMap stack: int
6: aload 2
invokevirtual java.lang.Object.hashCode:()I
StackMap locals: java.lang.Class[] int java.lang.Class int int java.lang.Class[]
StackMap stack: int int
7: iadd
istore 1
end local 2 8: iinc 3 1
StackMap locals: java.lang.Class[] int top int int java.lang.Class[]
StackMap stack:
9: iload 3
iload 4
if_icmplt 4
10: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 a [Ljava/lang/Class;
3 11 1 result I
5 8 2 element Ljava/lang/Class;
MethodParameters:
Name Flags
a
public static java.lang.reflect.Method getFunctionalInterfaceMethod(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Ljava/lang/reflect/Method;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=7, args_size=1
start local 0 0: getstatic org.jruby.javasupport.Java.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual java.lang.Class.isInterface:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aconst_null
astore 1
start local 1 2: aload 0
invokevirtual java.lang.Class.getMethods:()[Ljava/lang/reflect/Method;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 14
StackMap locals: java.lang.Class java.lang.reflect.Method top int int java.lang.reflect.Method[]
StackMap stack:
3: aload 5
iload 3
aaload
astore 2
start local 2 4: aload 2
invokevirtual java.lang.reflect.Method.getModifiers:()I
istore 6
start local 6 5: iload 6
invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
ifeq 6
goto 13
6: StackMap locals: java.lang.Class java.lang.reflect.Method java.lang.reflect.Method int int java.lang.reflect.Method[] int
StackMap stack:
iload 6
invokestatic java.lang.reflect.Modifier.isAbstract:(I)Z
ifeq 13
7: ldc Ljava/lang/Object;
aload 2
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
aload 2
invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
pop
8: goto 13
9: StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
pop
goto 11
10: StackMap locals:
StackMap stack: java.lang.SecurityException
pop
11: StackMap locals:
StackMap stack:
aload 1
ifnonnull 12
aload 2
astore 1
goto 13
12: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 6 end local 2 13: StackMap locals: java.lang.Class java.lang.reflect.Method top int int java.lang.reflect.Method[]
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
14: iload 3
iload 4
if_icmplt 3
15: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 iface Ljava/lang/Class<*>;
2 16 1 single Ljava/lang/reflect/Method;
4 13 2 method Ljava/lang/reflect/Method;
5 13 6 mod I
Exception table:
from to target type
7 8 9 Class java.lang.NoSuchMethodException
7 8 10 Class java.lang.SecurityException
Signature: (Ljava/lang/Class<*>;)Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
iface final
public static <T extends java.lang.reflect.AccessibleObject extends java.lang.reflect.Member> boolean trySetAccessible();
descriptor: (Ljava/lang/reflect/AccessibleObject;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ldc Lorg/jruby/javasupport/Java;
invokestatic com.headius.backport9.modules.Modules.trySetAccessible:(Ljava/lang/reflect/AccessibleObject;Ljava/lang/Class;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 member TT;
Signature: <T:Ljava/lang/reflect/AccessibleObject;:Ljava/lang/reflect/Member;>(TT;)Z
MethodParameters:
Name Flags
member
}
SourceFile: "Java.java"
NestMembers:
org.jruby.javasupport.Java$1 org.jruby.javasupport.Java$2 org.jruby.javasupport.Java$ByteArrayProxyMethods org.jruby.javasupport.Java$DummyInitialize org.jruby.javasupport.Java$InterfaceProxyHandler org.jruby.javasupport.Java$JCreateMethod org.jruby.javasupport.Java$JavaAccessor org.jruby.javasupport.Java$NewStyleExtensionInherited org.jruby.javasupport.Java$OldStyleExtensionInherited org.jruby.javasupport.Java$ProcToInterface org.jruby.javasupport.Java$ProcToInterface$ConcreteMethod
InnerClasses:
public AnyIO = org.jruby.java.addons.IOJavaAddons$AnyIO of org.jruby.java.addons.IOJavaAddons
public ClassMethods = org.jruby.java.proxies.JavaProxy$ClassMethods of org.jruby.java.proxies.JavaProxy
org.jruby.javasupport.Java$1
org.jruby.javasupport.Java$2
public ByteArrayProxyMethods = org.jruby.javasupport.Java$ByteArrayProxyMethods of org.jruby.javasupport.Java
private final DummyInitialize = org.jruby.javasupport.Java$DummyInitialize of org.jruby.javasupport.Java
private final InterfaceProxyHandler = org.jruby.javasupport.Java$InterfaceProxyHandler of org.jruby.javasupport.Java
public JCreateMethod = org.jruby.javasupport.Java$JCreateMethod of org.jruby.javasupport.Java
private JavaAccessor = org.jruby.javasupport.Java$JavaAccessor of org.jruby.javasupport.Java
public NewStyleExtensionInherited = org.jruby.javasupport.Java$NewStyleExtensionInherited of org.jruby.javasupport.Java
public OldStyleExtensionInherited = org.jruby.javasupport.Java$OldStyleExtensionInherited of org.jruby.javasupport.Java
final ProcToInterface = org.jruby.javasupport.Java$ProcToInterface of org.jruby.javasupport.Java
public abstract JavaConverter = org.jruby.javasupport.JavaUtil$JavaConverter of org.jruby.javasupport.JavaUtil
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyModule(name = {"Java"})