com.google.common.collect.ImmutableCollection#Builder ( )源码实例Demo

下面列出了com.google.common.collect.ImmutableCollection#Builder ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: buck   文件: OcamlLibraryDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    AbstractOcamlLibraryDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  for (OcamlPlatform platform :
      toolchainProvider
          .getByName(
              OcamlToolchain.DEFAULT_NAME,
              buildTarget.getTargetConfiguration(),
              OcamlToolchain.class)
          .getOcamlPlatforms()
          .getValues()) {
    targetGraphOnlyDepsBuilder.addAll(
        OcamlUtil.getParseTimeDeps(buildTarget.getTargetConfiguration(), platform));
  }
}
 
源代码2 项目: buck   文件: HaskellBinaryDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    AbstractHaskellBinaryDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  HaskellDescriptionUtils.getParseTimeDeps(
      buildTarget.getTargetConfiguration(),
      ImmutableList.of(getPlatform(buildTarget, constructorArg)),
      targetGraphOnlyDepsBuilder);

  constructorArg
      .getDepsQuery()
      .ifPresent(
          depsQuery ->
              QueryUtils.extractParseTimeTargets(buildTarget, cellRoots, depsQuery)
                  .forEach(targetGraphOnlyDepsBuilder::add));
}
 
源代码3 项目: buck   文件: GoTestDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    AbstractGoTestDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  // Add the C/C++ platform parse time deps.
  GoPlatform platform =
      GoDescriptors.getPlatformForRule(
          getGoToolchain(buildTarget.getTargetConfiguration()),
          this.goBuckConfig,
          buildTarget,
          constructorArg);
  targetGraphOnlyDepsBuilder.addAll(
      CxxPlatforms.getParseTimeDeps(
          buildTarget.getTargetConfiguration(), platform.getCxxPlatform()));
}
 
源代码4 项目: buck   文件: CxxBinaryDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    AbstractCxxBinaryDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  extraDepsBuilder.addAll(
      CxxPlatforms.findDepsForTargetFromConstructorArgs(
          getCxxPlatformsProvider(buildTarget.getTargetConfiguration()),
          buildTarget,
          constructorArg.getDefaultPlatform()));
  constructorArg
      .getDepsQuery()
      .ifPresent(
          depsQuery ->
              QueryUtils.extractParseTimeTargets(buildTarget, cellRoots, depsQuery)
                  .forEach(targetGraphOnlyDepsBuilder::add));
}
 
源代码5 项目: buck   文件: AndroidLibraryDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    AbstractAndroidLibraryDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  compilerFactory
      .getCompiler(
          constructorArg.getLanguage().orElse(JvmLanguage.JAVA),
          javacFactory,
          buildTarget.getTargetConfiguration())
      .addTargetDeps(
          buildTarget.getTargetConfiguration(), extraDepsBuilder, targetGraphOnlyDepsBuilder);
  javacFactory.addParseTimeDeps(
      targetGraphOnlyDepsBuilder, constructorArg, buildTarget.getTargetConfiguration());

  unresolvedInferPlatform
      .apply(buildTarget.getTargetConfiguration())
      .ifPresent(
          p ->
              UnresolvedInferPlatform.addParseTimeDepsToInferFlavored(
                  targetGraphOnlyDepsBuilder, buildTarget, p));
}
 
源代码6 项目: buck   文件: CxxPythonExtensionDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    AbstractCxxPythonExtensionDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  // Get any parse time deps from the C/C++ platforms.
  getCxxPlatforms(buildTarget.getTargetConfiguration())
      .getValues(buildTarget)
      .forEach(
          p -> extraDepsBuilder.addAll(p.getParseTimeDeps(buildTarget.getTargetConfiguration())));

  for (PythonPlatform pythonPlatform :
      getPythonPlatforms(buildTarget.getTargetConfiguration()).getValues()) {
    Optionals.addIfPresent(pythonPlatform.getCxxLibrary(), extraDepsBuilder);
  }
}
 
源代码7 项目: buck   文件: ScalaTestDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    AbstractScalaTestDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  extraDepsBuilder.add(config.getScalaLibraryTarget(buildTarget.getTargetConfiguration()));
  Optionals.addIfPresent(
      config.getScalacTarget(buildTarget.getTargetConfiguration()), extraDepsBuilder);
  javaOptionsForTests
      .apply(buildTarget.getTargetConfiguration())
      .addParseTimeDeps(targetGraphOnlyDepsBuilder, buildTarget.getTargetConfiguration());
  javacFactory.addParseTimeDeps(
      targetGraphOnlyDepsBuilder, constructorArg, buildTarget.getTargetConfiguration());
}
 
源代码8 项目: buck   文件: CxxTestDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    AbstractCxxTestDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {

  // Get any parse time deps from the C/C++ platforms.
  targetGraphOnlyDepsBuilder.addAll(
      getCxxPlatform(buildTarget, constructorArg)
          .getParseTimeDeps(buildTarget.getTargetConfiguration()));

  // Add in any implicit framework deps.
  extraDepsBuilder.addAll(
      getImplicitFrameworkDeps(buildTarget.getTargetConfiguration(), constructorArg));

  constructorArg
      .getDepsQuery()
      .ifPresent(
          depsQuery ->
              QueryUtils.extractParseTimeTargets(buildTarget, cellRoots, depsQuery)
                  .forEach(extraDepsBuilder::add));
}
 
源代码9 项目: buck   文件: AbstractGenruleDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    T constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  if (constructorArg.isNeedAndroidTools()) {
    AndroidTools.addParseTimeDepsToAndroidTools(
        toolchainProvider, buildTarget, targetGraphOnlyDepsBuilder);
  }
}
 
源代码10 项目: buck   文件: DBinaryDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    AbstractDBinaryDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  extraDepsBuilder.addAll(
      DDescriptionUtils.getUnresolvedCxxPlatform(
              toolchainProvider, buildTarget.getTargetConfiguration(), dBuckConfig)
          .getParseTimeDeps(buildTarget.getTargetConfiguration()));
}
 
源代码11 项目: buck   文件: SwiftLibraryDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    AbstractSwiftLibraryDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  getSwiftPlatformsFlavorDomain(buildTarget.getTargetConfiguration())
      .getValues()
      .forEach(
          platform ->
              extraDepsBuilder.addAll(
                  platform.getParseTimeDeps(buildTarget.getTargetConfiguration())));
}
 
源代码12 项目: buck   文件: RustTestDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    AbstractRustTestDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  targetGraphOnlyDepsBuilder.addAll(
      RustCompileUtils.getPlatformParseTimeDeps(
          getRustToolchain(buildTarget.getTargetConfiguration()), buildTarget, constructorArg));
}
 
源代码13 项目: buck   文件: PrebuiltCxxLibraryDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    AbstractPrebuiltCxxLibraryDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  getPaths(buildTarget, constructorArg)
      .findParseTimeDeps(cellRoots, extraDepsBuilder, targetGraphOnlyDepsBuilder);
  getUnresolvedCxxPlatform(buildTarget)
      .ifPresent(
          provider ->
              targetGraphOnlyDepsBuilder.addAll(
                  provider.getValue().getParseTimeDeps(buildTarget.getTargetConfiguration())));
}
 
源代码14 项目: Strata   文件: ValueWithFailures.java
private static <T> ImmutableList<FailureItem> combine(
    Iterable<? extends ValueWithFailures<? extends T>> items,
    ImmutableCollection.Builder<T> values) {

  ImmutableList.Builder<FailureItem> failures = ImmutableList.builder();
  for (ValueWithFailures<? extends T> item : items) {
    values.add(item.getValue());
    failures.addAll(item.getFailures());
  }
  return failures.build();
}
 
源代码15 项目: buck   文件: GroovyConfiguredCompilerFactory.java
@Override
public void addTargetDeps(
    TargetConfiguration targetConfiguration,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  if (groovyBuckConfig != null) {
    Optionals.addIfPresent(
        groovyBuckConfig.getGroovycTarget(targetConfiguration), extraDepsBuilder);
  }
}
 
源代码16 项目: buck   文件: KotlinLibraryDescription.java
@Override
public void findDepsForTargetFromConstructorArgs(
    BuildTarget buildTarget,
    CellNameResolver cellRoots,
    KotlinLibraryDescriptionArg constructorArg,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
  javacFactory.addParseTimeDeps(
      targetGraphOnlyDepsBuilder, constructorArg, buildTarget.getTargetConfiguration());
}
 
源代码17 项目: buck   文件: JavacFactory.java
/**
 * Adds the parse time deps required for javac based on the args. If the args has a spec for
 * javac, we assume that the parse time deps will be derived elsewhere.
 */
public void addParseTimeDeps(
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder,
    @Nullable JvmLibraryArg args,
    TargetConfiguration toolchainTargetConfiguration) {
  if (args == null || !args.hasJavacSpec()) {
    javacProvider
        .apply(toolchainTargetConfiguration)
        .addParseTimeDeps(targetGraphOnlyDepsBuilder);
  }
}
 
源代码18 项目: javaide   文件: ModelBuilder.java
private AndroidArtifact createAndroidArtifact(
        @NonNull String name,
        @NonNull BaseVariantData<? extends BaseVariantOutputData> variantData) {
    VariantScope scope = variantData.getScope();
    GradleVariantConfiguration variantConfiguration = variantData.getVariantConfiguration();

    SigningConfig signingConfig = variantConfiguration.getSigningConfig();
    String signingConfigName = null;
    if (signingConfig != null) {
        signingConfigName = signingConfig.getName();
    }

    SourceProviders sourceProviders = determineSourceProviders(variantData);

    // get the outputs
    List<? extends BaseVariantOutputData> variantOutputs = variantData.getOutputs();
    List<AndroidArtifactOutput> outputs = Lists.newArrayListWithCapacity(variantOutputs.size());

    Collection<NativeLibrary> nativeLibraries = ImmutableList.of();

    for (BaseVariantOutputData variantOutputData : variantOutputs) {
        int intVersionCode;
        if (variantOutputData instanceof ApkVariantOutputData) {
            intVersionCode = variantOutputData.getVersionCode();
        } else {
            Integer versionCode = variantConfiguration.getMergedFlavor().getVersionCode();
            intVersionCode = versionCode != null ? versionCode : 1;
        }

        ImmutableCollection.Builder<OutputFile> outputFiles = ImmutableList.builder();

        // add the main APK
        outputFiles.add(new OutputFileImpl(
                variantOutputData.getMainOutputFile().getFilters(),
                variantOutputData.getMainOutputFile().getType().name(),
                variantOutputData.getOutputFile()));

        for (ApkOutputFile splitApk : variantOutputData.getOutputs()) {
            if (splitApk.getType() == OutputFile.OutputType.SPLIT) {
                outputFiles.add(new OutputFileImpl(
                        splitApk.getFilters(), OutputFile.SPLIT, splitApk.getOutputFile()));
            }
        }

        // add the main APK.
        outputs.add(new AndroidArtifactOutputImpl(
                outputFiles.build(),
                "assemble" + variantOutputData.getFullName(),
                variantOutputData.getScope().getManifestOutputFile(),
                intVersionCode));
    }

    return new AndroidArtifactImpl(
            name,
            outputs,
            variantData.assembleVariantTask == null ? scope.getTaskName("assemble") : variantData.assembleVariantTask.getName(),
            variantConfiguration.isSigningReady() || variantData.outputsAreSigned,
            signingConfigName,
            variantConfiguration.getApplicationId(),
            // TODO: Need to determine the tasks' name when the tasks may not be created
            // in component plugin.
            scope.getSourceGenTask() == null ? scope.getTaskName("generate", "Sources") : scope.getSourceGenTask().getName(),
            scope.getCompileTask() == null ? scope.getTaskName("compile", "Sources") : scope.getCompileTask().getName(),
            getGeneratedSourceFolders(variantData),
            getGeneratedResourceFolders(variantData),
            (variantData.javacTask != null) ? variantData.javacTask.getDestinationDir() : scope.getJavaOutputDir(),
            scope.getJavaResourcesDestinationDir(),
            DependenciesImpl.cloneDependencies(variantData, androidBuilder),
            sourceProviders.variantSourceProvider,
            sourceProviders.multiFlavorSourceProvider,
            nativeLibraries,
            variantConfiguration.getMergedBuildConfigFields(),
            variantConfiguration.getMergedResValues());
}
 
源代码19 项目: buck   文件: PrebuiltCxxLibraryPaths.java
@SuppressWarnings("unused")
default void findParseTimeDeps(
    CellNameResolver cellRoots,
    ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {}
 
源代码20 项目: buck   文件: ConfiguredCompilerFactory.java
public void addTargetDeps(
@SuppressWarnings("unused") TargetConfiguration targetConfiguration,
@SuppressWarnings("unused") ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
@SuppressWarnings("unused")
    ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {}