class jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller extends jdk.nashorn.internal.runtime.Context$ContextCodeInstaller
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller
super_class: jdk.nashorn.internal.runtime.Context$ContextCodeInstaller
{
private final jdk.nashorn.internal.runtime.ScriptLoader loader;
descriptor: Ljdk/nashorn/internal/runtime/ScriptLoader;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int usageCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int bytesDefined;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private static final int MAX_USAGES;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 10
private static final int MAX_BYTES_DEFINED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 200000
private void <init>(jdk.nashorn.internal.runtime.Context, java.security.CodeSource, jdk.nashorn.internal.runtime.ScriptLoader);
descriptor: (Ljdk/nashorn/internal/runtime/Context;Ljava/security/CodeSource;Ljdk/nashorn/internal/runtime/ScriptLoader;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
invokespecial jdk.nashorn.internal.runtime.Context$ContextCodeInstaller.<init>:(Ljdk/nashorn/internal/runtime/Context;Ljava/security/CodeSource;)V
1: aload 0
iconst_0
putfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.usageCount:I
2: aload 0
iconst_0
putfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.bytesDefined:I
3: aload 0
aload 3
putfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.loader:Ljdk/nashorn/internal/runtime/ScriptLoader;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/nashorn/internal/runtime/Context$NamedContextCodeInstaller;
0 5 1 context Ljdk/nashorn/internal/runtime/Context;
0 5 2 codeSource Ljava/security/CodeSource;
0 5 3 loader Ljdk/nashorn/internal/runtime/ScriptLoader;
MethodParameters:
Name Flags
context final
codeSource final
loader final
public java.lang.Class<?> install(java.lang.String, byte[]);
descriptor: (Ljava/lang/String;[B)Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
dup
getfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.usageCount:I
iconst_1
iadd
putfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.usageCount:I
1: aload 0
dup
getfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.bytesDefined:I
aload 2
arraylength
iadd
putfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.bytesDefined:I
2: getstatic jdk.nashorn.internal.runtime.Context.NAMED_INSTALLED_SCRIPT_COUNT:Ljava/util/concurrent/atomic/LongAdder;
invokevirtual java.util.concurrent.atomic.LongAdder.increment:()V
3: aload 0
getfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.loader:Ljdk/nashorn/internal/runtime/ScriptLoader;
aload 1
invokestatic jdk.nashorn.internal.codegen.Compiler.binaryName:(Ljava/lang/String;)Ljava/lang/String;
aload 2
aload 0
getfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.codeSource:Ljava/security/CodeSource;
invokevirtual jdk.nashorn.internal.runtime.ScriptLoader.installClass:(Ljava/lang/String;[BLjava/security/CodeSource;)Ljava/lang/Class;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/nashorn/internal/runtime/Context$NamedContextCodeInstaller;
0 4 1 className Ljava/lang/String;
0 4 2 bytecode [B
Signature: (Ljava/lang/String;[B)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
className final
bytecode final
public jdk.nashorn.internal.runtime.CodeInstaller getOnDemandCompilationInstaller();
descriptor: ()Ljdk/nashorn/internal/runtime/CodeInstaller;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.usageCount:I
bipush 10
if_icmpge 2
aload 0
getfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.bytesDefined:I
ldc 200000
if_icmpge 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
new jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller
dup
aload 0
getfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.context:Ljdk/nashorn/internal/runtime/Context;
aload 0
getfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.codeSource:Ljava/security/CodeSource;
aload 0
getfield jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.context:Ljdk/nashorn/internal/runtime/Context;
invokevirtual jdk.nashorn.internal.runtime.Context.createNewLoader:()Ljdk/nashorn/internal/runtime/ScriptLoader;
invokespecial jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller.<init>:(Ljdk/nashorn/internal/runtime/Context;Ljava/security/CodeSource;Ljdk/nashorn/internal/runtime/ScriptLoader;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/internal/runtime/Context$NamedContextCodeInstaller;
public jdk.nashorn.internal.runtime.CodeInstaller getMultiClassCodeInstaller();
descriptor: ()Ljdk/nashorn/internal/runtime/CodeInstaller;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/Context$NamedContextCodeInstaller;
}
SourceFile: "Context.java"
NestHost: jdk.nashorn.internal.runtime.Context
InnerClasses:
private abstract ContextCodeInstaller = jdk.nashorn.internal.runtime.Context$ContextCodeInstaller of jdk.nashorn.internal.runtime.Context
private NamedContextCodeInstaller = jdk.nashorn.internal.runtime.Context$NamedContextCodeInstaller of jdk.nashorn.internal.runtime.Context