public abstract class com.google.inject.AbstractModule implements com.google.inject.Module
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.google.inject.AbstractModule
super_class: java.lang.Object
{
com.google.inject.Binder binder;
descriptor: Lcom/google/inject/Binder;
flags: (0x0000)
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
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/AbstractModule;
public final synchronized void configure(com.google.inject.Binder);
descriptor: (Lcom/google/inject/Binder;)V
flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.google.inject.AbstractModule.binder:Lcom/google/inject/Binder;
ifnonnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ldc "Re-entry is not allowed."
invokestatic com.google.common.base.Preconditions.checkState:(ZLjava/lang/Object;)V
3: aload 0
aload 1
ldc "builder"
invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.google.inject.Binder
putfield com.google.inject.AbstractModule.binder:Lcom/google/inject/Binder;
4: aload 0
invokevirtual com.google.inject.AbstractModule.configure:()V
5: goto 9
StackMap locals:
StackMap stack: java.lang.Throwable
6: astore 2
7: aload 0
aconst_null
putfield com.google.inject.AbstractModule.binder:Lcom/google/inject/Binder;
8: aload 2
athrow
9: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield com.google.inject.AbstractModule.binder:Lcom/google/inject/Binder;
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/google/inject/AbstractModule;
0 11 1 builder Lcom/google/inject/Binder;
Exception table:
from to target type
4 6 6 any
MethodParameters:
Name Flags
builder
protected void configure();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/AbstractModule;
protected com.google.inject.Binder binder();
descriptor: ()Lcom/google/inject/Binder;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.inject.AbstractModule.binder:Lcom/google/inject/Binder;
ifnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ldc "The binder can only be used inside configure()"
invokestatic com.google.common.base.Preconditions.checkState:(ZLjava/lang/Object;)V
3: aload 0
getfield com.google.inject.AbstractModule.binder:Lcom/google/inject/Binder;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/google/inject/AbstractModule;
protected void bindScope(java.lang.Class<? extends java.lang.annotation.Annotation>, com.google.inject.Scope);
descriptor: (Ljava/lang/Class;Lcom/google/inject/Scope;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
aload 2
invokeinterface com.google.inject.Binder.bindScope:(Ljava/lang/Class;Lcom/google/inject/Scope;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 scopeAnnotation Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
0 2 2 scope Lcom/google/inject/Scope;
Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Lcom/google/inject/Scope;)V
MethodParameters:
Name Flags
scopeAnnotation
scope
protected <T> com.google.inject.binder.LinkedBindingBuilder<T> bind(com.google.inject.Key<T>);
descriptor: (Lcom/google/inject/Key;)Lcom/google/inject/binder/LinkedBindingBuilder;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.bind:(Lcom/google/inject/Key;)Lcom/google/inject/binder/LinkedBindingBuilder;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/AbstractModule;
0 1 1 key Lcom/google/inject/Key<TT;>;
Signature: <T:Ljava/lang/Object;>(Lcom/google/inject/Key<TT;>;)Lcom/google/inject/binder/LinkedBindingBuilder<TT;>;
MethodParameters:
Name Flags
key
protected <T> com.google.inject.binder.AnnotatedBindingBuilder<T> bind(com.google.inject.TypeLiteral<T>);
descriptor: (Lcom/google/inject/TypeLiteral;)Lcom/google/inject/binder/AnnotatedBindingBuilder;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.bind:(Lcom/google/inject/TypeLiteral;)Lcom/google/inject/binder/AnnotatedBindingBuilder;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/AbstractModule;
0 1 1 typeLiteral Lcom/google/inject/TypeLiteral<TT;>;
Signature: <T:Ljava/lang/Object;>(Lcom/google/inject/TypeLiteral<TT;>;)Lcom/google/inject/binder/AnnotatedBindingBuilder<TT;>;
MethodParameters:
Name Flags
typeLiteral
protected <T> com.google.inject.binder.AnnotatedBindingBuilder<T> bind(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Lcom/google/inject/binder/AnnotatedBindingBuilder;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.bind:(Ljava/lang/Class;)Lcom/google/inject/binder/AnnotatedBindingBuilder;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/AbstractModule;
0 1 1 clazz Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Lcom/google/inject/binder/AnnotatedBindingBuilder<TT;>;
MethodParameters:
Name Flags
clazz
protected com.google.inject.binder.AnnotatedConstantBindingBuilder bindConstant();
descriptor: ()Lcom/google/inject/binder/AnnotatedConstantBindingBuilder;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
invokeinterface com.google.inject.Binder.bindConstant:()Lcom/google/inject/binder/AnnotatedConstantBindingBuilder;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/AbstractModule;
protected void install(com.google.inject.Module);
descriptor: (Lcom/google/inject/Module;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.install:(Lcom/google/inject/Module;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 module Lcom/google/inject/Module;
MethodParameters:
Name Flags
module
protected void addError(java.lang.String, java.lang.Object[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
aload 2
invokeinterface com.google.inject.Binder.addError:(Ljava/lang/String;[Ljava/lang/Object;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 message Ljava/lang/String;
0 2 2 arguments [Ljava/lang/Object;
MethodParameters:
Name Flags
message
arguments
protected void addError(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.addError:(Ljava/lang/Throwable;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 t Ljava/lang/Throwable;
MethodParameters:
Name Flags
t
protected void addError(com.google.inject.spi.Message);
descriptor: (Lcom/google/inject/spi/Message;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.addError:(Lcom/google/inject/spi/Message;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 message Lcom/google/inject/spi/Message;
MethodParameters:
Name Flags
message
protected void requestInjection(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.requestInjection:(Ljava/lang/Object;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 instance Ljava/lang/Object;
MethodParameters:
Name Flags
instance
protected void requestStaticInjection(java.lang.Class<?>[]);
descriptor: ([Ljava/lang/Class;)V
flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.requestStaticInjection:([Ljava/lang/Class;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 types [Ljava/lang/Class;
Signature: ([Ljava/lang/Class<*>;)V
MethodParameters:
Name Flags
types
protected void bindInterceptor(com.google.inject.matcher.Matcher<? super java.lang.Class<?>>, com.google.inject.matcher.Matcher<? super java.lang.reflect.Method>, org.aopalliance.intercept.MethodInterceptor[]);
descriptor: (Lcom/google/inject/matcher/Matcher;Lcom/google/inject/matcher/Matcher;[Lorg/aopalliance/intercept/MethodInterceptor;)V
flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
aload 2
aload 3
invokeinterface com.google.inject.Binder.bindInterceptor:(Lcom/google/inject/matcher/Matcher;Lcom/google/inject/matcher/Matcher;[Lorg/aopalliance/intercept/MethodInterceptor;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 classMatcher Lcom/google/inject/matcher/Matcher<-Ljava/lang/Class<*>;>;
0 2 2 methodMatcher Lcom/google/inject/matcher/Matcher<-Ljava/lang/reflect/Method;>;
0 2 3 interceptors [Lorg/aopalliance/intercept/MethodInterceptor;
Signature: (Lcom/google/inject/matcher/Matcher<-Ljava/lang/Class<*>;>;Lcom/google/inject/matcher/Matcher<-Ljava/lang/reflect/Method;>;[Lorg/aopalliance/intercept/MethodInterceptor;)V
MethodParameters:
Name Flags
classMatcher
methodMatcher
interceptors
protected void requireBinding(com.google.inject.Key<?>);
descriptor: (Lcom/google/inject/Key;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.getProvider:(Lcom/google/inject/Key;)Lcom/google/inject/Provider;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 key Lcom/google/inject/Key<*>;
Signature: (Lcom/google/inject/Key<*>;)V
MethodParameters:
Name Flags
key
protected void requireBinding(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.getProvider:(Ljava/lang/Class;)Lcom/google/inject/Provider;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 type Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)V
MethodParameters:
Name Flags
type
protected <T> com.google.inject.Provider<T> getProvider(com.google.inject.Key<T>);
descriptor: (Lcom/google/inject/Key;)Lcom/google/inject/Provider;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.getProvider:(Lcom/google/inject/Key;)Lcom/google/inject/Provider;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/AbstractModule;
0 1 1 key Lcom/google/inject/Key<TT;>;
Signature: <T:Ljava/lang/Object;>(Lcom/google/inject/Key<TT;>;)Lcom/google/inject/Provider<TT;>;
MethodParameters:
Name Flags
key
protected <T> com.google.inject.Provider<T> getProvider(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Lcom/google/inject/Provider;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.getProvider:(Ljava/lang/Class;)Lcom/google/inject/Provider;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/AbstractModule;
0 1 1 type Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Lcom/google/inject/Provider<TT;>;
MethodParameters:
Name Flags
type
protected void convertToTypes(com.google.inject.matcher.Matcher<? super com.google.inject.TypeLiteral<?>>, com.google.inject.spi.TypeConverter);
descriptor: (Lcom/google/inject/matcher/Matcher;Lcom/google/inject/spi/TypeConverter;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
aload 2
invokeinterface com.google.inject.Binder.convertToTypes:(Lcom/google/inject/matcher/Matcher;Lcom/google/inject/spi/TypeConverter;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 typeMatcher Lcom/google/inject/matcher/Matcher<-Lcom/google/inject/TypeLiteral<*>;>;
0 2 2 converter Lcom/google/inject/spi/TypeConverter;
Signature: (Lcom/google/inject/matcher/Matcher<-Lcom/google/inject/TypeLiteral<*>;>;Lcom/google/inject/spi/TypeConverter;)V
MethodParameters:
Name Flags
typeMatcher
converter
protected com.google.inject.Stage currentStage();
descriptor: ()Lcom/google/inject/Stage;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
invokeinterface com.google.inject.Binder.currentStage:()Lcom/google/inject/Stage;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/AbstractModule;
protected <T> com.google.inject.MembersInjector<T> getMembersInjector(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Lcom/google/inject/MembersInjector;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.getMembersInjector:(Ljava/lang/Class;)Lcom/google/inject/MembersInjector;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/AbstractModule;
0 1 1 type Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Lcom/google/inject/MembersInjector<TT;>;
MethodParameters:
Name Flags
type
protected <T> com.google.inject.MembersInjector<T> getMembersInjector(com.google.inject.TypeLiteral<T>);
descriptor: (Lcom/google/inject/TypeLiteral;)Lcom/google/inject/MembersInjector;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
invokeinterface com.google.inject.Binder.getMembersInjector:(Lcom/google/inject/TypeLiteral;)Lcom/google/inject/MembersInjector;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/AbstractModule;
0 1 1 type Lcom/google/inject/TypeLiteral<TT;>;
Signature: <T:Ljava/lang/Object;>(Lcom/google/inject/TypeLiteral<TT;>;)Lcom/google/inject/MembersInjector<TT;>;
MethodParameters:
Name Flags
type
protected void bindListener(com.google.inject.matcher.Matcher<? super com.google.inject.TypeLiteral<?>>, com.google.inject.spi.TypeListener);
descriptor: (Lcom/google/inject/matcher/Matcher;Lcom/google/inject/spi/TypeListener;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
aload 2
invokeinterface com.google.inject.Binder.bindListener:(Lcom/google/inject/matcher/Matcher;Lcom/google/inject/spi/TypeListener;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 typeMatcher Lcom/google/inject/matcher/Matcher<-Lcom/google/inject/TypeLiteral<*>;>;
0 2 2 listener Lcom/google/inject/spi/TypeListener;
Signature: (Lcom/google/inject/matcher/Matcher<-Lcom/google/inject/TypeLiteral<*>;>;Lcom/google/inject/spi/TypeListener;)V
MethodParameters:
Name Flags
typeMatcher
listener
protected void bindListener(com.google.inject.matcher.Matcher<? super com.google.inject.Binding<?>>, com.google.inject.spi.ProvisionListener[]);
descriptor: (Lcom/google/inject/matcher/Matcher;[Lcom/google/inject/spi/ProvisionListener;)V
flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.google.inject.AbstractModule.binder:()Lcom/google/inject/Binder;
aload 1
aload 2
invokeinterface com.google.inject.Binder.bindListener:(Lcom/google/inject/matcher/Matcher;[Lcom/google/inject/spi/ProvisionListener;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/inject/AbstractModule;
0 2 1 bindingMatcher Lcom/google/inject/matcher/Matcher<-Lcom/google/inject/Binding<*>;>;
0 2 2 listener [Lcom/google/inject/spi/ProvisionListener;
Signature: (Lcom/google/inject/matcher/Matcher<-Lcom/google/inject/Binding<*>;>;[Lcom/google/inject/spi/ProvisionListener;)V
MethodParameters:
Name Flags
bindingMatcher
listener
}
SourceFile: "AbstractModule.java"