All Downloads are FREE. Search and download functionalities are using the official Maven repository.

dagger.internal.codegen.DaggerDelegateComponentProcessor_Injector Maven / Gradle / Ivy

The newest version!
// Generated by Dagger (https://dagger.dev).
package dagger.internal.codegen;

import androidx.room.compiler.processing.XFiler;
import androidx.room.compiler.processing.XMessager;
import androidx.room.compiler.processing.XProcessingEnv;
import androidx.room.compiler.processing.XProcessingStep;
import androidx.room.compiler.processing.XTypeElement;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import dagger.internal.DaggerGenerated;
import dagger.internal.DelegateFactory;
import dagger.internal.DoubleCheck;
import dagger.internal.InstanceFactory;
import dagger.internal.Preconditions;
import dagger.internal.Provider;
import dagger.internal.SingleCheck;
import dagger.internal.codegen.base.ClearableCache;
import dagger.internal.codegen.base.DaggerSuperficialValidation;
import dagger.internal.codegen.base.DaggerSuperficialValidation_Factory;
import dagger.internal.codegen.base.ElementFormatter_Factory;
import dagger.internal.codegen.base.SourceFileGenerator;
import dagger.internal.codegen.binding.BindingDeclarationFormatter;
import dagger.internal.codegen.binding.BindingDeclarationFormatter_Factory;
import dagger.internal.codegen.binding.BindingFactory;
import dagger.internal.codegen.binding.BindingFactory_Factory;
import dagger.internal.codegen.binding.BindingGraph;
import dagger.internal.codegen.binding.BindingGraphConverter_Factory;
import dagger.internal.codegen.binding.BindingGraphFactory;
import dagger.internal.codegen.binding.BindingGraphFactory_Factory;
import dagger.internal.codegen.binding.BindingNode_Factory_Factory;
import dagger.internal.codegen.binding.BindsTypeChecker;
import dagger.internal.codegen.binding.BindsTypeChecker_Factory;
import dagger.internal.codegen.binding.ComponentDeclarations_Factory_Factory;
import dagger.internal.codegen.binding.ComponentDescriptor;
import dagger.internal.codegen.binding.ComponentDescriptor_Factory_Factory;
import dagger.internal.codegen.binding.ContributionBinding;
import dagger.internal.codegen.binding.DelegateDeclaration_Factory_Factory;
import dagger.internal.codegen.binding.DependencyRequestFactory;
import dagger.internal.codegen.binding.DependencyRequestFactory_Factory;
import dagger.internal.codegen.binding.DependencyRequestFormatter;
import dagger.internal.codegen.binding.DependencyRequestFormatter_Factory;
import dagger.internal.codegen.binding.InjectBindingRegistry;
import dagger.internal.codegen.binding.InjectionAnnotations;
import dagger.internal.codegen.binding.InjectionAnnotations_Factory;
import dagger.internal.codegen.binding.InjectionSiteFactory_Factory;
import dagger.internal.codegen.binding.KeyFactory;
import dagger.internal.codegen.binding.KeyFactory_Factory;
import dagger.internal.codegen.binding.MembersInjectionBinding;
import dagger.internal.codegen.binding.MethodSignatureFormatter;
import dagger.internal.codegen.binding.MethodSignatureFormatter_Factory;
import dagger.internal.codegen.binding.ModuleDescriptor_Factory_Factory;
import dagger.internal.codegen.binding.MonitoringModules;
import dagger.internal.codegen.binding.MonitoringModules_Factory;
import dagger.internal.codegen.binding.MultibindingDeclaration_Factory_Factory;
import dagger.internal.codegen.binding.OptionalBindingDeclaration_Factory_Factory;
import dagger.internal.codegen.binding.ProductionBinding;
import dagger.internal.codegen.binding.SourceFiles_Factory;
import dagger.internal.codegen.binding.SubcomponentDeclaration_Factory_Factory;
import dagger.internal.codegen.bindinggraphvalidation.BindingGraphValidationModule_ProvidePluginsFactory;
import dagger.internal.codegen.bindinggraphvalidation.CompositeBindingGraphPlugin_Factory;
import dagger.internal.codegen.bindinggraphvalidation.CompositeBindingGraphPlugin_Factory_Impl;
import dagger.internal.codegen.bindinggraphvalidation.DependencyCycleValidator_Factory;
import dagger.internal.codegen.bindinggraphvalidation.DependsOnProductionExecutorValidator_Factory;
import dagger.internal.codegen.bindinggraphvalidation.DuplicateBindingsValidator_Factory;
import dagger.internal.codegen.bindinggraphvalidation.IncompatiblyScopedBindingsValidator_Factory;
import dagger.internal.codegen.bindinggraphvalidation.InjectBindingValidator_Factory;
import dagger.internal.codegen.bindinggraphvalidation.MapMultibindingValidator_Factory;
import dagger.internal.codegen.bindinggraphvalidation.MissingBindingValidator_Factory;
import dagger.internal.codegen.bindinggraphvalidation.NullableBindingValidator_Factory;
import dagger.internal.codegen.bindinggraphvalidation.ProvisionDependencyOnProducerBindingValidator_Factory;
import dagger.internal.codegen.bindinggraphvalidation.SetMultibindingValidator_Factory;
import dagger.internal.codegen.bindinggraphvalidation.SubcomponentFactoryMethodValidator_Factory;
import dagger.internal.codegen.compileroption.CompilerOptions;
import dagger.internal.codegen.compileroption.ProcessingEnvironmentCompilerOptions;
import dagger.internal.codegen.compileroption.ProcessingEnvironmentCompilerOptions_Factory;
import dagger.internal.codegen.componentgenerator.ComponentGeneratorModule_ComponentHjarGeneratorFactory;
import dagger.internal.codegen.componentgenerator.ComponentGenerator_Factory;
import dagger.internal.codegen.componentgenerator.ComponentHjarGenerator_Factory;
import dagger.internal.codegen.componentgenerator.CurrentImplementationSubcomponent;
import dagger.internal.codegen.componentgenerator.CurrentImplementationSubcomponent_ChildComponentImplementationFactoryModule_ProvideChildComponentImplementationFactoryFactory;
import dagger.internal.codegen.componentgenerator.CurrentImplementationSubcomponent_ChildComponentImplementationFactoryModule_ProvideTopLevelImplementationFactory;
import dagger.internal.codegen.componentgenerator.TopLevelImplementationComponent;
import dagger.internal.codegen.kotlin.KotlinMetadataFactory;
import dagger.internal.codegen.kotlin.KotlinMetadataFactory_Factory;
import dagger.internal.codegen.kotlin.KotlinMetadataUtil;
import dagger.internal.codegen.kotlin.KotlinMetadataUtil_Factory;
import dagger.internal.codegen.processingstep.AssistedFactoryProcessingStep_Factory;
import dagger.internal.codegen.processingstep.AssistedInjectProcessingStep_Factory;
import dagger.internal.codegen.processingstep.AssistedProcessingStep_Factory;
import dagger.internal.codegen.processingstep.BindingMethodProcessingStep_Factory;
import dagger.internal.codegen.processingstep.BindsInstanceProcessingStep_Factory;
import dagger.internal.codegen.processingstep.ComponentHjarProcessingStep_Factory;
import dagger.internal.codegen.processingstep.ComponentProcessingStep_Factory;
import dagger.internal.codegen.processingstep.InjectProcessingStep_Factory;
import dagger.internal.codegen.processingstep.MapKeyProcessingStep_Factory;
import dagger.internal.codegen.processingstep.ModuleProcessingStep_Factory;
import dagger.internal.codegen.processingstep.MonitoringModuleGenerator_Factory;
import dagger.internal.codegen.processingstep.MonitoringModuleProcessingStep_Factory;
import dagger.internal.codegen.processingstep.MultibindingAnnotationsProcessingStep_Factory;
import dagger.internal.codegen.processingstep.ProcessingStepsModule_ProcessingStepsFactory;
import dagger.internal.codegen.processingstep.SuperficialValidator_Factory;
import dagger.internal.codegen.processingstep.TypeCheckingProcessingStep_MembersInjector;
import dagger.internal.codegen.validation.AnyBindingMethodValidator;
import dagger.internal.codegen.validation.AnyBindingMethodValidator_Factory;
import dagger.internal.codegen.validation.BindingGraphValidator;
import dagger.internal.codegen.validation.BindingGraphValidator_Factory;
import dagger.internal.codegen.validation.BindingMethodValidatorsModule_IndexValidatorsFactory;
import dagger.internal.codegen.validation.BindsInstanceMethodValidator;
import dagger.internal.codegen.validation.BindsInstanceMethodValidator_Factory;
import dagger.internal.codegen.validation.BindsInstanceParameterValidator;
import dagger.internal.codegen.validation.BindsInstanceParameterValidator_Factory;
import dagger.internal.codegen.validation.BindsMethodValidator_Factory;
import dagger.internal.codegen.validation.BindsOptionalOfMethodValidator_Factory;
import dagger.internal.codegen.validation.ComponentCreatorValidator;
import dagger.internal.codegen.validation.ComponentCreatorValidator_Factory;
import dagger.internal.codegen.validation.ComponentDescriptorValidator;
import dagger.internal.codegen.validation.ComponentDescriptorValidator_Factory;
import dagger.internal.codegen.validation.ComponentHierarchyValidator_Factory;
import dagger.internal.codegen.validation.ComponentValidator;
import dagger.internal.codegen.validation.ComponentValidator_Factory;
import dagger.internal.codegen.validation.DependencyRequestValidator_Factory;
import dagger.internal.codegen.validation.DiagnosticMessageGenerator_Factory_Factory;
import dagger.internal.codegen.validation.DiagnosticReporterFactory_Factory;
import dagger.internal.codegen.validation.ExternalBindingGraphPlugins;
import dagger.internal.codegen.validation.ExternalBindingGraphPlugins_Factory;
import dagger.internal.codegen.validation.InjectBindingRegistryImpl_Factory;
import dagger.internal.codegen.validation.InjectValidator;
import dagger.internal.codegen.validation.InjectValidator_Factory;
import dagger.internal.codegen.validation.MapKeyValidator;
import dagger.internal.codegen.validation.MapKeyValidator_Factory;
import dagger.internal.codegen.validation.MembersInjectionValidator_Factory;
import dagger.internal.codegen.validation.ModuleValidator;
import dagger.internal.codegen.validation.ModuleValidator_Factory;
import dagger.internal.codegen.validation.MultibindsMethodValidator_Factory;
import dagger.internal.codegen.validation.ProducesMethodValidator_Factory;
import dagger.internal.codegen.validation.ProvidesMethodValidator_Factory;
import dagger.internal.codegen.validation.ValidationBindingGraphPlugin;
import dagger.internal.codegen.validation.ValidationBindingGraphPlugins;
import dagger.internal.codegen.validation.ValidationBindingGraphPlugins_Factory;
import dagger.internal.codegen.writing.AnnotationCreatorGenerator;
import dagger.internal.codegen.writing.AnnotationCreatorGenerator_Factory;
import dagger.internal.codegen.writing.AnonymousProviderCreationExpression_Factory;
import dagger.internal.codegen.writing.AnonymousProviderCreationExpression_Factory_Impl;
import dagger.internal.codegen.writing.AssistedFactoryRequestRepresentation_Factory;
import dagger.internal.codegen.writing.AssistedFactoryRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.BindingRepresentations_Factory;
import dagger.internal.codegen.writing.ComponentCreatorImplementationFactory_Factory;
import dagger.internal.codegen.writing.ComponentImplementation;
import dagger.internal.codegen.writing.ComponentImplementation_Factory;
import dagger.internal.codegen.writing.ComponentInstanceRequestRepresentation_Factory;
import dagger.internal.codegen.writing.ComponentInstanceRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.ComponentMethodRequestRepresentation_Factory;
import dagger.internal.codegen.writing.ComponentMethodRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.ComponentNames;
import dagger.internal.codegen.writing.ComponentNames_Factory;
import dagger.internal.codegen.writing.ComponentProvisionRequestRepresentation_Factory;
import dagger.internal.codegen.writing.ComponentProvisionRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.ComponentRequestRepresentations;
import dagger.internal.codegen.writing.ComponentRequestRepresentations_Factory;
import dagger.internal.codegen.writing.ComponentRequirementExpressions;
import dagger.internal.codegen.writing.ComponentRequirementExpressions_Factory;
import dagger.internal.codegen.writing.ComponentRequirementRequestRepresentation_Factory;
import dagger.internal.codegen.writing.ComponentRequirementRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.ComponentWrapperImplementation;
import dagger.internal.codegen.writing.ComponentWrapperImplementation_Factory;
import dagger.internal.codegen.writing.DelegateRequestRepresentation_Factory;
import dagger.internal.codegen.writing.DelegateRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.DelegatingFrameworkInstanceCreationExpression_Factory;
import dagger.internal.codegen.writing.DelegatingFrameworkInstanceCreationExpression_Factory_Impl;
import dagger.internal.codegen.writing.DependencyMethodProducerCreationExpression_Factory;
import dagger.internal.codegen.writing.DependencyMethodProducerCreationExpression_Factory_Impl;
import dagger.internal.codegen.writing.DependencyMethodProviderCreationExpression_Factory;
import dagger.internal.codegen.writing.DependencyMethodProviderCreationExpression_Factory_Impl;
import dagger.internal.codegen.writing.DerivedFromFrameworkInstanceRequestRepresentation_Factory;
import dagger.internal.codegen.writing.DerivedFromFrameworkInstanceRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.DirectInstanceBindingRepresentation_Factory;
import dagger.internal.codegen.writing.DirectInstanceBindingRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.FactoryGenerator;
import dagger.internal.codegen.writing.FactoryGenerator_Factory;
import dagger.internal.codegen.writing.FrameworkInstanceBindingRepresentation_Factory;
import dagger.internal.codegen.writing.FrameworkInstanceBindingRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.GeneratedImplementation;
import dagger.internal.codegen.writing.ImmediateFutureRequestRepresentation_Factory;
import dagger.internal.codegen.writing.ImmediateFutureRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.InaccessibleMapKeyProxyGenerator;
import dagger.internal.codegen.writing.InaccessibleMapKeyProxyGenerator_Factory;
import dagger.internal.codegen.writing.InjectionOrProvisionProviderCreationExpression_Factory;
import dagger.internal.codegen.writing.InjectionOrProvisionProviderCreationExpression_Factory_Impl;
import dagger.internal.codegen.writing.MapFactoryCreationExpression_Factory;
import dagger.internal.codegen.writing.MapFactoryCreationExpression_Factory_Impl;
import dagger.internal.codegen.writing.MapRequestRepresentation_Factory;
import dagger.internal.codegen.writing.MapRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.MembersInjectionBindingRepresentation_Factory;
import dagger.internal.codegen.writing.MembersInjectionBindingRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.MembersInjectionMethods_Factory;
import dagger.internal.codegen.writing.MembersInjectionRequestRepresentation_Factory;
import dagger.internal.codegen.writing.MembersInjectionRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.MembersInjectorGenerator;
import dagger.internal.codegen.writing.MembersInjectorGenerator_Factory;
import dagger.internal.codegen.writing.MembersInjectorProviderCreationExpression_Factory;
import dagger.internal.codegen.writing.MembersInjectorProviderCreationExpression_Factory_Impl;
import dagger.internal.codegen.writing.ModuleProxies;
import dagger.internal.codegen.writing.ModuleProxies_ModuleConstructorProxyGenerator_Factory;
import dagger.internal.codegen.writing.OptionalFactories_Factory;
import dagger.internal.codegen.writing.OptionalFactories_PerGeneratedFileCache_Factory;
import dagger.internal.codegen.writing.OptionalFactoryInstanceCreationExpression_Factory;
import dagger.internal.codegen.writing.OptionalFactoryInstanceCreationExpression_Factory_Impl;
import dagger.internal.codegen.writing.OptionalRequestRepresentation_Factory;
import dagger.internal.codegen.writing.OptionalRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.PrivateMethodRequestRepresentation_Factory;
import dagger.internal.codegen.writing.PrivateMethodRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.ProducerCreationExpression_Factory;
import dagger.internal.codegen.writing.ProducerCreationExpression_Factory_Impl;
import dagger.internal.codegen.writing.ProducerFactoryGenerator;
import dagger.internal.codegen.writing.ProducerFactoryGenerator_Factory;
import dagger.internal.codegen.writing.ProducerFromProviderCreationExpression_Factory;
import dagger.internal.codegen.writing.ProducerFromProviderCreationExpression_Factory_Impl;
import dagger.internal.codegen.writing.ProducerNodeInstanceRequestRepresentation_Factory;
import dagger.internal.codegen.writing.ProducerNodeInstanceRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.ProductionBindingRepresentation_Factory;
import dagger.internal.codegen.writing.ProductionBindingRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.ProviderInstanceRequestRepresentation_Factory;
import dagger.internal.codegen.writing.ProviderInstanceRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.ProviderInstanceSupplier_Factory;
import dagger.internal.codegen.writing.ProviderInstanceSupplier_Factory_Impl;
import dagger.internal.codegen.writing.ProvisionBindingRepresentation_Factory;
import dagger.internal.codegen.writing.ProvisionBindingRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.SetFactoryCreationExpression_Factory;
import dagger.internal.codegen.writing.SetFactoryCreationExpression_Factory_Impl;
import dagger.internal.codegen.writing.SetRequestRepresentation_Factory;
import dagger.internal.codegen.writing.SetRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.SimpleMethodRequestRepresentation_Factory;
import dagger.internal.codegen.writing.SimpleMethodRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.StaticFactoryInstanceSupplier_Factory;
import dagger.internal.codegen.writing.StaticFactoryInstanceSupplier_Factory_Impl;
import dagger.internal.codegen.writing.SubcomponentCreatorRequestRepresentation_Factory;
import dagger.internal.codegen.writing.SubcomponentCreatorRequestRepresentation_Factory_Impl;
import dagger.internal.codegen.writing.SwitchingProviderInstanceSupplier_Factory;
import dagger.internal.codegen.writing.SwitchingProviderInstanceSupplier_Factory_Impl;
import dagger.internal.codegen.writing.UnscopedDirectInstanceRequestRepresentationFactory_Factory;
import dagger.internal.codegen.writing.UnscopedFrameworkInstanceCreationExpressionFactory_Factory;
import dagger.internal.codegen.writing.UnwrappedMapKeyGenerator;
import dagger.internal.codegen.writing.UnwrappedMapKeyGenerator_Factory;
import dagger.spi.model.BindingGraphPlugin;
import java.util.Map;
import java.util.Optional;
import java.util.Set;

@DaggerGenerated
@SuppressWarnings({
    "unchecked",
    "rawtypes",
    "KotlinInternal",
    "KotlinInternalInJava"
})
final class DaggerDelegateComponentProcessor_Injector {
  private DaggerDelegateComponentProcessor_Injector() {
  }

  public static DelegateComponentProcessor.Injector.Factory factory() {
    return new Factory();
  }

  private static final class Factory implements DelegateComponentProcessor.Injector.Factory {
    @Override
    public DelegateComponentProcessor.Injector create(XProcessingEnv processingEnv,
        ImmutableSet externalPlugins,
        ImmutableSet legacyExternalPlugins) {
      Preconditions.checkNotNull(processingEnv);
      Preconditions.checkNotNull(externalPlugins);
      Preconditions.checkNotNull(legacyExternalPlugins);
      return new InjectorImpl(processingEnv, externalPlugins, legacyExternalPlugins);
    }
  }

  private static final class TopLevelImplementationComponentFactory implements TopLevelImplementationComponent.Factory {
    private final InjectorImpl injectorImpl;

    private TopLevelImplementationComponentFactory(InjectorImpl injectorImpl) {
      this.injectorImpl = injectorImpl;
    }

    @Override
    public TopLevelImplementationComponent create(BindingGraph bindingGraph) {
      Preconditions.checkNotNull(bindingGraph);
      return new TopLevelImplementationComponentImpl(injectorImpl, bindingGraph);
    }
  }

  private static final class CurrentImplementationSubcomponentBuilder implements CurrentImplementationSubcomponent.Builder {
    private final InjectorImpl injectorImpl;

    private final TopLevelImplementationComponentImpl topLevelImplementationComponentImpl;

    private BindingGraph bindingGraph;

    private Optional parentImplementation;

    private Optional parentRequestRepresentations;

    private Optional parentRequirementExpressions;

    private CurrentImplementationSubcomponentBuilder(InjectorImpl injectorImpl,
        TopLevelImplementationComponentImpl topLevelImplementationComponentImpl) {
      this.injectorImpl = injectorImpl;
      this.topLevelImplementationComponentImpl = topLevelImplementationComponentImpl;
    }

    @Override
    public CurrentImplementationSubcomponentBuilder bindingGraph(BindingGraph bindingGraph) {
      this.bindingGraph = Preconditions.checkNotNull(bindingGraph);
      return this;
    }

    @Override
    public CurrentImplementationSubcomponentBuilder parentImplementation(
        Optional parentImplementation) {
      this.parentImplementation = Preconditions.checkNotNull(parentImplementation);
      return this;
    }

    @Override
    public CurrentImplementationSubcomponentBuilder parentRequestRepresentations(
        Optional parentRequestRepresentations) {
      this.parentRequestRepresentations = Preconditions.checkNotNull(parentRequestRepresentations);
      return this;
    }

    @Override
    public CurrentImplementationSubcomponentBuilder parentRequirementExpressions(
        Optional parentRequirementExpressions) {
      this.parentRequirementExpressions = Preconditions.checkNotNull(parentRequirementExpressions);
      return this;
    }

    @Override
    public CurrentImplementationSubcomponent build() {
      Preconditions.checkBuilderRequirement(bindingGraph, BindingGraph.class);
      Preconditions.checkBuilderRequirement(parentImplementation, Optional.class);
      Preconditions.checkBuilderRequirement(parentRequestRepresentations, Optional.class);
      Preconditions.checkBuilderRequirement(parentRequirementExpressions, Optional.class);
      return new CurrentImplementationSubcomponentImpl(injectorImpl, topLevelImplementationComponentImpl, bindingGraph, parentImplementation, parentRequestRepresentations, parentRequirementExpressions);
    }
  }

  private static final class CurrentImplementationSubcomponentImpl implements CurrentImplementationSubcomponent {
    private final InjectorImpl injectorImpl;

    private final TopLevelImplementationComponentImpl topLevelImplementationComponentImpl;

    private final CurrentImplementationSubcomponentImpl currentImplementationSubcomponentImpl = this;

    private Provider> parentImplementationProvider;

    private Provider componentImplementationProvider;

    private Provider> parentRequestRepresentationsProvider;

    private Provider bindingGraphProvider;

    private Provider> parentRequirementExpressionsProvider;

    private Provider componentRequirementExpressionsProvider;

    private Provider componentRequestRepresentationsProvider;

    @SuppressWarnings("rawtypes")
    private Provider membersInjectionMethodsProvider;

    @SuppressWarnings("rawtypes")
    private MembersInjectionRequestRepresentation_Factory membersInjectionRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider;

    @SuppressWarnings("rawtypes")
    private MembersInjectionBindingRepresentation_Factory membersInjectionBindingRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider2;

    @SuppressWarnings("rawtypes")
    private ComponentMethodRequestRepresentation_Factory componentMethodRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider3;

    @SuppressWarnings("rawtypes")
    private ImmediateFutureRequestRepresentation_Factory immediateFutureRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider4;

    @SuppressWarnings("rawtypes")
    private PrivateMethodRequestRepresentation_Factory privateMethodRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider5;

    @SuppressWarnings("rawtypes")
    private SimpleMethodRequestRepresentation_Factory simpleMethodRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider6;

    @SuppressWarnings("rawtypes")
    private AssistedFactoryRequestRepresentation_Factory assistedFactoryRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider7;

    @SuppressWarnings("rawtypes")
    private ComponentInstanceRequestRepresentation_Factory componentInstanceRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider8;

    @SuppressWarnings("rawtypes")
    private ComponentProvisionRequestRepresentation_Factory componentProvisionRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider9;

    @SuppressWarnings("rawtypes")
    private ComponentRequirementRequestRepresentation_Factory componentRequirementRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider10;

    @SuppressWarnings("rawtypes")
    private DelegateRequestRepresentation_Factory delegateRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider11;

    @SuppressWarnings("rawtypes")
    private MapRequestRepresentation_Factory mapRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider12;

    @SuppressWarnings("rawtypes")
    private OptionalRequestRepresentation_Factory optionalRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider13;

    @SuppressWarnings("rawtypes")
    private SetRequestRepresentation_Factory setRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider14;

    @SuppressWarnings("rawtypes")
    private SubcomponentCreatorRequestRepresentation_Factory subcomponentCreatorRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider15;

    @SuppressWarnings("rawtypes")
    private Provider unscopedDirectInstanceRequestRepresentationFactoryProvider;

    @SuppressWarnings("rawtypes")
    private DirectInstanceBindingRepresentation_Factory directInstanceBindingRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider16;

    @SuppressWarnings("rawtypes")
    private DerivedFromFrameworkInstanceRequestRepresentation_Factory derivedFromFrameworkInstanceRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider17;

    @SuppressWarnings("rawtypes")
    private ProducerNodeInstanceRequestRepresentation_Factory producerNodeInstanceRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider18;

    @SuppressWarnings("rawtypes")
    private SwitchingProviderInstanceSupplier_Factory switchingProviderInstanceSupplierProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider19;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider20;

    @SuppressWarnings("rawtypes")
    private StaticFactoryInstanceSupplier_Factory staticFactoryInstanceSupplierProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider21;

    @SuppressWarnings("rawtypes")
    private AnonymousProviderCreationExpression_Factory anonymousProviderCreationExpressionProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider22;

    @SuppressWarnings("rawtypes")
    private DelegatingFrameworkInstanceCreationExpression_Factory delegatingFrameworkInstanceCreationExpressionProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider23;

    @SuppressWarnings("rawtypes")
    private DependencyMethodProducerCreationExpression_Factory dependencyMethodProducerCreationExpressionProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider24;

    @SuppressWarnings("rawtypes")
    private DependencyMethodProviderCreationExpression_Factory dependencyMethodProviderCreationExpressionProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider25;

    @SuppressWarnings("rawtypes")
    private InjectionOrProvisionProviderCreationExpression_Factory injectionOrProvisionProviderCreationExpressionProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider26;

    @SuppressWarnings("rawtypes")
    private MapFactoryCreationExpression_Factory mapFactoryCreationExpressionProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider27;

    @SuppressWarnings("rawtypes")
    private MembersInjectorProviderCreationExpression_Factory membersInjectorProviderCreationExpressionProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider28;

    private Provider provideTopLevelImplementationProvider;

    @SuppressWarnings("rawtypes")
    private Provider optionalFactoriesProvider;

    @SuppressWarnings("rawtypes")
    private OptionalFactoryInstanceCreationExpression_Factory optionalFactoryInstanceCreationExpressionProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider29;

    @SuppressWarnings("rawtypes")
    private ProducerCreationExpression_Factory producerCreationExpressionProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider30;

    @SuppressWarnings("rawtypes")
    private SetFactoryCreationExpression_Factory setFactoryCreationExpressionProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider31;

    @SuppressWarnings("rawtypes")
    private Provider unscopedFrameworkInstanceCreationExpressionFactoryProvider;

    @SuppressWarnings("rawtypes")
    private ProviderInstanceSupplier_Factory providerInstanceSupplierProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider32;

    @SuppressWarnings("rawtypes")
    private ProviderInstanceRequestRepresentation_Factory providerInstanceRequestRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider33;

    @SuppressWarnings("rawtypes")
    private ProducerFromProviderCreationExpression_Factory producerFromProviderCreationExpressionProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider34;

    @SuppressWarnings("rawtypes")
    private FrameworkInstanceBindingRepresentation_Factory frameworkInstanceBindingRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private ProvisionBindingRepresentation_Factory provisionBindingRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider35;

    @SuppressWarnings("rawtypes")
    private ProductionBindingRepresentation_Factory productionBindingRepresentationProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider36;

    private Provider provideChildComponentImplementationFactoryProvider;

    @SuppressWarnings("rawtypes")
    private Provider componentCreatorImplementationFactoryProvider;

    private Provider componentNamesProvider;

    private CurrentImplementationSubcomponentImpl(InjectorImpl injectorImpl,
        TopLevelImplementationComponentImpl topLevelImplementationComponentImpl,
        BindingGraph bindingGraphParam, Optional parentImplementationParam,
        Optional parentRequestRepresentationsParam,
        Optional parentRequirementExpressionsParam) {
      this.injectorImpl = injectorImpl;
      this.topLevelImplementationComponentImpl = topLevelImplementationComponentImpl;

      initialize(bindingGraphParam, parentImplementationParam, parentRequestRepresentationsParam, parentRequirementExpressionsParam);

    }

    @SuppressWarnings("unchecked")
    private void initialize(final BindingGraph bindingGraphParam,
        final Optional parentImplementationParam,
        final Optional parentRequestRepresentationsParam,
        final Optional parentRequirementExpressionsParam) {
      this.parentImplementationProvider = InstanceFactory.create(parentImplementationParam);
      this.componentImplementationProvider = new DelegateFactory<>();
      this.parentRequestRepresentationsProvider = InstanceFactory.create(parentRequestRepresentationsParam);
      this.bindingGraphProvider = InstanceFactory.create(bindingGraphParam);
      this.parentRequirementExpressionsProvider = InstanceFactory.create(parentRequirementExpressionsParam);
      this.componentRequirementExpressionsProvider = DoubleCheck.provider(ComponentRequirementExpressions_Factory.create(parentRequirementExpressionsProvider, bindingGraphProvider, componentImplementationProvider));
      this.componentRequestRepresentationsProvider = new DelegateFactory<>();
      this.membersInjectionMethodsProvider = DoubleCheck.provider(MembersInjectionMethods_Factory.create(componentImplementationProvider, componentRequestRepresentationsProvider, bindingGraphProvider, injectorImpl.processingEnvProvider));
      this.membersInjectionRequestRepresentationProvider = MembersInjectionRequestRepresentation_Factory.create(membersInjectionMethodsProvider);
      this.factoryProvider = MembersInjectionRequestRepresentation_Factory_Impl.createFactoryProvider(membersInjectionRequestRepresentationProvider);
      this.membersInjectionBindingRepresentationProvider = MembersInjectionBindingRepresentation_Factory.create(factoryProvider);
      this.factoryProvider2 = MembersInjectionBindingRepresentation_Factory_Impl.createFactoryProvider(membersInjectionBindingRepresentationProvider);
      this.componentMethodRequestRepresentationProvider = ComponentMethodRequestRepresentation_Factory.create(componentImplementationProvider, injectorImpl.processingEnvProvider);
      this.factoryProvider3 = ComponentMethodRequestRepresentation_Factory_Impl.createFactoryProvider(componentMethodRequestRepresentationProvider);
      this.immediateFutureRequestRepresentationProvider = ImmediateFutureRequestRepresentation_Factory.create(injectorImpl.processingEnvProvider);
      this.factoryProvider4 = ImmediateFutureRequestRepresentation_Factory_Impl.createFactoryProvider(immediateFutureRequestRepresentationProvider);
      this.privateMethodRequestRepresentationProvider = PrivateMethodRequestRepresentation_Factory.create(componentImplementationProvider, injectorImpl.processingEnvProvider, injectorImpl.bindCompilerOptionsProvider);
      this.factoryProvider5 = PrivateMethodRequestRepresentation_Factory_Impl.createFactoryProvider(privateMethodRequestRepresentationProvider);
      this.simpleMethodRequestRepresentationProvider = SimpleMethodRequestRepresentation_Factory.create(membersInjectionMethodsProvider, injectorImpl.bindCompilerOptionsProvider, injectorImpl.processingEnvProvider, componentRequestRepresentationsProvider, componentRequirementExpressionsProvider, componentImplementationProvider);
      this.factoryProvider6 = SimpleMethodRequestRepresentation_Factory_Impl.createFactoryProvider(simpleMethodRequestRepresentationProvider);
      this.assistedFactoryRequestRepresentationProvider = AssistedFactoryRequestRepresentation_Factory.create(bindingGraphProvider, componentImplementationProvider, factoryProvider6);
      this.factoryProvider7 = AssistedFactoryRequestRepresentation_Factory_Impl.createFactoryProvider(assistedFactoryRequestRepresentationProvider);
      this.componentInstanceRequestRepresentationProvider = ComponentInstanceRequestRepresentation_Factory.create(componentImplementationProvider);
      this.factoryProvider8 = ComponentInstanceRequestRepresentation_Factory_Impl.createFactoryProvider(componentInstanceRequestRepresentationProvider);
      this.componentProvisionRequestRepresentationProvider = ComponentProvisionRequestRepresentation_Factory.create(bindingGraphProvider, componentImplementationProvider, componentRequirementExpressionsProvider, injectorImpl.bindCompilerOptionsProvider);
      this.factoryProvider9 = ComponentProvisionRequestRepresentation_Factory_Impl.createFactoryProvider(componentProvisionRequestRepresentationProvider);
      this.componentRequirementRequestRepresentationProvider = ComponentRequirementRequestRepresentation_Factory.create(componentRequirementExpressionsProvider);
      this.factoryProvider10 = ComponentRequirementRequestRepresentation_Factory_Impl.createFactoryProvider(componentRequirementRequestRepresentationProvider);
      this.delegateRequestRepresentationProvider = DelegateRequestRepresentation_Factory.create(componentRequestRepresentationsProvider, injectorImpl.bindsTypeCheckerProvider, injectorImpl.processingEnvProvider);
      this.factoryProvider11 = DelegateRequestRepresentation_Factory_Impl.createFactoryProvider(delegateRequestRepresentationProvider);
      this.mapRequestRepresentationProvider = MapRequestRepresentation_Factory.create(injectorImpl.processingEnvProvider, bindingGraphProvider, componentImplementationProvider, componentRequestRepresentationsProvider);
      this.factoryProvider12 = MapRequestRepresentation_Factory_Impl.createFactoryProvider(mapRequestRepresentationProvider);
      this.optionalRequestRepresentationProvider = OptionalRequestRepresentation_Factory.create(componentImplementationProvider, componentRequestRepresentationsProvider, injectorImpl.processingEnvProvider);
      this.factoryProvider13 = OptionalRequestRepresentation_Factory_Impl.createFactoryProvider(optionalRequestRepresentationProvider);
      this.setRequestRepresentationProvider = SetRequestRepresentation_Factory.create(bindingGraphProvider, componentImplementationProvider, componentRequestRepresentationsProvider, injectorImpl.processingEnvProvider);
      this.factoryProvider14 = SetRequestRepresentation_Factory_Impl.createFactoryProvider(setRequestRepresentationProvider);
      this.subcomponentCreatorRequestRepresentationProvider = SubcomponentCreatorRequestRepresentation_Factory.create(componentImplementationProvider);
      this.factoryProvider15 = SubcomponentCreatorRequestRepresentation_Factory_Impl.createFactoryProvider(subcomponentCreatorRequestRepresentationProvider);
      this.unscopedDirectInstanceRequestRepresentationFactoryProvider = UnscopedDirectInstanceRequestRepresentationFactory_Factory.create(factoryProvider7, factoryProvider8, factoryProvider9, factoryProvider10, factoryProvider11, factoryProvider12, factoryProvider13, factoryProvider14, factoryProvider6, factoryProvider15);
      this.directInstanceBindingRepresentationProvider = DirectInstanceBindingRepresentation_Factory.create(bindingGraphProvider, componentImplementationProvider, factoryProvider3, factoryProvider4, factoryProvider5, unscopedDirectInstanceRequestRepresentationFactoryProvider);
      this.factoryProvider16 = DirectInstanceBindingRepresentation_Factory_Impl.createFactoryProvider(directInstanceBindingRepresentationProvider);
      this.derivedFromFrameworkInstanceRequestRepresentationProvider = DerivedFromFrameworkInstanceRequestRepresentation_Factory.create(injectorImpl.processingEnvProvider, injectorImpl.bindsTypeCheckerProvider);
      this.factoryProvider17 = DerivedFromFrameworkInstanceRequestRepresentation_Factory_Impl.createFactoryProvider(derivedFromFrameworkInstanceRequestRepresentationProvider);
      this.producerNodeInstanceRequestRepresentationProvider = ProducerNodeInstanceRequestRepresentation_Factory.create(injectorImpl.processingEnvProvider, componentImplementationProvider);
      this.factoryProvider18 = ProducerNodeInstanceRequestRepresentation_Factory_Impl.createFactoryProvider(producerNodeInstanceRequestRepresentationProvider);
      this.switchingProviderInstanceSupplierProvider = SwitchingProviderInstanceSupplier_Factory.create(bindingGraphProvider, componentImplementationProvider, unscopedDirectInstanceRequestRepresentationFactoryProvider);
      this.factoryProvider19 = SwitchingProviderInstanceSupplier_Factory_Impl.createFactoryProvider(switchingProviderInstanceSupplierProvider);
      this.factoryProvider20 = new DelegateFactory<>();
      this.staticFactoryInstanceSupplierProvider = StaticFactoryInstanceSupplier_Factory.create(factoryProvider20);
      this.factoryProvider21 = StaticFactoryInstanceSupplier_Factory_Impl.createFactoryProvider(staticFactoryInstanceSupplierProvider);
      this.anonymousProviderCreationExpressionProvider = AnonymousProviderCreationExpression_Factory.create(componentRequestRepresentationsProvider, componentImplementationProvider);
      this.factoryProvider22 = AnonymousProviderCreationExpression_Factory_Impl.createFactoryProvider(anonymousProviderCreationExpressionProvider);
      this.delegatingFrameworkInstanceCreationExpressionProvider = DelegatingFrameworkInstanceCreationExpression_Factory.create(componentImplementationProvider, componentRequestRepresentationsProvider, injectorImpl.bindCompilerOptionsProvider);
      this.factoryProvider23 = DelegatingFrameworkInstanceCreationExpression_Factory_Impl.createFactoryProvider(delegatingFrameworkInstanceCreationExpressionProvider);
      this.dependencyMethodProducerCreationExpressionProvider = DependencyMethodProducerCreationExpression_Factory.create(componentImplementationProvider, componentRequirementExpressionsProvider, bindingGraphProvider);
      this.factoryProvider24 = DependencyMethodProducerCreationExpression_Factory_Impl.createFactoryProvider(dependencyMethodProducerCreationExpressionProvider);
      this.dependencyMethodProviderCreationExpressionProvider = DependencyMethodProviderCreationExpression_Factory.create(componentImplementationProvider, componentRequirementExpressionsProvider, injectorImpl.bindCompilerOptionsProvider, bindingGraphProvider);
      this.factoryProvider25 = DependencyMethodProviderCreationExpression_Factory_Impl.createFactoryProvider(dependencyMethodProviderCreationExpressionProvider);
      this.injectionOrProvisionProviderCreationExpressionProvider = InjectionOrProvisionProviderCreationExpression_Factory.create(componentImplementationProvider, componentRequestRepresentationsProvider, injectorImpl.processingEnvProvider);
      this.factoryProvider26 = InjectionOrProvisionProviderCreationExpression_Factory_Impl.createFactoryProvider(injectionOrProvisionProviderCreationExpressionProvider);
      this.mapFactoryCreationExpressionProvider = MapFactoryCreationExpression_Factory.create(injectorImpl.processingEnvProvider, componentImplementationProvider, componentRequestRepresentationsProvider, bindingGraphProvider);
      this.factoryProvider27 = MapFactoryCreationExpression_Factory_Impl.createFactoryProvider(mapFactoryCreationExpressionProvider);
      this.membersInjectorProviderCreationExpressionProvider = MembersInjectorProviderCreationExpression_Factory.create(componentImplementationProvider, componentRequestRepresentationsProvider);
      this.factoryProvider28 = MembersInjectorProviderCreationExpression_Factory_Impl.createFactoryProvider(membersInjectorProviderCreationExpressionProvider);
      this.provideTopLevelImplementationProvider = CurrentImplementationSubcomponent_ChildComponentImplementationFactoryModule_ProvideTopLevelImplementationFactory.create(componentImplementationProvider, topLevelImplementationComponentImpl.componentWrapperImplementationProvider, injectorImpl.bindCompilerOptionsProvider);
      this.optionalFactoriesProvider = OptionalFactories_Factory.create(topLevelImplementationComponentImpl.perGeneratedFileCacheProvider, provideTopLevelImplementationProvider);
      this.optionalFactoryInstanceCreationExpressionProvider = OptionalFactoryInstanceCreationExpression_Factory.create(optionalFactoriesProvider, componentImplementationProvider, componentRequestRepresentationsProvider);
      this.factoryProvider29 = OptionalFactoryInstanceCreationExpression_Factory_Impl.createFactoryProvider(optionalFactoryInstanceCreationExpressionProvider);
      this.producerCreationExpressionProvider = ProducerCreationExpression_Factory.create(componentImplementationProvider, componentRequestRepresentationsProvider);
      this.factoryProvider30 = ProducerCreationExpression_Factory_Impl.createFactoryProvider(producerCreationExpressionProvider);
      this.setFactoryCreationExpressionProvider = SetFactoryCreationExpression_Factory.create(componentImplementationProvider, componentRequestRepresentationsProvider, bindingGraphProvider);
      this.factoryProvider31 = SetFactoryCreationExpression_Factory_Impl.createFactoryProvider(setFactoryCreationExpressionProvider);
      this.unscopedFrameworkInstanceCreationExpressionFactoryProvider = UnscopedFrameworkInstanceCreationExpressionFactory_Factory.create(componentImplementationProvider, componentRequirementExpressionsProvider, factoryProvider22, factoryProvider23, factoryProvider24, factoryProvider25, factoryProvider26, factoryProvider27, factoryProvider28, factoryProvider29, factoryProvider30, factoryProvider31);
      this.providerInstanceSupplierProvider = ProviderInstanceSupplier_Factory.create(componentImplementationProvider, unscopedFrameworkInstanceCreationExpressionFactoryProvider, BindingRepresentations_Factory.create());
      this.factoryProvider32 = ProviderInstanceSupplier_Factory_Impl.createFactoryProvider(providerInstanceSupplierProvider);
      this.providerInstanceRequestRepresentationProvider = ProviderInstanceRequestRepresentation_Factory.create(factoryProvider19, factoryProvider21, factoryProvider32, componentImplementationProvider, injectorImpl.processingEnvProvider);
      this.factoryProvider33 = ProviderInstanceRequestRepresentation_Factory_Impl.createFactoryProvider(providerInstanceRequestRepresentationProvider);
      this.producerFromProviderCreationExpressionProvider = ProducerFromProviderCreationExpression_Factory.create();
      this.factoryProvider34 = ProducerFromProviderCreationExpression_Factory_Impl.createFactoryProvider(producerFromProviderCreationExpressionProvider);
      this.frameworkInstanceBindingRepresentationProvider = FrameworkInstanceBindingRepresentation_Factory.create(bindingGraphProvider, componentImplementationProvider, factoryProvider11, factoryProvider17, factoryProvider4, factoryProvider18, factoryProvider33, factoryProvider34);
      DelegateFactory.setDelegate(factoryProvider20, FrameworkInstanceBindingRepresentation_Factory_Impl.createFactoryProvider(frameworkInstanceBindingRepresentationProvider));
      this.provisionBindingRepresentationProvider = ProvisionBindingRepresentation_Factory.create(factoryProvider16, factoryProvider20, bindingGraphProvider, componentImplementationProvider);
      this.factoryProvider35 = ProvisionBindingRepresentation_Factory_Impl.createFactoryProvider(provisionBindingRepresentationProvider);
      this.productionBindingRepresentationProvider = ProductionBindingRepresentation_Factory.create(componentImplementationProvider, factoryProvider17, factoryProvider18, unscopedFrameworkInstanceCreationExpressionFactoryProvider, BindingRepresentations_Factory.create());
      this.factoryProvider36 = ProductionBindingRepresentation_Factory_Impl.createFactoryProvider(productionBindingRepresentationProvider);
      DelegateFactory.setDelegate(componentRequestRepresentationsProvider, DoubleCheck.provider(ComponentRequestRepresentations_Factory.create(parentRequestRepresentationsProvider, bindingGraphProvider, componentImplementationProvider, componentRequirementExpressionsProvider, factoryProvider2, factoryProvider35, factoryProvider36, injectorImpl.processingEnvProvider)));
      this.provideChildComponentImplementationFactoryProvider = CurrentImplementationSubcomponent_ChildComponentImplementationFactoryModule_ProvideChildComponentImplementationFactoryFactory.create(topLevelImplementationComponentImpl.currentImplementationSubcomponentBuilderProvider, componentImplementationProvider, componentRequestRepresentationsProvider, componentRequirementExpressionsProvider);
      this.componentCreatorImplementationFactoryProvider = ComponentCreatorImplementationFactory_Factory.create(injectorImpl.bindCompilerOptionsProvider, componentImplementationProvider);
      this.componentNamesProvider = ComponentNames_Factory.create(injectorImpl.bindCompilerOptionsProvider, topLevelImplementationComponentImpl.bindingGraphProvider, injectorImpl.keyFactoryProvider);
      DelegateFactory.setDelegate(componentImplementationProvider, DoubleCheck.provider(ComponentImplementation_Factory.create(parentImplementationProvider, provideChildComponentImplementationFactoryProvider, provideTopLevelImplementationProvider, componentRequestRepresentationsProvider, componentCreatorImplementationFactoryProvider, bindingGraphProvider, componentNamesProvider, injectorImpl.bindCompilerOptionsProvider, injectorImpl.messagerProvider, injectorImpl.processingEnvProvider)));
    }

    @Override
    public ComponentImplementation componentImplementation() {
      return componentImplementationProvider.get();
    }
  }

  private static final class TopLevelImplementationComponentImpl implements TopLevelImplementationComponent {
    private final InjectorImpl injectorImpl;

    private final TopLevelImplementationComponentImpl topLevelImplementationComponentImpl = this;

    private Provider currentImplementationSubcomponentBuilderProvider;

    @SuppressWarnings("rawtypes")
    private Provider perGeneratedFileCacheProvider;

    private Provider bindingGraphProvider;

    private Provider componentWrapperImplementationProvider;

    private TopLevelImplementationComponentImpl(InjectorImpl injectorImpl,
        BindingGraph bindingGraphParam) {
      this.injectorImpl = injectorImpl;

      initialize(bindingGraphParam);

    }

    @SuppressWarnings("unchecked")
    private void initialize(final BindingGraph bindingGraphParam) {
      this.currentImplementationSubcomponentBuilderProvider = new Provider() {
        @Override
        public CurrentImplementationSubcomponent.Builder get() {
          return new CurrentImplementationSubcomponentBuilder(injectorImpl, topLevelImplementationComponentImpl);
        }
      };
      this.perGeneratedFileCacheProvider = DoubleCheck.provider(OptionalFactories_PerGeneratedFileCache_Factory.create());
      this.bindingGraphProvider = InstanceFactory.create(bindingGraphParam);
      this.componentWrapperImplementationProvider = DoubleCheck.provider(ComponentWrapperImplementation_Factory.create(bindingGraphProvider));
    }

    @Override
    public CurrentImplementationSubcomponent.Builder currentImplementationSubcomponentBuilder() {
      return new CurrentImplementationSubcomponentBuilder(injectorImpl, topLevelImplementationComponentImpl);
    }
  }

  private static final class InjectorImpl implements DelegateComponentProcessor.Injector {
    private final XProcessingEnv processingEnv;

    private final ImmutableSet legacyExternalPlugins;

    private final ImmutableSet externalPlugins;

    private final InjectorImpl injectorImpl = this;

    private Provider processingEnvProvider;

    private Provider messagerProvider;

    private Provider kotlinMetadataFactoryProvider;

    private Provider kotlinMetadataUtilProvider;

    private Provider> processingOptionsProvider;

    private Provider processingEnvironmentCompilerOptionsProvider;

    private Provider bindCompilerOptionsProvider;

    private Provider daggerSuperficialValidationProvider;

    private Provider injectionAnnotationsProvider;

    @SuppressWarnings("rawtypes")
    private Provider membersInjectionValidatorProvider;

    @SuppressWarnings("rawtypes")
    private Provider dependencyRequestValidatorProvider;

    private Provider methodSignatureFormatterProvider;

    private Provider injectValidatorProvider;

    private Provider keyFactoryProvider;

    private Provider dependencyRequestFactoryProvider;

    @SuppressWarnings("rawtypes")
    private Provider injectionSiteFactoryProvider;

    private Provider bindingFactoryProvider;

    @SuppressWarnings("rawtypes")
    private Provider injectBindingRegistryImplProvider;

    @SuppressWarnings("rawtypes")
    private Provider superficialValidatorProvider;

    private Provider monitoringModulesProvider;

    @SuppressWarnings("rawtypes")
    private Provider providesMethodValidatorProvider;

    @SuppressWarnings("rawtypes")
    private Provider producesMethodValidatorProvider;

    private Provider bindsTypeCheckerProvider;

    @SuppressWarnings("rawtypes")
    private Provider bindsMethodValidatorProvider;

    @SuppressWarnings("rawtypes")
    private Provider multibindsMethodValidatorProvider;

    @SuppressWarnings("rawtypes")
    private Provider bindsOptionalOfMethodValidatorProvider;

    @SuppressWarnings("rawtypes")
    private Provider indexValidatorsProvider;

    private Provider anyBindingMethodValidatorProvider;

    private Provider factoryProvider;

    private Provider factoryProvider2;

    private Provider factoryProvider3;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider4;

    private Provider factoryProvider5;

    private Provider factoryProvider6;

    private Provider bindingDeclarationFormatterProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider7;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider8;

    private Provider bindingGraphFactoryProvider;

    private Provider dependencyRequestFormatterProvider;

    private Provider factoryProvider9;

    @SuppressWarnings("rawtypes")
    private CompositeBindingGraphPlugin_Factory compositeBindingGraphPluginProvider;

    @SuppressWarnings("rawtypes")
    private Provider factoryProvider10;

    @SuppressWarnings("rawtypes")
    private Provider dependencyCycleValidatorProvider;

    @SuppressWarnings("rawtypes")
    private Provider dependsOnProductionExecutorValidatorProvider;

    @SuppressWarnings("rawtypes")
    private Provider duplicateBindingsValidatorProvider;

    @SuppressWarnings("rawtypes")
    private Provider incompatiblyScopedBindingsValidatorProvider;

    @SuppressWarnings("rawtypes")
    private Provider injectBindingValidatorProvider;

    @SuppressWarnings("rawtypes")
    private Provider mapMultibindingValidatorProvider;

    @SuppressWarnings("rawtypes")
    private Provider missingBindingValidatorProvider;

    @SuppressWarnings("rawtypes")
    private Provider nullableBindingValidatorProvider;

    private Provider> providePluginsProvider;

    @SuppressWarnings("rawtypes")
    private Provider diagnosticReporterFactoryProvider;

    private Provider validationBindingGraphPluginsProvider;

    private Provider> legacyExternalPluginsProvider;

    private Provider> externalPluginsProvider;

    private Provider filerProvider;

    private Provider externalBindingGraphPluginsProvider;

    private Provider bindingGraphValidatorProvider;

    private Provider moduleValidatorProvider;

    private Provider componentCreatorValidatorProvider;

    private Provider componentValidatorProvider;

    private InjectorImpl(XProcessingEnv processingEnvParam,
        ImmutableSet externalPluginsParam,
        ImmutableSet legacyExternalPluginsParam) {
      this.processingEnv = processingEnvParam;
      this.legacyExternalPlugins = legacyExternalPluginsParam;
      this.externalPlugins = externalPluginsParam;
      initialize(processingEnvParam, externalPluginsParam, legacyExternalPluginsParam);

    }

    private XFiler xFiler() {
      return ProcessingEnvironmentModule_FilerFactory.filer(bindCompilerOptionsProvider.get(), processingEnv);
    }

    private FactoryGenerator factoryGenerator() {
      return FactoryGenerator_Factory.newInstance(xFiler(), bindCompilerOptionsProvider.get(), SourceFiles_Factory.newInstance(), processingEnv);
    }

    private SourceFileGenerator sourceFileGeneratorOfContributionBinding() {
      return DelegateComponentProcessor_SourceFileGeneratorsModule_FactoryGeneratorFactory.factoryGenerator(factoryGenerator(), bindCompilerOptionsProvider.get(), processingEnv);
    }

    private MembersInjectorGenerator membersInjectorGenerator() {
      return MembersInjectorGenerator_Factory.newInstance(xFiler(), SourceFiles_Factory.newInstance(), processingEnv);
    }

    private SourceFileGenerator sourceFileGeneratorOfMembersInjectionBinding(
        ) {
      return DelegateComponentProcessor_SourceFileGeneratorsModule_MembersInjectorGeneratorFactory.membersInjectorGenerator(membersInjectorGenerator(), bindCompilerOptionsProvider.get(), processingEnv);
    }

    private XMessager xMessager() {
      return ProcessingEnvironmentModule_MessagerFactory.messager(processingEnv);
    }

    private MapKeyValidator mapKeyValidator() {
      return MapKeyValidator_Factory.newInstance(processingEnv);
    }

    private AnnotationCreatorGenerator annotationCreatorGenerator() {
      return AnnotationCreatorGenerator_Factory.newInstance(xFiler(), processingEnv);
    }

    private UnwrappedMapKeyGenerator unwrappedMapKeyGenerator() {
      return UnwrappedMapKeyGenerator_Factory.newInstance(xFiler(), processingEnv);
    }

    private Object mapKeyProcessingStep() {
      return injectMapKeyProcessingStep(MapKeyProcessingStep_Factory.newInstance(xMessager(), mapKeyValidator(), annotationCreatorGenerator(), unwrappedMapKeyGenerator()));
    }

    private Object injectProcessingStep() {
      return injectInjectProcessingStep(InjectProcessingStep_Factory.newInstance((InjectBindingRegistry) injectBindingRegistryImplProvider.get()));
    }

    private Object assistedInjectProcessingStep() {
      return injectAssistedInjectProcessingStep(AssistedInjectProcessingStep_Factory.newInstance(xMessager(), injectValidatorProvider.get()));
    }

    private KotlinMetadataUtil kotlinMetadataUtil() {
      return KotlinMetadataUtil_Factory.newInstance(kotlinMetadataFactoryProvider.get());
    }

    private InjectionAnnotations injectionAnnotations() {
      return InjectionAnnotations_Factory.newInstance(processingEnv, kotlinMetadataUtil(), daggerSuperficialValidationProvider.get(), bindCompilerOptionsProvider.get());
    }

    private KeyFactory keyFactory() {
      return KeyFactory_Factory.newInstance(processingEnv, injectionAnnotations());
    }

    private DependencyRequestFactory dependencyRequestFactory() {
      return DependencyRequestFactory_Factory.newInstance(keyFactory(), injectionAnnotations());
    }

    private Object injectionSiteFactory() {
      return InjectionSiteFactory_Factory.newInstance(dependencyRequestFactory());
    }

    private BindingFactory bindingFactory() {
      return BindingFactory_Factory.newInstance(keyFactory(), dependencyRequestFactory(), injectionSiteFactory(), injectionAnnotations());
    }

    private MethodSignatureFormatter methodSignatureFormatter() {
      return MethodSignatureFormatter_Factory.newInstance(injectionAnnotations());
    }

    private Object assistedFactoryProcessingStep() {
      return injectAssistedFactoryProcessingStep(AssistedFactoryProcessingStep_Factory.newInstance(processingEnv, xMessager(), xFiler(), bindingFactory(), methodSignatureFormatter(), superficialValidatorProvider.get()));
    }

    private Object assistedProcessingStep() {
      return injectAssistedProcessingStep(AssistedProcessingStep_Factory.newInstance(injectionAnnotations(), xMessager()));
    }

    private Object monitoringModuleGenerator() {
      return MonitoringModuleGenerator_Factory.newInstance(xFiler(), processingEnv, monitoringModulesProvider.get());
    }

    private Object monitoringModuleProcessingStep() {
      return injectMonitoringModuleProcessingStep(MonitoringModuleProcessingStep_Factory.newInstance(xMessager(), monitoringModuleGenerator()));
    }

    private Object multibindingAnnotationsProcessingStep() {
      return injectMultibindingAnnotationsProcessingStep(MultibindingAnnotationsProcessingStep_Factory.newInstance(anyBindingMethodValidatorProvider.get(), xMessager()));
    }

    private BindsInstanceMethodValidator bindsInstanceMethodValidator() {
      return BindsInstanceMethodValidator_Factory.newInstance(injectionAnnotations(), daggerSuperficialValidationProvider.get());
    }

    private BindsInstanceParameterValidator bindsInstanceParameterValidator() {
      return BindsInstanceParameterValidator_Factory.newInstance(injectionAnnotations());
    }

    private Object bindsInstanceProcessingStep() {
      return injectBindsInstanceProcessingStep(BindsInstanceProcessingStep_Factory.newInstance(bindsInstanceMethodValidator(), bindsInstanceParameterValidator(), xMessager()));
    }

    private ProducerFactoryGenerator producerFactoryGenerator() {
      return ProducerFactoryGenerator_Factory.newInstance(xFiler(), processingEnv, bindCompilerOptionsProvider.get(), SourceFiles_Factory.newInstance());
    }

    private SourceFileGenerator sourceFileGeneratorOfProductionBinding() {
      return DelegateComponentProcessor_SourceFileGeneratorsModule_ProducerFactoryGeneratorFactory.producerFactoryGenerator(producerFactoryGenerator(), bindCompilerOptionsProvider.get(), processingEnv);
    }

    private ModuleProxies.ModuleConstructorProxyGenerator moduleConstructorProxyGenerator() {
      return ModuleProxies_ModuleConstructorProxyGenerator_Factory.newInstance(xFiler(), processingEnv);
    }

    private SourceFileGenerator moduleGeneratorSourceFileGeneratorOfXTypeElement() {
      return DelegateComponentProcessor_SourceFileGeneratorsModule_ModuleConstructorProxyGeneratorFactory.moduleConstructorProxyGenerator(moduleConstructorProxyGenerator(), bindCompilerOptionsProvider.get(), processingEnv);
    }

    private InaccessibleMapKeyProxyGenerator inaccessibleMapKeyProxyGenerator() {
      return InaccessibleMapKeyProxyGenerator_Factory.newInstance(processingEnv, xFiler());
    }

    private dagger.internal.codegen.binding.DelegateDeclaration.Factory delegateDeclarationFactory(
        ) {
      return DelegateDeclaration_Factory_Factory.newInstance(keyFactory(), dependencyRequestFactory());
    }

    private Object moduleProcessingStep() {
      return injectModuleProcessingStep(ModuleProcessingStep_Factory.newInstance(xMessager(), moduleValidatorProvider.get(), bindingFactory(), sourceFileGeneratorOfContributionBinding(), sourceFileGeneratorOfProductionBinding(), moduleGeneratorSourceFileGeneratorOfXTypeElement(), inaccessibleMapKeyProxyGenerator(), delegateDeclarationFactory()));
    }

    private Object componentHierarchyValidator() {
      return ComponentHierarchyValidator_Factory.newInstance(bindCompilerOptionsProvider.get(), injectionAnnotations());
    }

    private ComponentDescriptorValidator componentDescriptorValidator() {
      return ComponentDescriptorValidator_Factory.newInstance(bindCompilerOptionsProvider.get(), methodSignatureFormatter(), componentHierarchyValidator(), injectionAnnotations(), daggerSuperficialValidationProvider.get());
    }

    private Object componentGenerator() {
      return ComponentGenerator_Factory.newInstance(xFiler(), processingEnv, new TopLevelImplementationComponentFactory(injectorImpl));
    }

    private Object componentProcessingStep() {
      return injectComponentProcessingStep(ComponentProcessingStep_Factory.newInstance(xMessager(), componentValidatorProvider.get(), componentCreatorValidatorProvider.get(), componentDescriptorValidator(), factoryProvider6.get(), bindingGraphFactoryProvider.get(), (SourceFileGenerator) componentGenerator(), bindingGraphValidatorProvider.get()));
    }

    private Object componentHjarGenerator() {
      return ComponentHjarGenerator_Factory.newInstance(xFiler(), processingEnv, bindCompilerOptionsProvider.get());
    }

    private SourceFileGenerator sourceFileGeneratorOfComponentDescriptor() {
      return ComponentGeneratorModule_ComponentHjarGeneratorFactory.componentHjarGenerator(processingEnv, componentHjarGenerator());
    }

    private Object componentHjarProcessingStep() {
      return injectComponentHjarProcessingStep(ComponentHjarProcessingStep_Factory.newInstance(xMessager(), componentValidatorProvider.get(), componentCreatorValidatorProvider.get(), factoryProvider6.get(), sourceFileGeneratorOfComponentDescriptor()));
    }

    private Object bindingMethodProcessingStep() {
      return injectBindingMethodProcessingStep(BindingMethodProcessingStep_Factory.newInstance(xMessager(), anyBindingMethodValidatorProvider.get()));
    }

    private ImmutableList immutableListOfXProcessingStep() {
      return ProcessingStepsModule_ProcessingStepsFactory.processingSteps(mapKeyProcessingStep(), injectProcessingStep(), assistedInjectProcessingStep(), assistedFactoryProcessingStep(), assistedProcessingStep(), monitoringModuleProcessingStep(), multibindingAnnotationsProcessingStep(), bindsInstanceProcessingStep(), moduleProcessingStep(), componentProcessingStep(), componentHjarProcessingStep(), bindingMethodProcessingStep(), bindCompilerOptionsProvider.get());
    }

    private DependencyRequestFormatter dependencyRequestFormatter() {
      return DependencyRequestFormatter_Factory.newInstance(processingEnv);
    }

    private Object dependencyCycleValidator() {
      return DependencyCycleValidator_Factory.newInstance(dependencyRequestFormatter());
    }

    private Object dependsOnProductionExecutorValidator() {
      return DependsOnProductionExecutorValidator_Factory.newInstance(bindCompilerOptionsProvider.get(), keyFactory());
    }

    private BindingDeclarationFormatter bindingDeclarationFormatter() {
      return BindingDeclarationFormatter_Factory.newInstance(methodSignatureFormatter());
    }

    private Object duplicateBindingsValidator() {
      return DuplicateBindingsValidator_Factory.newInstance(bindingDeclarationFormatter(), bindCompilerOptionsProvider.get());
    }

    private dagger.internal.codegen.validation.DiagnosticMessageGenerator.Factory diagnosticMessageGeneratorFactory(
        ) {
      return DiagnosticMessageGenerator_Factory_Factory.newInstance(dependencyRequestFormatter(), ElementFormatter_Factory.newInstance());
    }

    private Object incompatiblyScopedBindingsValidator() {
      return IncompatiblyScopedBindingsValidator_Factory.newInstance(methodSignatureFormatter(), bindCompilerOptionsProvider.get(), diagnosticMessageGeneratorFactory());
    }

    private Object injectBindingValidator() {
      return InjectBindingValidator_Factory.newInstance(injectValidatorProvider.get());
    }

    private Object mapMultibindingValidator() {
      return MapMultibindingValidator_Factory.newInstance(bindingDeclarationFormatter(), keyFactory());
    }

    private Object missingBindingValidator() {
      return MissingBindingValidator_Factory.newInstance((InjectBindingRegistry) injectBindingRegistryImplProvider.get(), dependencyRequestFormatter(), diagnosticMessageGeneratorFactory());
    }

    private Object nullableBindingValidator() {
      return NullableBindingValidator_Factory.newInstance(bindCompilerOptionsProvider.get());
    }

    private ImmutableSet validationImmutableSetOfValidationBindingGraphPlugin(
        ) {
      return BindingGraphValidationModule_ProvidePluginsFactory.providePlugins(factoryProvider10.get(), bindCompilerOptionsProvider.get(), dependencyCycleValidator(), dependsOnProductionExecutorValidator(), duplicateBindingsValidator(), incompatiblyScopedBindingsValidator(), injectBindingValidator(), mapMultibindingValidator(), missingBindingValidator(), nullableBindingValidator(), ProvisionDependencyOnProducerBindingValidator_Factory.newInstance(), SetMultibindingValidator_Factory.newInstance(), SubcomponentFactoryMethodValidator_Factory.newInstance());
    }

    private Object diagnosticReporterFactory() {
      return DiagnosticReporterFactory_Factory.newInstance(xMessager(), diagnosticMessageGeneratorFactory());
    }

    private Map processingOptionsMapOfStringAndString() {
      return ProcessingEnvironmentModule_ProcessingOptionsFactory.processingOptions(processingEnv);
    }

    private ValidationBindingGraphPlugins validationBindingGraphPlugins() {
      return ValidationBindingGraphPlugins_Factory.newInstance(validationImmutableSetOfValidationBindingGraphPlugin(), diagnosticReporterFactory(), processingEnv, bindCompilerOptionsProvider.get(), processingOptionsMapOfStringAndString());
    }

    private ExternalBindingGraphPlugins externalBindingGraphPlugins() {
      return ExternalBindingGraphPlugins_Factory.newInstance(legacyExternalPlugins, externalPlugins, diagnosticReporterFactory(), xFiler(), processingEnv, processingOptionsMapOfStringAndString());
    }

    private Set setOfClearableCache() {
      return ImmutableSet.of(anyBindingMethodValidatorProvider.get(), injectValidatorProvider.get(), factoryProvider5.get(), factoryProvider6.get(), monitoringModulesProvider.get(), bindingGraphFactoryProvider.get(), componentValidatorProvider.get(), componentCreatorValidatorProvider.get(), kotlinMetadataFactoryProvider.get(), (ClearableCache) superficialValidatorProvider.get());
    }

    @SuppressWarnings("unchecked")
    private void initialize(final XProcessingEnv processingEnvParam,
        final ImmutableSet externalPluginsParam,
        final ImmutableSet legacyExternalPluginsParam) {
      this.processingEnvProvider = InstanceFactory.create(processingEnvParam);
      this.messagerProvider = ProcessingEnvironmentModule_MessagerFactory.create(processingEnvProvider);
      this.kotlinMetadataFactoryProvider = DoubleCheck.provider(KotlinMetadataFactory_Factory.create());
      this.kotlinMetadataUtilProvider = KotlinMetadataUtil_Factory.create(kotlinMetadataFactoryProvider);
      this.processingOptionsProvider = ProcessingEnvironmentModule_ProcessingOptionsFactory.create(processingEnvProvider);
      this.processingEnvironmentCompilerOptionsProvider = ProcessingEnvironmentCompilerOptions_Factory.create(processingEnvProvider, messagerProvider, processingOptionsProvider);
      this.bindCompilerOptionsProvider = SingleCheck.provider((Provider) processingEnvironmentCompilerOptionsProvider);
      this.daggerSuperficialValidationProvider = SingleCheck.provider(DaggerSuperficialValidation_Factory.create(processingEnvProvider, bindCompilerOptionsProvider));
      this.injectionAnnotationsProvider = InjectionAnnotations_Factory.create(processingEnvProvider, kotlinMetadataUtilProvider, daggerSuperficialValidationProvider, bindCompilerOptionsProvider);
      this.membersInjectionValidatorProvider = MembersInjectionValidator_Factory.create(injectionAnnotationsProvider);
      this.dependencyRequestValidatorProvider = DependencyRequestValidator_Factory.create(processingEnvProvider, membersInjectionValidatorProvider, injectionAnnotationsProvider, kotlinMetadataUtilProvider);
      this.methodSignatureFormatterProvider = MethodSignatureFormatter_Factory.create(injectionAnnotationsProvider);
      this.injectValidatorProvider = DoubleCheck.provider(InjectValidator_Factory.create(processingEnvProvider, dependencyRequestValidatorProvider, bindCompilerOptionsProvider, injectionAnnotationsProvider, daggerSuperficialValidationProvider, methodSignatureFormatterProvider));
      this.keyFactoryProvider = KeyFactory_Factory.create(processingEnvProvider, injectionAnnotationsProvider);
      this.dependencyRequestFactoryProvider = DependencyRequestFactory_Factory.create(keyFactoryProvider, injectionAnnotationsProvider);
      this.injectionSiteFactoryProvider = InjectionSiteFactory_Factory.create(dependencyRequestFactoryProvider);
      this.bindingFactoryProvider = BindingFactory_Factory.create(keyFactoryProvider, dependencyRequestFactoryProvider, injectionSiteFactoryProvider, injectionAnnotationsProvider);
      this.injectBindingRegistryImplProvider = DoubleCheck.provider(InjectBindingRegistryImpl_Factory.create(processingEnvProvider, messagerProvider, injectValidatorProvider, keyFactoryProvider, bindingFactoryProvider, bindCompilerOptionsProvider));
      this.superficialValidatorProvider = DoubleCheck.provider(SuperficialValidator_Factory.create(daggerSuperficialValidationProvider));
      this.monitoringModulesProvider = DoubleCheck.provider(MonitoringModules_Factory.create());
      this.providesMethodValidatorProvider = ProvidesMethodValidator_Factory.create(processingEnvProvider, dependencyRequestValidatorProvider, injectionAnnotationsProvider);
      this.producesMethodValidatorProvider = ProducesMethodValidator_Factory.create(processingEnvProvider, dependencyRequestValidatorProvider, injectionAnnotationsProvider);
      this.bindsTypeCheckerProvider = BindsTypeChecker_Factory.create(processingEnvProvider);
      this.bindsMethodValidatorProvider = BindsMethodValidator_Factory.create(bindsTypeCheckerProvider, daggerSuperficialValidationProvider, processingEnvProvider, dependencyRequestValidatorProvider, injectionAnnotationsProvider);
      this.multibindsMethodValidatorProvider = MultibindsMethodValidator_Factory.create(processingEnvProvider, dependencyRequestValidatorProvider, injectionAnnotationsProvider);
      this.bindsOptionalOfMethodValidatorProvider = BindsOptionalOfMethodValidator_Factory.create(processingEnvProvider, dependencyRequestValidatorProvider, injectionAnnotationsProvider);
      this.indexValidatorsProvider = BindingMethodValidatorsModule_IndexValidatorsFactory.create(providesMethodValidatorProvider, producesMethodValidatorProvider, bindsMethodValidatorProvider, multibindsMethodValidatorProvider, bindsOptionalOfMethodValidatorProvider);
      this.anyBindingMethodValidatorProvider = DoubleCheck.provider(AnyBindingMethodValidator_Factory.create(indexValidatorsProvider));
      this.factoryProvider = MultibindingDeclaration_Factory_Factory.create(keyFactoryProvider);
      this.factoryProvider2 = DelegateDeclaration_Factory_Factory.create(keyFactoryProvider, dependencyRequestFactoryProvider);
      this.factoryProvider3 = SubcomponentDeclaration_Factory_Factory.create(keyFactoryProvider, daggerSuperficialValidationProvider);
      this.factoryProvider4 = OptionalBindingDeclaration_Factory_Factory.create(keyFactoryProvider);
      this.factoryProvider5 = DoubleCheck.provider(ModuleDescriptor_Factory_Factory.create(processingEnvProvider, bindingFactoryProvider, factoryProvider, factoryProvider2, factoryProvider3, factoryProvider4, daggerSuperficialValidationProvider));
      this.factoryProvider6 = DoubleCheck.provider(ComponentDescriptor_Factory_Factory.create(processingEnvProvider, bindingFactoryProvider, dependencyRequestFactoryProvider, factoryProvider5, injectionAnnotationsProvider, daggerSuperficialValidationProvider));
      this.bindingDeclarationFormatterProvider = BindingDeclarationFormatter_Factory.create(methodSignatureFormatterProvider);
      this.factoryProvider7 = BindingNode_Factory_Factory.create(bindingDeclarationFormatterProvider);
      this.factoryProvider8 = ComponentDeclarations_Factory_Factory.create(processingEnvProvider, factoryProvider5);
      this.bindingGraphFactoryProvider = DoubleCheck.provider(BindingGraphFactory_Factory.create(injectBindingRegistryImplProvider, keyFactoryProvider, bindingFactoryProvider, factoryProvider7, factoryProvider8, BindingGraphConverter_Factory.create(), bindCompilerOptionsProvider));
      this.dependencyRequestFormatterProvider = DependencyRequestFormatter_Factory.create(processingEnvProvider);
      this.factoryProvider9 = DiagnosticMessageGenerator_Factory_Factory.create(dependencyRequestFormatterProvider, ElementFormatter_Factory.create());
      this.compositeBindingGraphPluginProvider = CompositeBindingGraphPlugin_Factory.create(factoryProvider9);
      this.factoryProvider10 = CompositeBindingGraphPlugin_Factory_Impl.createFactoryProvider(compositeBindingGraphPluginProvider);
      this.dependencyCycleValidatorProvider = DependencyCycleValidator_Factory.create(dependencyRequestFormatterProvider);
      this.dependsOnProductionExecutorValidatorProvider = DependsOnProductionExecutorValidator_Factory.create(bindCompilerOptionsProvider, keyFactoryProvider);
      this.duplicateBindingsValidatorProvider = DuplicateBindingsValidator_Factory.create(bindingDeclarationFormatterProvider, bindCompilerOptionsProvider);
      this.incompatiblyScopedBindingsValidatorProvider = IncompatiblyScopedBindingsValidator_Factory.create(methodSignatureFormatterProvider, bindCompilerOptionsProvider, factoryProvider9);
      this.injectBindingValidatorProvider = InjectBindingValidator_Factory.create(injectValidatorProvider);
      this.mapMultibindingValidatorProvider = MapMultibindingValidator_Factory.create(bindingDeclarationFormatterProvider, keyFactoryProvider);
      this.missingBindingValidatorProvider = MissingBindingValidator_Factory.create(injectBindingRegistryImplProvider, dependencyRequestFormatterProvider, factoryProvider9);
      this.nullableBindingValidatorProvider = NullableBindingValidator_Factory.create(bindCompilerOptionsProvider);
      this.providePluginsProvider = BindingGraphValidationModule_ProvidePluginsFactory.create(factoryProvider10, bindCompilerOptionsProvider, dependencyCycleValidatorProvider, dependsOnProductionExecutorValidatorProvider, duplicateBindingsValidatorProvider, incompatiblyScopedBindingsValidatorProvider, injectBindingValidatorProvider, mapMultibindingValidatorProvider, missingBindingValidatorProvider, nullableBindingValidatorProvider, ProvisionDependencyOnProducerBindingValidator_Factory.create(), SetMultibindingValidator_Factory.create(), SubcomponentFactoryMethodValidator_Factory.create());
      this.diagnosticReporterFactoryProvider = DiagnosticReporterFactory_Factory.create(messagerProvider, factoryProvider9);
      this.validationBindingGraphPluginsProvider = ValidationBindingGraphPlugins_Factory.create(providePluginsProvider, diagnosticReporterFactoryProvider, processingEnvProvider, bindCompilerOptionsProvider, processingOptionsProvider);
      this.legacyExternalPluginsProvider = InstanceFactory.create(legacyExternalPluginsParam);
      this.externalPluginsProvider = InstanceFactory.create(externalPluginsParam);
      this.filerProvider = ProcessingEnvironmentModule_FilerFactory.create(bindCompilerOptionsProvider, processingEnvProvider);
      this.externalBindingGraphPluginsProvider = ExternalBindingGraphPlugins_Factory.create(legacyExternalPluginsProvider, externalPluginsProvider, diagnosticReporterFactoryProvider, filerProvider, processingEnvProvider, processingOptionsProvider);
      this.bindingGraphValidatorProvider = DoubleCheck.provider(BindingGraphValidator_Factory.create(validationBindingGraphPluginsProvider, externalBindingGraphPluginsProvider, bindCompilerOptionsProvider));
      this.moduleValidatorProvider = DoubleCheck.provider(ModuleValidator_Factory.create(anyBindingMethodValidatorProvider, methodSignatureFormatterProvider, factoryProvider6, bindingGraphFactoryProvider, bindingGraphValidatorProvider, injectionAnnotationsProvider, daggerSuperficialValidationProvider, processingEnvProvider));
      this.componentCreatorValidatorProvider = DoubleCheck.provider(ComponentCreatorValidator_Factory.create(methodSignatureFormatterProvider, kotlinMetadataUtilProvider));
      this.componentValidatorProvider = DoubleCheck.provider(ComponentValidator_Factory.create(moduleValidatorProvider, componentCreatorValidatorProvider, dependencyRequestValidatorProvider, membersInjectionValidatorProvider, methodSignatureFormatterProvider, dependencyRequestFactoryProvider, daggerSuperficialValidationProvider, kotlinMetadataUtilProvider));
    }

    @Override
    public void inject(DelegateComponentProcessor processor) {
      injectDelegateComponentProcessor(processor);
    }

    @CanIgnoreReturnValue
    private Object injectMapKeyProcessingStep(Object instance) {
      TypeCheckingProcessingStep_MembersInjector.injectMessager(instance, xMessager());
      TypeCheckingProcessingStep_MembersInjector.injectCompilerOptions(instance, bindCompilerOptionsProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectSuperficialValidator(instance, superficialValidatorProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectMonitoringModules(instance, monitoringModulesProvider.get());
      return instance;
    }

    @CanIgnoreReturnValue
    private Object injectInjectProcessingStep(Object instance) {
      TypeCheckingProcessingStep_MembersInjector.injectMessager(instance, xMessager());
      TypeCheckingProcessingStep_MembersInjector.injectCompilerOptions(instance, bindCompilerOptionsProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectSuperficialValidator(instance, superficialValidatorProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectMonitoringModules(instance, monitoringModulesProvider.get());
      return instance;
    }

    @CanIgnoreReturnValue
    private Object injectAssistedInjectProcessingStep(Object instance) {
      TypeCheckingProcessingStep_MembersInjector.injectMessager(instance, xMessager());
      TypeCheckingProcessingStep_MembersInjector.injectCompilerOptions(instance, bindCompilerOptionsProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectSuperficialValidator(instance, superficialValidatorProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectMonitoringModules(instance, monitoringModulesProvider.get());
      return instance;
    }

    @CanIgnoreReturnValue
    private Object injectAssistedFactoryProcessingStep(Object instance) {
      TypeCheckingProcessingStep_MembersInjector.injectMessager(instance, xMessager());
      TypeCheckingProcessingStep_MembersInjector.injectCompilerOptions(instance, bindCompilerOptionsProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectSuperficialValidator(instance, superficialValidatorProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectMonitoringModules(instance, monitoringModulesProvider.get());
      return instance;
    }

    @CanIgnoreReturnValue
    private Object injectAssistedProcessingStep(Object instance) {
      TypeCheckingProcessingStep_MembersInjector.injectMessager(instance, xMessager());
      TypeCheckingProcessingStep_MembersInjector.injectCompilerOptions(instance, bindCompilerOptionsProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectSuperficialValidator(instance, superficialValidatorProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectMonitoringModules(instance, monitoringModulesProvider.get());
      return instance;
    }

    @CanIgnoreReturnValue
    private Object injectMonitoringModuleProcessingStep(Object instance) {
      TypeCheckingProcessingStep_MembersInjector.injectMessager(instance, xMessager());
      TypeCheckingProcessingStep_MembersInjector.injectCompilerOptions(instance, bindCompilerOptionsProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectSuperficialValidator(instance, superficialValidatorProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectMonitoringModules(instance, monitoringModulesProvider.get());
      return instance;
    }

    @CanIgnoreReturnValue
    private Object injectMultibindingAnnotationsProcessingStep(Object instance) {
      TypeCheckingProcessingStep_MembersInjector.injectMessager(instance, xMessager());
      TypeCheckingProcessingStep_MembersInjector.injectCompilerOptions(instance, bindCompilerOptionsProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectSuperficialValidator(instance, superficialValidatorProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectMonitoringModules(instance, monitoringModulesProvider.get());
      return instance;
    }

    @CanIgnoreReturnValue
    private Object injectBindsInstanceProcessingStep(Object instance) {
      TypeCheckingProcessingStep_MembersInjector.injectMessager(instance, xMessager());
      TypeCheckingProcessingStep_MembersInjector.injectCompilerOptions(instance, bindCompilerOptionsProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectSuperficialValidator(instance, superficialValidatorProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectMonitoringModules(instance, monitoringModulesProvider.get());
      return instance;
    }

    @CanIgnoreReturnValue
    private Object injectModuleProcessingStep(Object instance) {
      TypeCheckingProcessingStep_MembersInjector.injectMessager(instance, xMessager());
      TypeCheckingProcessingStep_MembersInjector.injectCompilerOptions(instance, bindCompilerOptionsProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectSuperficialValidator(instance, superficialValidatorProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectMonitoringModules(instance, monitoringModulesProvider.get());
      return instance;
    }

    @CanIgnoreReturnValue
    private Object injectComponentProcessingStep(Object instance) {
      TypeCheckingProcessingStep_MembersInjector.injectMessager(instance, xMessager());
      TypeCheckingProcessingStep_MembersInjector.injectCompilerOptions(instance, bindCompilerOptionsProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectSuperficialValidator(instance, superficialValidatorProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectMonitoringModules(instance, monitoringModulesProvider.get());
      return instance;
    }

    @CanIgnoreReturnValue
    private Object injectComponentHjarProcessingStep(Object instance) {
      TypeCheckingProcessingStep_MembersInjector.injectMessager(instance, xMessager());
      TypeCheckingProcessingStep_MembersInjector.injectCompilerOptions(instance, bindCompilerOptionsProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectSuperficialValidator(instance, superficialValidatorProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectMonitoringModules(instance, monitoringModulesProvider.get());
      return instance;
    }

    @CanIgnoreReturnValue
    private Object injectBindingMethodProcessingStep(Object instance) {
      TypeCheckingProcessingStep_MembersInjector.injectMessager(instance, xMessager());
      TypeCheckingProcessingStep_MembersInjector.injectCompilerOptions(instance, bindCompilerOptionsProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectSuperficialValidator(instance, superficialValidatorProvider.get());
      TypeCheckingProcessingStep_MembersInjector.injectMonitoringModules(instance, monitoringModulesProvider.get());
      return instance;
    }

    @CanIgnoreReturnValue
    private DelegateComponentProcessor injectDelegateComponentProcessor(
        DelegateComponentProcessor instance) {
      DelegateComponentProcessor_MembersInjector.injectInjectBindingRegistry(instance, (InjectBindingRegistry) injectBindingRegistryImplProvider.get());
      DelegateComponentProcessor_MembersInjector.injectFactoryGenerator(instance, sourceFileGeneratorOfContributionBinding());
      DelegateComponentProcessor_MembersInjector.injectMembersInjectorGenerator(instance, sourceFileGeneratorOfMembersInjectionBinding());
      DelegateComponentProcessor_MembersInjector.injectProcessingSteps(instance, immutableListOfXProcessingStep());
      DelegateComponentProcessor_MembersInjector.injectValidationBindingGraphPlugins(instance, validationBindingGraphPlugins());
      DelegateComponentProcessor_MembersInjector.injectExternalBindingGraphPlugins(instance, externalBindingGraphPlugins());
      DelegateComponentProcessor_MembersInjector.injectClearableCaches(instance, setOfClearableCache());
      return instance;
    }
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy