public class com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput extends com.oracle.truffle.api.instrumentation.TruffleInstrument
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput
super_class: com.oracle.truffle.api.instrumentation.TruffleInstrument
{
private com.oracle.truffle.api.instrumentation.EventBinding<java.io.ByteArrayOutputStream> binding;
descriptor: Lcom/oracle/truffle/api/instrumentation/EventBinding;
flags: (0x0002) ACC_PRIVATE
Signature: Lcom/oracle/truffle/api/instrumentation/EventBinding<Ljava/io/ByteArrayOutputStream;>;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput this
0: .line 147
aload 0 /* this */
invokespecial com.oracle.truffle.api.instrumentation.TruffleInstrument.<init>:()V
return
end local 0 // com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/sl/test/SLSharedCodeSeparatedEnvTest$CaptureOutput;
protected void onCreate(com.oracle.truffle.api.instrumentation.TruffleInstrument$Env);
descriptor: (Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=2
start local 0 // com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput this
start local 1 // com.oracle.truffle.api.instrumentation.TruffleInstrument$Env env
0: .line 152
new com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput$1
dup
aload 0 /* this */
invokespecial com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput$1.<init>:(Lcom/oracle/truffle/sl/test/SLSharedCodeSeparatedEnvTest$CaptureOutput;)V
astore 2 /* capture */
start local 2 // java.io.ByteArrayOutputStream capture
1: .line 168
aload 0 /* this */
aload 1 /* env */
invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.getInstrumenter:()Lcom/oracle/truffle/api/instrumentation/Instrumenter;
aload 2 /* capture */
invokevirtual com.oracle.truffle.api.instrumentation.Instrumenter.attachOutConsumer:(Ljava/io/OutputStream;)Lcom/oracle/truffle/api/instrumentation/EventBinding;
putfield com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput.binding:Lcom/oracle/truffle/api/instrumentation/EventBinding;
2: .line 169
aload 1 /* env */
aload 2 /* capture */
invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.registerService:(Ljava/lang/Object;)V
3: .line 171
aload 1 /* env */
invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.out:()Ljava/io/OutputStream;
ldc "initializingOutputCapture\n"
ldc "UTF-8"
invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
invokevirtual java.io.OutputStream.write:([B)V
4: .line 172
goto 7
StackMap locals: com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput com.oracle.truffle.api.instrumentation.TruffleInstrument$Env java.io.ByteArrayOutputStream
StackMap stack: java.io.IOException
5: astore 3 /* ex */
start local 3 // java.io.IOException ex
6: .line 173
new java.lang.IllegalStateException
dup
aload 3 /* ex */
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 // java.io.IOException ex
7: .line 175
StackMap locals:
StackMap stack:
return
end local 2 // java.io.ByteArrayOutputStream capture
end local 1 // com.oracle.truffle.api.instrumentation.TruffleInstrument$Env env
end local 0 // com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/sl/test/SLSharedCodeSeparatedEnvTest$CaptureOutput;
0 8 1 env Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
1 8 2 capture Ljava/io/ByteArrayOutputStream;
6 7 3 ex Ljava/io/IOException;
Exception table:
from to target type
3 4 5 Class java.io.IOException
MethodParameters:
Name Flags
env final
protected void onDispose(com.oracle.truffle.api.instrumentation.TruffleInstrument$Env);
descriptor: (Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=2
start local 0 // com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput this
start local 1 // com.oracle.truffle.api.instrumentation.TruffleInstrument$Env env
0: .line 180
aload 1 /* env */
invokevirtual com.oracle.truffle.api.instrumentation.TruffleInstrument$Env.out:()Ljava/io/OutputStream;
ldc "endOfOutputCapture\n"
ldc "UTF-8"
invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
invokevirtual java.io.OutputStream.write:([B)V
1: .line 181
goto 4
StackMap locals:
StackMap stack: java.io.IOException
2: astore 2 /* ex */
start local 2 // java.io.IOException ex
3: .line 182
new java.lang.IllegalStateException
dup
aload 2 /* ex */
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 // java.io.IOException ex
4: .line 184
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput.binding:Lcom/oracle/truffle/api/instrumentation/EventBinding;
invokevirtual com.oracle.truffle.api.instrumentation.EventBinding.dispose:()V
5: .line 185
return
end local 1 // com.oracle.truffle.api.instrumentation.TruffleInstrument$Env env
end local 0 // com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/truffle/sl/test/SLSharedCodeSeparatedEnvTest$CaptureOutput;
0 6 1 env Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;
3 4 2 ex Ljava/io/IOException;
Exception table:
from to target type
0 1 2 Class java.io.IOException
MethodParameters:
Name Flags
env
}
SourceFile: "SLSharedCodeSeparatedEnvTest.java"
NestHost: com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest
InnerClasses:
public final Env = com.oracle.truffle.api.instrumentation.TruffleInstrument$Env of com.oracle.truffle.api.instrumentation.TruffleInstrument
public abstract Registration = com.oracle.truffle.api.instrumentation.TruffleInstrument$Registration of com.oracle.truffle.api.instrumentation.TruffleInstrument
public CaptureOutput = com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput of com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest
com.oracle.truffle.sl.test.SLSharedCodeSeparatedEnvTest$CaptureOutput$1
RuntimeVisibleAnnotations:
com.oracle.truffle.api.instrumentation.TruffleInstrument$Registration(id = "captureOutput", services = {Ljava/io/ByteArrayOutputStream;})