public class org.jruby.ext.tempfile.Tempfile extends org.jruby.RubyFile implements org.jruby.Finalizable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.ext.tempfile.Tempfile
super_class: org.jruby.RubyFile
{
private static org.jruby.runtime.ObjectAllocator TEMPFILE_ALLOCATOR;
descriptor: Lorg/jruby/runtime/ObjectAllocator;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private java.io.File tmpFile;
descriptor: Ljava/io/File;
flags: (0x0002) ACC_PRIVATE
private org.jruby.runtime.builtin.IRubyObject tmpname;
descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
private org.jruby.runtime.builtin.IRubyObject opts;
descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
private org.jruby.runtime.builtin.IRubyObject mode;
descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new org.jruby.ext.tempfile.Tempfile$1
dup
invokespecial org.jruby.ext.tempfile.Tempfile$1.<init>:()V
putstatic org.jruby.ext.tempfile.Tempfile.TEMPFILE_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
1: return
LocalVariableTable:
Start End Slot Name Signature
public static org.jruby.RubyClass createTempfileClass(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyClass;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
ldc "Tempfile"
aload 0
invokevirtual org.jruby.Ruby.getFile:()Lorg/jruby/RubyClass;
getstatic org.jruby.ext.tempfile.Tempfile.TEMPFILE_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
invokevirtual org.jruby.Ruby.defineClass:(Ljava/lang/String;Lorg/jruby/RubyClass;Lorg/jruby/runtime/ObjectAllocator;)Lorg/jruby/RubyClass;
astore 1
start local 1 1: aload 1
ldc Lorg/jruby/ext/tempfile/Tempfile;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 runtime Lorg/jruby/Ruby;
1 3 1 tempfileClass Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
public void <init>(org.jruby.Ruby, org.jruby.RubyClass);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial org.jruby.RubyFile.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
1: aload 0
aconst_null
putfield org.jruby.ext.tempfile.Tempfile.tmpFile:Ljava/io/File;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/ext/tempfile/Tempfile;
0 3 1 runtime Lorg/jruby/Ruby;
0 3 2 type Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
type
public org.jruby.runtime.builtin.IRubyObject initialize(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
arraylength
ifne 2
1: iconst_1
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokestatic org.jruby.RubyString.newEmptyString:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
aastore
astore 2
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual org.jruby.ext.tempfile.Tempfile.initializeCommon:(Lorg/jruby/runtime/ThreadContext;[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 3 0 this Lorg/jruby/ext/tempfile/Tempfile;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
0 3 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
0 3 3 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(optional = 4, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
context
args
block
private org.jruby.runtime.builtin.IRubyObject initializeCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new org.jruby.ext.tempfile.Tempfile$TempfileCallback
dup
aload 0
invokespecial org.jruby.ext.tempfile.Tempfile$TempfileCallback.<init>:(Lorg/jruby/ext/tempfile/Tempfile;)V
astore 3
start local 3 1: aload 0
aload 1
ldc "create"
aload 2
aload 0
aload 0
invokevirtual org.jruby.ext.tempfile.Tempfile.getMetaClass:()Lorg/jruby/RubyClass;
getstatic org.jruby.runtime.Signature.OPTIONAL:Lorg/jruby/runtime/Signature;
aload 3
aload 1
invokestatic org.jruby.runtime.CallBlock19.newCallClosure:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Lorg/jruby/runtime/Signature;Lorg/jruby/runtime/BlockCallback;Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/Block;
invokevirtual org.jruby.ext.tempfile.Tempfile.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
2: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
invokevirtual org.jruby.Ruby.addInternalFinalizer:(Lorg/jruby/Finalizable;)V
3: aload 1
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 4 0 this Lorg/jruby/ext/tempfile/Tempfile;
0 4 1 context Lorg/jruby/runtime/ThreadContext;
0 4 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
1 4 3 body Lorg/jruby/runtime/BlockCallback;
MethodParameters:
Name Flags
context
args
public org.jruby.runtime.builtin.IRubyObject open(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.jruby.ext.tempfile.Tempfile.isClosed:()Z
ifne 1
aload 0
aload 1
invokevirtual org.jruby.ext.tempfile.Tempfile.rbIoClose:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
1: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.jruby.ext.tempfile.Tempfile.openFile:Lorg/jruby/util/io/OpenFile;
2: aload 0
aload 1
iconst_3
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 0
getfield org.jruby.ext.tempfile.Tempfile.tmpname:Lorg/jruby/runtime/builtin/IRubyObject;
aastore
dup
iconst_1
aload 0
getfield org.jruby.ext.tempfile.Tempfile.mode:Lorg/jruby/runtime/builtin/IRubyObject;
aastore
dup
iconst_2
aload 0
getfield org.jruby.ext.tempfile.Tempfile.opts:Lorg/jruby/runtime/builtin/IRubyObject;
aastore
getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
invokestatic org.jruby.ext.tempfile.Tempfile.access$0:(Lorg/jruby/ext/tempfile/Tempfile;Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
3: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/ext/tempfile/Tempfile;
0 4 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject _close(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.jruby.ext.tempfile.Tempfile.isClosed:()Z
ifne 1
aload 0
aload 1
invokespecial org.jruby.RubyFile.close:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
goto 2
StackMap locals:
StackMap stack:
1: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/ext/tempfile/Tempfile;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(visibility = org.jruby.runtime.Visibility.PROTECTED:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject close(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
arraylength
iconst_1
if_icmpne 1
aload 2
iconst_0
aaload
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: istore 4
start local 4 3: iload 4
ifeq 4
aload 0
aload 1
invokevirtual org.jruby.ext.tempfile.Tempfile.close_bang:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
goto 5
StackMap locals: int
StackMap stack:
4: aload 0
aload 1
invokevirtual org.jruby.ext.tempfile.Tempfile._close:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject
5: 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 this Lorg/jruby/ext/tempfile/Tempfile;
0 6 1 context Lorg/jruby/runtime/ThreadContext;
0 6 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
0 6 3 block Lorg/jruby/runtime/Block;
3 6 4 unlink Z
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(optional = 1)
MethodParameters:
Name Flags
context
args
block
public org.jruby.runtime.builtin.IRubyObject close_bang(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.jruby.ext.tempfile.Tempfile._close:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
1: aload 0
aload 1
invokevirtual org.jruby.ext.tempfile.Tempfile.unlink:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
2: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/ext/tempfile/Tempfile;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"close!"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject unlink(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.ext.tempfile.Tempfile.openFile:Lorg/jruby/util/io/OpenFile;
invokevirtual org.jruby.util.io.OpenFile.getPath:()Ljava/lang/String;
ifnonnull 1
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
1: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 2
start local 2 2: aload 2
invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
astore 3
start local 3 3: aload 3
invokeinterface jnr.posix.POSIX.isNative:()Z
ifeq 17
getstatic org.jruby.platform.Platform.IS_WINDOWS:Z
ifne 17
4: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getGlobalVariables:()Lorg/jruby/internal/runtime/GlobalVariables;
ldc "$!"
invokevirtual org.jruby.internal.runtime.GlobalVariables.get:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 4
start local 4 5: aload 1
iconst_1
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 0
aastore
invokestatic org.jruby.RubyFile.unlink:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
6: goto 14
StackMap locals: org.jruby.ext.tempfile.Tempfile org.jruby.runtime.ThreadContext org.jruby.Ruby jnr.posix.POSIX org.jruby.runtime.builtin.IRubyObject
StackMap stack: org.jruby.exceptions.RaiseException
7: astore 5
start local 5 8: aload 5
invokevirtual org.jruby.exceptions.RaiseException.getException:()Lorg/jruby/RubyException;
astore 6
start local 6 9: aload 6
instanceof org.jruby.RubySystemCallError
ifne 10
aload 5
athrow
10: StackMap locals: org.jruby.exceptions.RaiseException org.jruby.RubyException
StackMap stack:
aload 6
checkcast org.jruby.RubySystemCallError
invokevirtual org.jruby.RubySystemCallError.errno:()Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
invokevirtual org.jruby.RubyInteger.getLongValue:()J
l2i
istore 7
start local 7 11: iload 7
getstatic jnr.constants.platform.Errno.ENOENT:Ljnr/constants/platform/Errno;
invokevirtual jnr.constants.platform.Errno.intValue:()I
if_icmpeq 13
iload 7
getstatic jnr.constants.platform.Errno.EACCES:Ljnr/constants/platform/Errno;
invokevirtual jnr.constants.platform.Errno.intValue:()I
if_icmpeq 13
12: aload 5
athrow
13: StackMap locals: int
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getGlobalVariables:()Lorg/jruby/internal/runtime/GlobalVariables;
ldc "$!"
aload 4
invokevirtual org.jruby.internal.runtime.GlobalVariables.set:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
end local 7 end local 6 end local 5 14: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.ext.tempfile.Tempfile.openFile:Lorg/jruby/util/io/OpenFile;
aconst_null
invokevirtual org.jruby.util.io.OpenFile.setPath:(Ljava/lang/String;)V
15: aload 0
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
putfield org.jruby.ext.tempfile.Tempfile.tmpname:Lorg/jruby/runtime/builtin/IRubyObject;
end local 4 16: goto 23
17: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.jruby.ext.tempfile.Tempfile.isClosed:()Z
ifeq 22
18: aload 0
getfield org.jruby.ext.tempfile.Tempfile.tmpFile:Ljava/io/File;
invokevirtual java.io.File.exists:()Z
ifeq 19
aload 0
getfield org.jruby.ext.tempfile.Tempfile.tmpFile:Ljava/io/File;
invokevirtual java.io.File.delete:()Z
ifeq 23
19: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.ext.tempfile.Tempfile.openFile:Lorg/jruby/util/io/OpenFile;
aconst_null
invokevirtual org.jruby.util.io.OpenFile.setPath:(Ljava/lang/String;)V
20: aload 0
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
putfield org.jruby.ext.tempfile.Tempfile.tmpname:Lorg/jruby/runtime/builtin/IRubyObject;
21: goto 23
22: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
ldc "Tempfile#unlink or delete called on open file; ignoring"
invokevirtual org.jruby.common.RubyWarnings.warn:(Ljava/lang/String;)V
23: StackMap locals:
StackMap stack:
aload 1
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 24 0 this Lorg/jruby/ext/tempfile/Tempfile;
0 24 1 context Lorg/jruby/runtime/ThreadContext;
2 24 2 runtime Lorg/jruby/Ruby;
3 24 3 posix Ljnr/posix/POSIX;
5 16 4 oldExc Lorg/jruby/runtime/builtin/IRubyObject;
8 14 5 re Lorg/jruby/exceptions/RaiseException;
9 14 6 excp Lorg/jruby/RubyException;
11 14 7 errno I
Exception table:
from to target type
5 6 7 Class org.jruby.exceptions.RaiseException
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"unlink", "delete"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject size(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.jruby.ext.tempfile.Tempfile.isClosed:()Z
ifne 4
1: aload 0
aload 1
invokevirtual org.jruby.ext.tempfile.Tempfile.flush:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyIO;
pop
2: aload 0
aload 1
invokevirtual org.jruby.ext.tempfile.Tempfile.stat:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyFileStat
astore 2
start local 2 3: aload 2
invokevirtual org.jruby.RubyFileStat.size:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 4: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.ext.tempfile.Tempfile.tmpname:Lorg/jruby/runtime/builtin/IRubyObject;
ifnull 7
aload 0
getfield org.jruby.ext.tempfile.Tempfile.tmpname:Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifne 7
5: aload 1
aload 0
invokevirtual org.jruby.ext.tempfile.Tempfile.getMetaClass:()Lorg/jruby/RubyClass;
aload 0
getfield org.jruby.ext.tempfile.Tempfile.tmpname:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.ext.tempfile.Tempfile.stat:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyFileStat
astore 2
start local 2 6: aload 2
invokevirtual org.jruby.RubyFileStat.size:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 7: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/jruby/ext/tempfile/Tempfile;
0 8 1 context Lorg/jruby/runtime/ThreadContext;
3 4 2 stat Lorg/jruby/RubyFileStat;
6 7 2 stat Lorg/jruby/RubyFileStat;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"size", "length"})
MethodParameters:
Name Flags
context
public static org.jruby.runtime.builtin.IRubyObject open19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;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=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
invokestatic org.jruby.ext.tempfile.Tempfile.open:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)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 1 0 context Lorg/jruby/runtime/ThreadContext;
0 1 1 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
recv
args
block
public static org.jruby.runtime.builtin.IRubyObject open(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;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=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
checkcast org.jruby.RubyClass
astore 4
start local 4 1: aload 4
aload 0
aload 2
aload 3
invokevirtual org.jruby.RubyClass.newInstance:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.ext.tempfile.Tempfile
astore 5
start local 5 2: aload 3
invokevirtual org.jruby.runtime.Block.isGiven:()Z
ifeq 9
3: aload 3
aload 0
aload 5
invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 7
4: aload 5
invokevirtual org.jruby.ext.tempfile.Tempfile.isClosed:()Z
ifne 5
aload 5
invokevirtual org.jruby.ext.tempfile.Tempfile.close:()V
5: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block org.jruby.RubyClass org.jruby.ext.tempfile.Tempfile top org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 7
areturn
6: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block org.jruby.RubyClass org.jruby.ext.tempfile.Tempfile
StackMap stack: java.lang.Throwable
astore 6
7: aload 5
invokevirtual org.jruby.ext.tempfile.Tempfile.isClosed:()Z
ifne 8
aload 5
invokevirtual org.jruby.ext.tempfile.Tempfile.close:()V
8: StackMap locals: java.lang.Throwable
StackMap stack:
aload 6
athrow
9: StackMap locals:
StackMap stack:
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 10 0 context Lorg/jruby/runtime/ThreadContext;
0 10 1 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 10 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
0 10 3 block Lorg/jruby/runtime/Block;
1 10 4 klass Lorg/jruby/RubyClass;
2 10 5 tempfile Lorg/jruby/ext/tempfile/Tempfile;
Exception table:
from to target type
3 4 6 any
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(optional = 4, meta = true)
MethodParameters:
Name Flags
context
recv
args
block
public org.jruby.RubyString inspect(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyString;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.jruby.RubyFile.inspect:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyString;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/ext/tempfile/Tempfile;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public void finalize();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.finalize:()V
1: goto 5
StackMap locals:
StackMap stack: java.lang.Throwable
2: astore 1
3: aload 0
getfield org.jruby.ext.tempfile.Tempfile.tmpFile:Ljava/io/File;
invokevirtual java.io.File.delete:()Z
pop
4: aload 1
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.ext.tempfile.Tempfile.tmpFile:Ljava/io/File;
invokevirtual java.io.File.delete:()Z
pop
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/ext/tempfile/Tempfile;
Exception table:
from to target type
0 2 2 any
Exceptions:
throws java.lang.Throwable
public org.jruby.runtime.builtin.IRubyObject initialize19(org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
descriptor: ([Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
invokevirtual org.jruby.ext.tempfile.Tempfile.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
aload 1
aload 2
invokevirtual org.jruby.ext.tempfile.Tempfile.initialize:(Lorg/jruby/runtime/ThreadContext;[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 this Lorg/jruby/ext/tempfile/Tempfile;
0 1 1 args [Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
args
block
public org.jruby.runtime.builtin.IRubyObject size19(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.jruby.ext.tempfile.Tempfile.size:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/ext/tempfile/Tempfile;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
static org.jruby.runtime.builtin.IRubyObject access$0(org.jruby.ext.tempfile.Tempfile, org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
descriptor: (Lorg/jruby/ext/tempfile/Tempfile;Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
aload 3
invokespecial org.jruby.RubyFile.initialize:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "Tempfile.java"
NestMembers:
org.jruby.ext.tempfile.Tempfile$1 org.jruby.ext.tempfile.Tempfile$TempfileCallback
InnerClasses:
org.jruby.ext.tempfile.Tempfile$1
private TempfileCallback = org.jruby.ext.tempfile.Tempfile$TempfileCallback of org.jruby.ext.tempfile.Tempfile
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyClass(name = {"Tempfile"}, parent = "File")