
dagger.internal.codegen.ModuleAdapterProcessor.class Maven / Gradle / Ivy
???? 2?
??
? ?
??
?
?
???????? ?????
???
???
?
??
?
?
?
???
?????????
??? ??????????
*?
???? ? .? .?
??
? 5 {? { 5 . {
@
@ ?
? 5
N??
R? !?" ?#
?$ 5%&'(
^?)?*opqrs+
g,uv
-./
?01
?2
?3
45
}67
}89
?:;
<=
}>? {@ {A
}BCD
EF
GHI
J
GK
GL
}M ?NO
EP
QR
S
TU
kVW
gX
kY
kZ
}[
?\
?]^
T_`
ka
kbcjd
kefg
khT
ki @j k `l
m?n
op
qrs
otuv
?w
x
}y
?z
}{
?|}
~
~?
??
R?
^?
^? ?
???
???
??
o?
o???
??? ????? @??
??
??
??
?
??
?
??
?? @? .
?? @?
???
}?
??
?????
?????? ??
k????
o?? ?? ???????
k???? .?????
?????? InnerClasses INVALID_RETURN_TYPES Ljava/util/List; Signature $Ljava/util/List; remainingTypes Ljava/util/LinkedHashMap; kLjava/util/LinkedHashMap;>; ()V Code LineNumberTable LocalVariableTable this 0Ldagger/internal/codegen/ModuleAdapterProcessor; getSupportedSourceVersion "()Ljavax/lang/model/SourceVersion; process @(Ljava/util/Set;Ljavax/annotation/processing/RoundEnvironment;)Z parsedAnnotation Ljava/util/Map; javaFile Lcom/squareup/javapoet/JavaFile; e !CodeGenerationIncompleteException @Ldagger/internal/codegen/Util$CodeGenerationIncompleteException; Ljava/io/IOException; typeName Ljava/lang/String; type &Ljavax/lang/model/element/TypeElement;
providesTypes i Ljava/util/Iterator; types Ljava/util/Set; env .Ljavax/annotation/processing/RoundEnvironment; LocalVariableTypeTable 5Ljava/util/Map; >Ljava/util/List; (Ljava/util/Iterator; 8Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>;
StackMapTable????????? i(Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>;Ljavax/annotation/processing/RoundEnvironment;)Z error 7(Ljava/lang/String;Ljavax/lang/model/element/Element;)V msg element "Ljavax/lang/model/element/Element; providerMethodsByClass ?(Ljavax/annotation/processing/RoundEnvironment;)Ljava/util/Map; invalidTypeElement invalidTypeName i$
typeModifiers methodModifiers providerMethodAsExecutable ,Ljavax/lang/model/element/ExecutableElement;
returnType "Ljavax/lang/model/type/TypeMirror; methods providerMethod
moduleType
moduleName module elementUtils Ljavax/lang/model/util/Elements; Ljavax/lang/model/util/Types; result
objectType 4Ljava/util/Set; aLjava/util/Map;>;???? ?(Ljavax/annotation/processing/RoundEnvironment;)Ljava/util/Map;>; findProvidesMethods ?(Ljavax/annotation/processing/RoundEnvironment;)Ljava/util/Set; 3Ljava/util/Set; d(Ljavax/annotation/processing/RoundEnvironment;)Ljava/util/Set<+Ljavax/lang/model/element/Element;>; generateModuleAdapter g(Ljavax/lang/model/element/TypeElement;Ljava/util/Map;Ljava/util/List;)Lcom/squareup/javapoet/JavaFile; provides Ldagger/Provides; getBindings? Builder *Lcom/squareup/javapoet/MethodSpec$Builder; providerMethods staticInjections [Ljava/lang/Object; injects includes overrides Z complete library duplicateInjects duplicateIncludes moduleClassName !Lcom/squareup/javapoet/ClassName; adapterClassName adapterBuilder? (Lcom/squareup/javapoet/TypeSpec$Builder; noArgsConstructor methodToClassName methodNameToNextId $Ljava/util/List; ^Ljava/util/Map; NLjava/util/Map;???) ?(Ljavax/lang/model/element/TypeElement;Ljava/util/Map;Ljava/util/List;)Lcom/squareup/javapoet/JavaFile; extractDuplicates %([Ljava/lang/Object;)Ljava/util/List; item Ljava/lang/Object; items itemsList duplicateItems 9([Ljava/lang/Object;)Ljava/util/List; injectsInitializer 6([Ljava/lang/Object;)Lcom/squareup/javapoet/CodeBlock;
typeMirror key injectableType arr$ len$ I? )Lcom/squareup/javapoet/CodeBlock$Builder;? staticInjectionsInitializer staticInjection includesInitializer \(Ljavax/lang/model/element/TypeElement;[Ljava/lang/Object;)Lcom/squareup/javapoet/CodeBlock; include bindingClassName ?(Lcom/squareup/javapoet/ClassName;Ljavax/lang/model/element/ExecutableElement;Ljava/util/Map;Ljava/util/Map;)Lcom/squareup/javapoet/ClassName; adapterName className
methodName suffix id +Ljava/util/concurrent/atomic/AtomicInteger; uppercaseMethodName?(Lcom/squareup/javapoet/ClassName;Ljavax/lang/model/element/ExecutableElement;Ljava/util/Map;Ljava/util/Map;)Lcom/squareup/javapoet/ClassName; generateProvidesAdapter ?(Lcom/squareup/javapoet/ClassName;Lcom/squareup/javapoet/ClassName;Ljavax/lang/model/element/ExecutableElement;Ljava/util/Map;Ljava/util/Map;Z)Lcom/squareup/javapoet/TypeSpec; parameter parameterKey *Ljavax/lang/model/element/VariableElement;
attachBuilder getDependenciesBuilder Lcom/squareup/javapoet/TypeName;
parameters dependent singleton
getBuilder first =Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;;=(Lcom/squareup/javapoet/ClassName;Lcom/squareup/javapoet/ClassName;Ljavax/lang/model/element/ExecutableElement;Ljava/util/Map;Ljava/util/Map;Z)Lcom/squareup/javapoet/TypeSpec;
parameterName 6(Ljavax/lang/model/element/Element;)Ljava/lang/String;
SourceFile ModuleAdapterProcessor.java RuntimeVisibleAnnotations 6Ljavax/annotation/processing/SupportedAnnotationTypes; value * java/util/LinkedHashMap??EF???????????? java/lang/String?????????? java/util/List
dagger/Module??? java/lang/StringBuilder?? 0 has @Provides methods but no @Module annotation????@Afg????? >dagger/internal/codegen/Util$CodeGenerationIncompleteException java/io/IOException Code gen failed: ????????? 6Could not find types required by provides methods for java/util/HashMapbc javax/lang/model/element/Element
? Unexpected @Provides on ? $javax/lang/model/element/TypeElement? EClasses declaring @Provides methods must not be private or abstract: ;@Provides methods must not be private, abstract or static: . *javax/lang/model/element/ExecutableElement? 1@Provides methods must not have a throws clause: ? !" #$
%&' 3@Provides method must not return %s directly: %s.%s java/lang/Object()? java/util/ArrayList*+, java.lang.Object-./0 Modules must be classes: 1 ,Modules must not extend from other classes: 2 java/util/LinkedHashSet dagger/Provides34 java/lang/Boolean5??? +'injects' list contains duplicate entries: ,'includes' list contains duplicate entries: ?6 $$ModuleAdapter?78?9:;<= ?A manager of modules and provides adapters allowing for proper linking and
instance provision of types served by {@code @$T} methods.
>? dagger/internal/ModuleAdapter?@ com/squareup/javapoet/TypeNameA?BCD !javax/lang/model/element/ModifierEFGH [Ljava/lang/String; INJECTSIJKLGM $L??NOPQRST? STATIC_INJECTIONSJU?? INCLUDES??VWXGY hsuper($T.class, INJECTS, STATIC_INJECTIONS, $L /*overrides*/, INCLUDES, $L /*complete*/, $L /*library*/)Z[\]P^_`abcd newModuleef java/lang/Overrideghij return new $T() UUsed internally obtain dependency information, such as for cyclical
graph detection.
>] dagger/internal/BindingsGroup bindingsklkm?no &qr 6bindings.contributeProvidesBinding($S, new $T(module))s?t?? $$T.add(bindings, $S, new $T(module)) dagger/internal/SetBindingut java/lang/AssertionError Unknown @Provides type v??wxy?PzJ{ 0Code generated by dagger-compiler. Do not edit.|}~P??????J? { ,? javax/lang/model/type/TypeMirror?????? $S, }P?
$T.class, ? Unexpected value: in includes of com/squareup/javapoet/ClassName? )java/util/concurrent/atomic/AtomicInteger???????????? ProvidesAdapter???????? dagger/internal/ProvidesBindingR????? javax/inject/Singleton super($S, $L, $S, $S) IS_SINGLETON
NOT_SINGLETON?? this.module = module setLibrary($L) attach eUsed internally to link bindings/providers together at run time
according to their dependency graph.
??g? dagger/internal/Linker linker (javax/lang/model/element/VariableElement?? J$N = ($T) linker.requestBinding($S, $T.class, getClass().getClassLoader()) getDependencies?? injectMembersBindings getBindings.add($N) get YReturns the fully provisioned instance satisfying the contract for
{@code Provider<$T>}.
return module.$N(?] , $N.get() );
???
parameter_ javax/inject/Provider??? dagger/Lazy .dagger/internal/codegen/ModuleAdapterProcessor -javax/annotation/processing/AbstractProcessor 0dagger/internal/codegen/ModuleAdapterProcessor$1 java/util/Iterator
java/util/Set ,javax/annotation/processing/RoundEnvironment
java/util/Map javax/lang/model/util/Elements javax/lang/model/util/Types (com/squareup/javapoet/MethodSpec$Builder &com/squareup/javapoet/TypeSpec$Builder 'com/squareup/javapoet/CodeBlock$Builder javax/lang/model/SourceVersion latestSupported putAll (Ljava/util/Map;)V keySet ()Ljava/util/Set; iterator ()Ljava/util/Iterator; hasNext ()Z next ()Ljava/lang/Object;
processingEnv 3Ljavax/annotation/processing/ProcessingEnvironment; 1javax/annotation/processing/ProcessingEnvironment getElementUtils "()Ljavax/lang/model/util/Elements; getTypeElement @(Ljava/lang/CharSequence;)Ljavax/lang/model/element/TypeElement; &(Ljava/lang/Object;)Ljava/lang/Object; dagger/internal/codegen/Util
getAnnotation D(Ljava/lang/Class;Ljavax/lang/model/element/Element;)Ljava/util/Map; append -(Ljava/lang/Object;)Ljava/lang/StringBuilder; -(Ljava/lang/String;)Ljava/lang/StringBuilder; toString ()Ljava/lang/String; getFiler %()Ljavax/annotation/processing/Filer; com/squareup/javapoet/JavaFile writeTo &(Ljavax/annotation/processing/Filer;)V remove processingOver size ()I getMessager (()Ljavax/annotation/processing/Messager;? javax/tools/Diagnostic$Kind Kind ERROR Ljavax/tools/Diagnostic$Kind; $javax/annotation/processing/Messager printMessage 8(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;)V Z(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V getTypeUtils ()Ljavax/lang/model/util/Types; /$SwitchMap$javax$lang$model$element$ElementKind [I getEnclosingElement $()Ljavax/lang/model/element/Element; getKind (()Ljavax/lang/model/element/ElementKind; $javax/lang/model/element/ElementKind ordinal elementToString getModifiers PRIVATE #Ljavax/lang/model/element/Modifier; contains (Ljava/lang/Object;)Z ABSTRACT getQualifiedName !()Ljavax/lang/model/element/Name; STATIC getThrownTypes ()Ljava/util/List; isEmpty
getReturnType $()Ljavax/lang/model/type/TypeMirror; erasure F(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror; "()Ljavax/lang/model/type/TypeKind; javax/lang/model/type/TypeKind Ljavax/lang/model/type/TypeKind; equals asType
isSameType G(Ljavax/lang/model/type/TypeMirror;Ljavax/lang/model/type/TypeMirror;)Z format 9(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; put 8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; add getElementsAnnotatedWith "(Ljava/lang/Class;)Ljava/util/Set; CLASS &Ljavax/lang/model/element/ElementKind;
getSuperclass containsKey addAll (Ljava/util/Collection;)Z booleanValue I(Ljavax/lang/model/element/TypeElement;)Lcom/squareup/javapoet/ClassName; V(Lcom/squareup/javapoet/ClassName;Ljava/lang/String;)Lcom/squareup/javapoet/ClassName;
simpleName com/squareup/javapoet/TypeSpec classBuilder <(Ljava/lang/String;)Lcom/squareup/javapoet/TypeSpec$Builder; addOriginatingElement L(Ljavax/lang/model/element/Element;)Lcom/squareup/javapoet/TypeSpec$Builder;
addJavadoc O(Ljava/lang/String;[Ljava/lang/Object;)Lcom/squareup/javapoet/TypeSpec$Builder; 4(Ljava/lang/Class;)Lcom/squareup/javapoet/ClassName; +com/squareup/javapoet/ParameterizedTypeName q(Lcom/squareup/javapoet/ClassName;[Lcom/squareup/javapoet/TypeName;)Lcom/squareup/javapoet/ParameterizedTypeName;
superclass J(Lcom/squareup/javapoet/TypeName;)Lcom/squareup/javapoet/TypeSpec$Builder; PUBLIC FINAL addModifiers N([Ljavax/lang/model/element/Modifier;)Lcom/squareup/javapoet/TypeSpec$Builder; com/squareup/javapoet/FieldSpec builder y(Ljava/lang/reflect/Type;Ljava/lang/String;[Ljavax/lang/model/element/Modifier;)Lcom/squareup/javapoet/FieldSpec$Builder; 'com/squareup/javapoet/FieldSpec$Builder O([Ljavax/lang/model/element/Modifier;)Lcom/squareup/javapoet/FieldSpec$Builder; initializer P(Ljava/lang/String;[Ljava/lang/Object;)Lcom/squareup/javapoet/FieldSpec$Builder; build #()Lcom/squareup/javapoet/FieldSpec; addField K(Lcom/squareup/javapoet/FieldSpec;)Lcom/squareup/javapoet/TypeSpec$Builder; ARRAY_OF_CLASS ?(Lcom/squareup/javapoet/TypeName;Ljava/lang/String;[Ljavax/lang/model/element/Modifier;)Lcom/squareup/javapoet/FieldSpec$Builder; com/squareup/javapoet/MethodSpec constructorBuilder ,()Lcom/squareup/javapoet/MethodSpec$Builder; P([Ljavax/lang/model/element/Modifier;)Lcom/squareup/javapoet/MethodSpec$Builder; valueOf (Z)Ljava/lang/Boolean; addStatement Q(Ljava/lang/String;[Ljava/lang/Object;)Lcom/squareup/javapoet/MethodSpec$Builder; $()Lcom/squareup/javapoet/MethodSpec; addMethod L(Lcom/squareup/javapoet/MethodSpec;)Lcom/squareup/javapoet/TypeSpec$Builder; getNoArgsConstructor T(Ljavax/lang/model/element/TypeElement;)Ljavax/lang/model/element/ExecutableElement; isCallableConstructor /(Ljavax/lang/model/element/ExecutableElement;)Z
methodBuilder >(Ljava/lang/String;)Lcom/squareup/javapoet/MethodSpec$Builder;
addAnnotation =(Ljava/lang/Class;)Lcom/squareup/javapoet/MethodSpec$Builder; returns L(Lcom/squareup/javapoet/TypeName;)Lcom/squareup/javapoet/MethodSpec$Builder; addParameter z(Ljava/lang/reflect/Type;Ljava/lang/String;[Ljavax/lang/model/element/Modifier;)Lcom/squareup/javapoet/MethodSpec$Builder; ?(Lcom/squareup/javapoet/TypeName;Ljava/lang/String;[Ljavax/lang/model/element/Modifier;)Lcom/squareup/javapoet/MethodSpec$Builder; 4(Ljava/lang/Class;)Ljava/lang/annotation/Annotation; $SwitchMap$dagger$Provides$Type Type ()Ldagger/Provides$Type; dagger/Provides$Type %dagger/internal/codegen/GeneratorKeys @(Ljavax/lang/model/element/ExecutableElement;)Ljava/lang/String; getSetKey (Ljava/lang/Object;)V addType J(Lcom/squareup/javapoet/TypeSpec;)Lcom/squareup/javapoet/TypeSpec$Builder; packageName "()Lcom/squareup/javapoet/TypeSpec; \(Ljava/lang/String;Lcom/squareup/javapoet/TypeSpec;)Lcom/squareup/javapoet/JavaFile$Builder; &com/squareup/javapoet/JavaFile$Builder addFileComment O(Ljava/lang/String;[Ljava/lang/Object;)Lcom/squareup/javapoet/JavaFile$Builder; "()Lcom/squareup/javapoet/JavaFile; java/util/Arrays asList (Ljava/util/Collection;)V com/squareup/javapoet/CodeBlock +()Lcom/squareup/javapoet/CodeBlock$Builder; P(Ljava/lang/String;[Ljava/lang/Object;)Lcom/squareup/javapoet/CodeBlock$Builder; isInterface %(Ljavax/lang/model/type/TypeMirror;)Z 6(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
rawMembersKey #()Lcom/squareup/javapoet/CodeBlock; WARNING
getSimpleName (I)V incrementAndGet charAt (I)C java/lang/Character toUpperCase (C)C (C)Ljava/lang/StringBuilder; substring (I)Ljava/lang/String; nestedClass 5(Ljava/lang/String;)Lcom/squareup/javapoet/ClassName; D(Ljavax/lang/model/type/TypeMirror;)Lcom/squareup/javapoet/TypeName;
getParameters 'dagger/internal/codegen/AdapterJavadocs bindingTypeDocs F(Lcom/squareup/javapoet/TypeName;ZZZ)Lcom/squareup/javapoet/CodeBlock; ?(Lcom/squareup/javapoet/TypeName;Ljava/lang/String;[Ljavax/lang/model/element/Modifier;)Lcom/squareup/javapoet/TypeSpec$Builder; bindingOf Q(Ljavax/lang/model/type/TypeMirror;)Lcom/squareup/javapoet/ParameterizedTypeName; typeToString UNCHECKED &Lcom/squareup/javapoet/AnnotationSpec; R(Lcom/squareup/javapoet/AnnotationSpec;)Lcom/squareup/javapoet/MethodSpec$Builder; >(Ljavax/lang/model/element/VariableElement;)Ljava/lang/String; SET_OF_BINDINGS addCode javax/lang/model/element/Name
contentEquals (Ljava/lang/CharSequence;)Z java/lang/Class getCanonicalName javax/tools/Diagnostic 1
> *? *? Y? ? ?
U Y . ? ? ] ? ?*? *,? ? *? ? ? N-?
? ?-? ? :*?
? ? :*? ? ? : ? :? *? Y? ? ? ? ? ???*? :*?
? ? ? $:???:*? Y? ? ? ? ? -? ! ??\,? " ? 7*? ? #? -*?
? $ ? %? Y? &? *? ? ? ? ? ' ? M v ? y ? ? M v ? y ? ? V a b " c - d ? e M j W k \ l v m y o ? p ? u ? q ? r ? s ? t ? v ? w ? x ? y ? | p W < ? ? " ? # - ?$% ? ~&' M p( ?)* ? ?+, ?-. / * W <0 M p(1 ?)2 ?+3 4 \ ? 5? _ 67859:;<