public class org.jruby.embed.internal.SingletonLocalContextProvider extends org.jruby.embed.internal.AbstractLocalContextProvider
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.embed.internal.SingletonLocalContextProvider
super_class: org.jruby.embed.internal.AbstractLocalContextProvider
{
private static volatile org.jruby.embed.internal.LocalContext localContext;
descriptor: Lorg/jruby/embed/internal/LocalContext;
flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE
public static org.jruby.embed.internal.SingletonLocalContextProvider getProvider(org.jruby.embed.LocalVariableBehavior, boolean);
descriptor: (Lorg/jruby/embed/LocalVariableBehavior;Z)Lorg/jruby/embed/internal/SingletonLocalContextProvider;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
ifnonnull 1
aload 0
iload 1
invokestatic org.jruby.embed.internal.SingletonLocalContextProvider.initLocalContext:(Lorg/jruby/embed/LocalVariableBehavior;Z)V
1: StackMap locals:
StackMap stack:
new org.jruby.embed.internal.SingletonLocalContextProvider
dup
getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
invokevirtual org.jruby.embed.internal.LocalContext.getLocalVariableBehavior:()Lorg/jruby/embed/LocalVariableBehavior;
iload 1
invokespecial org.jruby.embed.internal.SingletonLocalContextProvider.<init>:(Lorg/jruby/embed/LocalVariableBehavior;Z)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 behavior Lorg/jruby/embed/LocalVariableBehavior;
0 2 1 lazy Z
MethodParameters:
Name Flags
behavior final
lazy final
private static void initLocalContext(org.jruby.embed.LocalVariableBehavior, boolean);
descriptor: (Lorg/jruby/embed/LocalVariableBehavior;Z)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: ldc Lorg/jruby/embed/internal/SingletonLocalContextProvider;
dup
astore 2
monitorenter
1: getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
ifnonnull 3
2: new org.jruby.embed.internal.LocalContext
dup
invokestatic org.jruby.embed.internal.SingletonLocalContextProvider.getGlobalRuntimeConfigOrNew:()Lorg/jruby/RubyInstanceConfig;
aload 0
iload 1
invokespecial org.jruby.embed.internal.LocalContext.<init>:(Lorg/jruby/RubyInstanceConfig;Lorg/jruby/embed/LocalVariableBehavior;Z)V
putstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
3: StackMap locals: java.lang.Class
StackMap stack:
aload 2
monitorexit
4: goto 7
StackMap locals:
StackMap stack: java.lang.Throwable
5: aload 2
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 behavior Lorg/jruby/embed/LocalVariableBehavior;
0 8 1 lazy Z
Exception table:
from to target type
1 4 5 any
5 6 5 any
MethodParameters:
Name Flags
behavior final
lazy final
private org.jruby.embed.internal.LocalContext sharedLocalContext();
descriptor: ()Lorg/jruby/embed/internal/LocalContext;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
ifnonnull 1
aload 0
getfield org.jruby.embed.internal.SingletonLocalContextProvider.behavior:Lorg/jruby/embed/LocalVariableBehavior;
aload 0
getfield org.jruby.embed.internal.SingletonLocalContextProvider.lazy:Z
invokestatic org.jruby.embed.internal.SingletonLocalContextProvider.initLocalContext:(Lorg/jruby/embed/LocalVariableBehavior;Z)V
1: StackMap locals:
StackMap stack:
getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/embed/internal/SingletonLocalContextProvider;
public static org.jruby.embed.internal.LocalContext getLocalContextInstance(org.jruby.RubyInstanceConfig, org.jruby.embed.LocalVariableBehavior, boolean);
descriptor: (Lorg/jruby/RubyInstanceConfig;Lorg/jruby/embed/LocalVariableBehavior;Z)Lorg/jruby/embed/internal/LocalContext;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
ifnonnull 8
1: ldc Lorg/jruby/embed/internal/SingletonLocalContextProvider;
dup
astore 3
monitorenter
2: getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
ifnonnull 4
3: new org.jruby.embed.internal.LocalContext
dup
aload 0
aload 1
iload 2
invokespecial org.jruby.embed.internal.LocalContext.<init>:(Lorg/jruby/RubyInstanceConfig;Lorg/jruby/embed/LocalVariableBehavior;Z)V
putstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
4: StackMap locals: java.lang.Class
StackMap stack:
aload 3
monitorexit
5: goto 8
StackMap locals:
StackMap stack: java.lang.Throwable
6: aload 3
monitorexit
7: athrow
8: StackMap locals:
StackMap stack:
getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 config Lorg/jruby/RubyInstanceConfig;
0 9 1 behavior Lorg/jruby/embed/LocalVariableBehavior;
0 9 2 lazy Z
Exception table:
from to target type
2 5 6 any
6 7 6 any
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
config
behavior
lazy
public static org.jruby.embed.LocalVariableBehavior getLocalVariableBehaviorOrNull();
descriptor: ()Lorg/jruby/embed/LocalVariableBehavior;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
ifnonnull 1
aconst_null
areturn
1: StackMap locals:
StackMap stack:
getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
invokevirtual org.jruby.embed.internal.LocalContext.getLocalVariableBehavior:()Lorg/jruby/embed/LocalVariableBehavior;
areturn
LocalVariableTable:
Start End Slot Name Signature
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public void <init>(org.jruby.embed.LocalVariableBehavior);
descriptor: (Lorg/jruby/embed/LocalVariableBehavior;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokestatic org.jruby.embed.internal.SingletonLocalContextProvider.getGlobalRuntimeConfigOrNew:()Lorg/jruby/RubyInstanceConfig;
aload 1
invokespecial org.jruby.embed.internal.AbstractLocalContextProvider.<init>:(Lorg/jruby/RubyInstanceConfig;Lorg/jruby/embed/LocalVariableBehavior;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/embed/internal/SingletonLocalContextProvider;
0 2 1 behavior Lorg/jruby/embed/LocalVariableBehavior;
MethodParameters:
Name Flags
behavior
public void <init>(org.jruby.embed.LocalVariableBehavior, boolean);
descriptor: (Lorg/jruby/embed/LocalVariableBehavior;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokestatic org.jruby.embed.internal.SingletonLocalContextProvider.getGlobalRuntimeConfigOrNew:()Lorg/jruby/RubyInstanceConfig;
aload 1
iload 2
invokespecial org.jruby.embed.internal.SingletonLocalContextProvider.<init>:(Lorg/jruby/RubyInstanceConfig;Lorg/jruby/embed/LocalVariableBehavior;Z)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/embed/internal/SingletonLocalContextProvider;
0 2 1 behavior Lorg/jruby/embed/LocalVariableBehavior;
0 2 2 lazy Z
MethodParameters:
Name Flags
behavior
lazy
private void <init>(org.jruby.RubyInstanceConfig, org.jruby.embed.LocalVariableBehavior, boolean);
descriptor: (Lorg/jruby/RubyInstanceConfig;Lorg/jruby/embed/LocalVariableBehavior;Z)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 org.jruby.embed.internal.AbstractLocalContextProvider.<init>:(Lorg/jruby/RubyInstanceConfig;Lorg/jruby/embed/LocalVariableBehavior;)V
1: aload 0
iload 3
putfield org.jruby.embed.internal.SingletonLocalContextProvider.lazy:Z
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/embed/internal/SingletonLocalContextProvider;
0 3 1 config Lorg/jruby/RubyInstanceConfig;
0 3 2 behavior Lorg/jruby/embed/LocalVariableBehavior;
0 3 3 lazy Z
MethodParameters:
Name Flags
config
behavior
lazy
public org.jruby.Ruby getRuntime();
descriptor: ()Lorg/jruby/Ruby;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
invokevirtual org.jruby.embed.internal.SingletonLocalContextProvider.getGlobalRuntime:(Lorg/jruby/embed/internal/AbstractLocalContextProvider;)Lorg/jruby/Ruby;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/embed/internal/SingletonLocalContextProvider;
public org.jruby.RubyInstanceConfig getRubyInstanceConfig();
descriptor: ()Lorg/jruby/RubyInstanceConfig;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
invokevirtual org.jruby.embed.internal.SingletonLocalContextProvider.getGlobalRuntimeConfig:(Lorg/jruby/embed/internal/AbstractLocalContextProvider;)Lorg/jruby/RubyInstanceConfig;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/embed/internal/SingletonLocalContextProvider;
public boolean isRuntimeInitialized();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic org.jruby.Ruby.isGlobalRuntimeReady:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/embed/internal/SingletonLocalContextProvider;
public org.jruby.embed.internal.BiVariableMap getVarMap();
descriptor: ()Lorg/jruby/embed/internal/BiVariableMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.embed.internal.SingletonLocalContextProvider.sharedLocalContext:()Lorg/jruby/embed/internal/LocalContext;
aload 0
invokevirtual org.jruby.embed.internal.LocalContext.getVarMap:(Lorg/jruby/embed/internal/LocalContextProvider;)Lorg/jruby/embed/internal/BiVariableMap;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/embed/internal/SingletonLocalContextProvider;
public java.util.Map getAttributeMap();
descriptor: ()Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.embed.internal.SingletonLocalContextProvider.sharedLocalContext:()Lorg/jruby/embed/internal/LocalContext;
invokevirtual org.jruby.embed.internal.LocalContext.getAttributeMap:()Ljava/util/Map;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/embed/internal/SingletonLocalContextProvider;
public void terminate();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
ifnull 9
1: ldc Lorg/jruby/embed/internal/SingletonLocalContextProvider;
dup
astore 1
monitorenter
2: getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
ifnull 5
3: getstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
invokevirtual org.jruby.embed.internal.LocalContext.remove:()V
4: aconst_null
putstatic org.jruby.embed.internal.SingletonLocalContextProvider.localContext:Lorg/jruby/embed/internal/LocalContext;
5: StackMap locals: java.lang.Class
StackMap stack:
aload 1
monitorexit
6: goto 9
StackMap locals:
StackMap stack: java.lang.Throwable
7: aload 1
monitorexit
8: athrow
9: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/jruby/embed/internal/SingletonLocalContextProvider;
Exception table:
from to target type
2 6 7 any
7 8 7 any
}
SourceFile: "SingletonLocalContextProvider.java"