public class com.google.inject.Scopes
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.google.inject.Scopes
super_class: java.lang.Object
{
public static final com.google.inject.Scope SINGLETON;
descriptor: Lcom/google/inject/Scope;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final com.google.inject.Scope NO_SCOPE;
descriptor: Lcom/google/inject/Scope;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private static final com.google.inject.spi.BindingScopingVisitor<java.lang.Boolean> IS_SINGLETON_VISITOR;
descriptor: Lcom/google/inject/spi/BindingScopingVisitor;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lcom/google/inject/spi/BindingScopingVisitor<Ljava/lang/Boolean;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new com.google.inject.internal.SingletonScope
dup
invokespecial com.google.inject.internal.SingletonScope.<init>:()V
putstatic com.google.inject.Scopes.SINGLETON:Lcom/google/inject/Scope;
1: new com.google.inject.Scopes$1
dup
invokespecial com.google.inject.Scopes$1.<init>:()V
2: putstatic com.google.inject.Scopes.NO_SCOPE:Lcom/google/inject/Scope;
3: new com.google.inject.Scopes$2
dup
invokespecial com.google.inject.Scopes$2.<init>:()V
4: putstatic com.google.inject.Scopes.IS_SINGLETON_VISITOR:Lcom/google/inject/spi/BindingScopingVisitor;
5: return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/Scopes;
public static boolean isSingleton(com.google.inject.Binding<?>);
descriptor: (Lcom/google/inject/Binding;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
getstatic com.google.inject.Scopes.IS_SINGLETON_VISITOR:Lcom/google/inject/spi/BindingScopingVisitor;
invokeinterface com.google.inject.Binding.acceptScopingVisitor:(Lcom/google/inject/spi/BindingScopingVisitor;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
istore 1
start local 1 1: iload 1
ifeq 3
2: iconst_1
ireturn
3: StackMap locals: int
StackMap stack:
aload 0
instanceof com.google.inject.internal.LinkedBindingImpl
ifeq 9
4: aload 0
checkcast com.google.inject.internal.LinkedBindingImpl
astore 2
start local 2 5: aload 2
invokevirtual com.google.inject.internal.LinkedBindingImpl.getInjector:()Lcom/google/inject/internal/InjectorImpl;
astore 3
start local 3 6: aload 3
ifnull 15
7: aload 3
aload 2
invokevirtual com.google.inject.internal.LinkedBindingImpl.getLinkedKey:()Lcom/google/inject/Key;
invokeinterface com.google.inject.Injector.getBinding:(Lcom/google/inject/Key;)Lcom/google/inject/Binding;
astore 0
8: goto 0
end local 3 end local 2 9: StackMap locals:
StackMap stack:
aload 0
instanceof com.google.inject.spi.ExposedBinding
ifeq 15
10: aload 0
checkcast com.google.inject.spi.ExposedBinding
astore 2
start local 2 11: aload 2
invokeinterface com.google.inject.spi.ExposedBinding.getPrivateElements:()Lcom/google/inject/spi/PrivateElements;
invokeinterface com.google.inject.spi.PrivateElements.getInjector:()Lcom/google/inject/Injector;
astore 3
start local 3 12: aload 3
ifnull 15
13: aload 3
aload 2
invokeinterface com.google.inject.spi.ExposedBinding.getKey:()Lcom/google/inject/Key;
invokeinterface com.google.inject.Injector.getBinding:(Lcom/google/inject/Key;)Lcom/google/inject/Binding;
astore 0
14: goto 0
end local 3 end local 2 15: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 binding Lcom/google/inject/Binding<*>;
1 16 1 singleton Z
5 9 2 linkedBinding Lcom/google/inject/internal/LinkedBindingImpl<*>;
6 9 3 injector Lcom/google/inject/Injector;
11 15 2 exposedBinding Lcom/google/inject/spi/ExposedBinding<*>;
12 15 3 injector Lcom/google/inject/Injector;
Signature: (Lcom/google/inject/Binding<*>;)Z
MethodParameters:
Name Flags
binding
public static boolean isScoped(com.google.inject.Binding<?>, com.google.inject.Scope, java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Lcom/google/inject/Binding;Lcom/google/inject/Scope;Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: StackMap locals:
StackMap stack:
aload 0
1: new com.google.inject.Scopes$3
dup
aload 2
aload 1
invokespecial com.google.inject.Scopes$3.<init>:(Ljava/lang/Class;Lcom/google/inject/Scope;)V
2: invokeinterface com.google.inject.Binding.acceptScopingVisitor:(Lcom/google/inject/spi/BindingScopingVisitor;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
3: istore 3
start local 3 4: iload 3
ifeq 6
5: iconst_1
ireturn
6: StackMap locals: int
StackMap stack:
aload 0
instanceof com.google.inject.internal.LinkedBindingImpl
ifeq 12
7: aload 0
checkcast com.google.inject.internal.LinkedBindingImpl
astore 4
start local 4 8: aload 4
invokevirtual com.google.inject.internal.LinkedBindingImpl.getInjector:()Lcom/google/inject/internal/InjectorImpl;
astore 5
start local 5 9: aload 5
ifnull 18
10: aload 5
aload 4
invokevirtual com.google.inject.internal.LinkedBindingImpl.getLinkedKey:()Lcom/google/inject/Key;
invokeinterface com.google.inject.Injector.getBinding:(Lcom/google/inject/Key;)Lcom/google/inject/Binding;
astore 0
11: goto 0
end local 5 end local 4 12: StackMap locals:
StackMap stack:
aload 0
instanceof com.google.inject.spi.ExposedBinding
ifeq 18
13: aload 0
checkcast com.google.inject.spi.ExposedBinding
astore 4
start local 4 14: aload 4
invokeinterface com.google.inject.spi.ExposedBinding.getPrivateElements:()Lcom/google/inject/spi/PrivateElements;
invokeinterface com.google.inject.spi.PrivateElements.getInjector:()Lcom/google/inject/Injector;
astore 5
start local 5 15: aload 5
ifnull 18
16: aload 5
aload 4
invokeinterface com.google.inject.spi.ExposedBinding.getKey:()Lcom/google/inject/Key;
invokeinterface com.google.inject.Injector.getBinding:(Lcom/google/inject/Key;)Lcom/google/inject/Binding;
astore 0
17: goto 0
end local 5 end local 4 18: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 binding Lcom/google/inject/Binding<*>;
0 19 1 scope Lcom/google/inject/Scope;
0 19 2 scopeAnnotation Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
4 19 3 matches Z
8 12 4 linkedBinding Lcom/google/inject/internal/LinkedBindingImpl<*>;
9 12 5 injector Lcom/google/inject/Injector;
14 18 4 exposedBinding Lcom/google/inject/spi/ExposedBinding<*>;
15 18 5 injector Lcom/google/inject/Injector;
Signature: (Lcom/google/inject/Binding<*>;Lcom/google/inject/Scope;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Z
MethodParameters:
Name Flags
binding
scope final
scopeAnnotation final
public static boolean isCircularProxy(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof com.google.inject.internal.CircularDependencyProxy
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 object Ljava/lang/Object;
MethodParameters:
Name Flags
object
}
SourceFile: "Scopes.java"
NestMembers:
com.google.inject.Scopes$1 com.google.inject.Scopes$2 com.google.inject.Scopes$3
InnerClasses:
com.google.inject.Scopes$1
com.google.inject.Scopes$2
com.google.inject.Scopes$3