public abstract class org.jruby.ext.ffi.Factory
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.jruby.ext.ffi.Factory
super_class: java.lang.Object
{
protected void <init>();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/ext/ffi/Factory;
public static final org.jruby.ext.ffi.Factory getInstance();
descriptor: ()Lorg/jruby/ext/ffi/Factory;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Code:
stack=1, locals=0, args_size=0
0: getstatic org.jruby.ext.ffi.Factory$SingletonHolder.INSTANCE:Lorg/jruby/ext/ffi/Factory;
areturn
LocalVariableTable:
Start End Slot Name Signature
public void init(org.jruby.Ruby, org.jruby.RubyModule);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
dup
astore 3
monitorenter
1: aload 2
ldc "Type"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 3
2: aload 1
aload 2
invokestatic org.jruby.ext.ffi.Type.createTypeClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
3: StackMap locals: org.jruby.RubyModule
StackMap stack:
aload 1
aload 2
invokestatic org.jruby.ext.ffi.DataConverter.createDataConverterModule:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyModule;
pop
4: aload 2
ldc "AbstractMemory"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 6
5: aload 1
aload 2
invokestatic org.jruby.ext.ffi.AbstractMemory.createAbstractMemoryClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
6: StackMap locals:
StackMap stack:
aload 2
ldc "Buffer"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 8
7: aload 1
aload 2
invokestatic org.jruby.ext.ffi.Buffer.createBufferClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
8: StackMap locals:
StackMap stack:
aload 2
ldc "Pointer"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 10
9: aload 1
aload 2
invokestatic org.jruby.ext.ffi.Pointer.createPointerClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
10: StackMap locals:
StackMap stack:
aload 2
ldc "AutoPointer"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 12
11: aload 1
aload 2
invokestatic org.jruby.ext.ffi.AutoPointer.createAutoPointerClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
12: StackMap locals:
StackMap stack:
aload 2
ldc "MemoryPointer"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 14
13: aload 1
aload 2
invokestatic org.jruby.ext.ffi.MemoryPointer.createMemoryPointerClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
14: StackMap locals:
StackMap stack:
aload 2
ldc "Struct"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 16
15: aload 1
aload 2
invokestatic org.jruby.ext.ffi.Struct.createStructClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
16: StackMap locals:
StackMap stack:
aload 2
ldc "StructLayout"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 18
17: aload 1
aload 2
invokestatic org.jruby.ext.ffi.StructLayout.createStructLayoutClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
18: StackMap locals:
StackMap stack:
aload 2
ldc "StructByValue"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 20
19: aload 1
aload 2
invokestatic org.jruby.ext.ffi.StructByValue.createStructByValueClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
20: StackMap locals:
StackMap stack:
aload 2
ldc "AbstractInvoker"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 22
21: aload 1
aload 2
invokestatic org.jruby.ext.ffi.AbstractInvoker.createAbstractInvokerClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
22: StackMap locals:
StackMap stack:
aload 2
ldc "CallbackInfo"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 24
23: aload 1
aload 2
invokestatic org.jruby.ext.ffi.CallbackInfo.createCallbackInfoClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
24: StackMap locals:
StackMap stack:
aload 2
ldc "Enum"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 26
25: aload 1
aload 2
invokestatic org.jruby.ext.ffi.Enum.createEnumClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
26: StackMap locals:
StackMap stack:
aload 2
ldc "Enums"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 28
27: aload 1
aload 2
invokestatic org.jruby.ext.ffi.Enums.createEnumsClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
28: StackMap locals:
StackMap stack:
aload 2
ldc "Type"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ldc "Mapped"
invokevirtual org.jruby.RubyClass.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 30
29: aload 1
aload 2
invokestatic org.jruby.ext.ffi.MappedType.createConverterTypeClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
30: StackMap locals:
StackMap stack:
aload 2
ldc "FileDescriptorIO"
invokevirtual org.jruby.RubyModule.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
ifnonnull 32
31: aload 1
aload 2
invokestatic org.jruby.ext.ffi.io.FileDescriptorIO.createFileDescriptorIOClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
32: StackMap locals:
StackMap stack:
aload 2
ldc "TypeDefs"
aload 1
invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
invokevirtual org.jruby.RubyModule.setConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
33: aload 1
aload 2
invokestatic org.jruby.ext.ffi.Platform.createPlatformModule:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)V
34: aload 1
aload 2
invokestatic org.jruby.ext.ffi.IOModule.createIOModule:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)V
35: aload 1
aload 2
invokestatic org.jruby.ext.ffi.StructByReference.createStructByReferenceClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
pop
36: aload 3
monitorexit
37: goto 40
StackMap locals:
StackMap stack: java.lang.Throwable
38: aload 3
monitorexit
39: athrow
40: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lorg/jruby/ext/ffi/Factory;
0 41 1 runtime Lorg/jruby/Ruby;
0 41 2 ffi Lorg/jruby/RubyModule;
Exception table:
from to target type
1 37 38 any
38 39 38 any
MethodParameters:
Name Flags
runtime
ffi
public abstract org.jruby.ext.ffi.MemoryIO allocateDirectMemory(org.jruby.Ruby, int, boolean);
descriptor: (Lorg/jruby/Ruby;IZ)Lorg/jruby/ext/ffi/MemoryIO;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
runtime
size
clear
public abstract org.jruby.ext.ffi.MemoryIO allocateDirectMemory(org.jruby.Ruby, int, int, boolean);
descriptor: (Lorg/jruby/Ruby;IIZ)Lorg/jruby/ext/ffi/MemoryIO;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
runtime
size
align
clear
public abstract org.jruby.ext.ffi.MemoryIO allocateTransientDirectMemory(org.jruby.Ruby, int, int, boolean);
descriptor: (Lorg/jruby/Ruby;IIZ)Lorg/jruby/ext/ffi/MemoryIO;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
runtime
size
align
clear
public abstract org.jruby.ext.ffi.MemoryIO wrapDirectMemory(org.jruby.Ruby, long);
descriptor: (Lorg/jruby/Ruby;J)Lorg/jruby/ext/ffi/MemoryIO;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
runtime
address
public abstract org.jruby.ext.ffi.CallbackManager getCallbackManager();
descriptor: ()Lorg/jruby/ext/ffi/CallbackManager;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.jruby.ext.ffi.AbstractInvoker newFunction(org.jruby.Ruby, org.jruby.ext.ffi.Pointer, org.jruby.ext.ffi.CallbackInfo);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/Pointer;Lorg/jruby/ext/ffi/CallbackInfo;)Lorg/jruby/ext/ffi/AbstractInvoker;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
runtime
address
cbInfo
public abstract int sizeOf(org.jruby.ext.ffi.NativeType);
descriptor: (Lorg/jruby/ext/ffi/NativeType;)I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
type
public abstract int alignmentOf(org.jruby.ext.ffi.NativeType);
descriptor: (Lorg/jruby/ext/ffi/NativeType;)I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
type
}
SourceFile: "Factory.java"
NestMembers:
org.jruby.ext.ffi.Factory$SingletonHolder
InnerClasses:
private final SingletonHolder = org.jruby.ext.ffi.Factory$SingletonHolder of org.jruby.ext.ffi.Factory