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

dagger.internal.codegen.binding.AutoValue_ProvisionBinding Maven / Gradle / Ivy

There is a newer version: 2.45-kim-rc1
Show newest version
package dagger.internal.codegen.binding;

import androidx.room.compiler.processing.XElement;
import androidx.room.compiler.processing.XType;
import androidx.room.compiler.processing.XTypeElement;
import com.google.common.base.Equivalence;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.ImmutableSortedSet;
import dagger.internal.codegen.base.ContributionType;
import dagger.spi.model.BindingKind;
import dagger.spi.model.DependencyRequest;
import dagger.spi.model.Key;
import dagger.spi.model.Scope;
import java.lang.Override;
import java.util.Optional;
import javax.annotation.Generated;
import javax.lang.model.element.AnnotationMirror;

@Generated("com.google.auto.value.extension.memoized.processor.MemoizeExtension")
final class AutoValue_ProvisionBinding extends $AutoValue_ProvisionBinding {
  private volatile ImmutableSet explicitDependencies;

  private volatile ImmutableSet membersInjectionDependencies;

  private volatile boolean requiresModuleInstance;

  private volatile boolean requiresModuleInstance$Memoized;

  private volatile int hashCode;

  private volatile boolean hashCode$Memoized;

  AutoValue_ProvisionBinding(ContributionType contributionType$, Key key$,
      Optional bindingElement$, Optional contributingModule$,
      BindingKind kind$, Optional nullableType$,
      Optional> wrappedMapKeyAnnotation$,
      ImmutableSet provisionDependencies$,
      ImmutableSortedSet injectionSites$,
      Optional unresolved$, Optional scope$) {
    super(contributionType$, key$, bindingElement$, contributingModule$, kind$, nullableType$, wrappedMapKeyAnnotation$, provisionDependencies$, injectionSites$, unresolved$, scope$);
  }

  @Override
  public ImmutableSet explicitDependencies() {
    if (explicitDependencies == null) {
      synchronized (this) {
        if (explicitDependencies == null) {
          explicitDependencies = super.explicitDependencies();
          if (explicitDependencies == null) {
            throw new NullPointerException("explicitDependencies() cannot return null");
          }
        }
      }
    }
    return explicitDependencies;
  }

  @Override
  ImmutableSet membersInjectionDependencies() {
    if (membersInjectionDependencies == null) {
      synchronized (this) {
        if (membersInjectionDependencies == null) {
          membersInjectionDependencies = super.membersInjectionDependencies();
          if (membersInjectionDependencies == null) {
            throw new NullPointerException("membersInjectionDependencies() cannot return null");
          }
        }
      }
    }
    return membersInjectionDependencies;
  }

  @Override
  public boolean requiresModuleInstance() {
    if (!requiresModuleInstance$Memoized) {
      synchronized (this) {
        if (!requiresModuleInstance$Memoized) {
          requiresModuleInstance = super.requiresModuleInstance();
          requiresModuleInstance$Memoized = true;
        }
      }
    }
    return requiresModuleInstance;
  }

  @Override
  public int hashCode() {
    if (!hashCode$Memoized) {
      synchronized (this) {
        if (!hashCode$Memoized) {
          hashCode = super.hashCode();
          hashCode$Memoized = true;
        }
      }
    }
    return hashCode;
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy