Example usage for com.google.common.collect ImmutableCollection.Builder addAll

List of usage examples for com.google.common.collect ImmutableCollection.Builder addAll

Introduction

In this page you can find the example usage for com.google.common.collect ImmutableCollection.Builder addAll.

Prototype

public final boolean addAll(Collection<? extends E> newElements) 

Source Link

Usage

From source file:com.facebook.buck.core.rules.common.BuildRules.java

private static void buildExportedRules(Iterable<? extends BuildRule> rules,
        ImmutableCollection.Builder<BuildRule> exportedRules) {
    AbstractBreadthFirstTraversal<ExportDependencies> visitor = new AbstractBreadthFirstTraversal<ExportDependencies>(
            Iterables.filter(rules, ExportDependencies.class)) {
        @Override/* w w w. j  a va  2 s .  c om*/
        public Iterable<ExportDependencies> visit(ExportDependencies exporter) {
            Set<BuildRule> exported = exporter.getExportedDeps();
            Set<BuildRule> exportedProvided = exporter.getExportedProvidedDeps();
            exportedRules.addAll(exported);
            exportedRules.addAll(exportedProvided);
            return Stream.concat(exported.stream(), exportedProvided.stream())
                    .filter(ExportDependencies.class::isInstance).map(ExportDependencies.class::cast)
                    .collect(Collectors.toSet());
        }
    };
    visitor.start();
}

From source file:com.facebook.buck.features.haskell.HaskellDescriptionUtils.java

/** Accumulate parse-time deps needed by Haskell descriptions in depsBuilder. */
public static void getParseTimeDeps(Iterable<HaskellPlatform> platforms,
        ImmutableCollection.Builder<BuildTarget> depsBuilder) {
    RichStream.from(platforms).forEach(platform -> {

        // Since this description generates haskell link/compile/package rules, make sure the
        // parser includes deps for these tools.
        depsBuilder.addAll(platform.getCompiler().getParseTimeDeps());
        depsBuilder.addAll(platform.getLinker().getParseTimeDeps());
        depsBuilder.addAll(platform.getPackager().getParseTimeDeps());

        // We use the C/C++ linker's Linker object to find out how to pass in the soname, so
        // just add all C/C++ platform parse time deps.
        depsBuilder.addAll(CxxPlatforms.getParseTimeDeps(platform.getCxxPlatform()));
    });//from  w  ww  .ja va  2 s . co  m
}

From source file:com.facebook.buck.cxx.RelativeLinkArg.java

@Override
public void appendToCommandLine(ImmutableCollection.Builder<String> builder) {
    builder.addAll(link);
}

From source file:com.facebook.buck.features.ocaml.OcamlBinaryDescription.java

@Override
public void findDepsForTargetFromConstructorArgs(BuildTarget buildTarget, CellPathResolver cellRoots,
        AbstractOcamlBinaryDescriptionArg constructorArg,
        ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
        ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
    targetGraphOnlyDepsBuilder.addAll(OcamlUtil.getParseTimeDeps(getPlatform(constructorArg.getPlatform())));
}

From source file:org.openqa.selenium.buck.javascript.ClosureFragmentDescription.java

@Override
public void findDepsForTargetFromConstructorArgs(BuildTarget buildTarget, CellPathResolver cellRoots,
        JsFragmentArg constructorArg, ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
        ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
    extraDepsBuilder.addAll(RichStream.of(config.getClosureCompilerSourcePath(constructorArg.getCompiler()))
            .filter(BuildTargetSourcePath.class).map(BuildTargetSourcePath::getTarget)
            .collect(ImmutableList.toImmutableList()));
}

From source file:org.openqa.selenium.buck.javascript.ClosureBinaryDescription.java

@Override
public void findDepsForTargetFromConstructorArgs(BuildTarget buildTarget, CellPathResolver cellRoots,
        JsBinaryArg constructorArg, ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
        ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
    extraDepsBuilder.addAll(RichStream.of(config.getClosureCompilerSourcePath(constructorArg.getCompiler()))
            .filter(BuildTargetSourcePath.class).map(BuildTargetSourcePath::getTarget)
            .collect(ImmutableList.toImmutableList()));
}

From source file:com.facebook.buck.features.rust.RustTestDescription.java

@Override
public void findDepsForTargetFromConstructorArgs(BuildTarget buildTarget, CellPathResolver cellRoots,
        AbstractRustTestDescriptionArg constructorArg,
        ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
        ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
    targetGraphOnlyDepsBuilder
            .addAll(RustCompileUtils.getPlatformParseTimeDeps(getRustToolchain(), buildTarget, constructorArg));
}

From source file:com.facebook.buck.features.rust.RustBinaryDescription.java

@Override
public void findDepsForTargetFromConstructorArgs(BuildTarget buildTarget, CellPathResolver cellRoots,
        AbstractRustBinaryDescriptionArg constructorArg,
        ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
        ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
    targetGraphOnlyDepsBuilder
            .addAll(RustCompileUtils.getPlatformParseTimeDeps(getRustToolchain(), buildTarget, constructorArg));
}

From source file:com.facebook.buck.features.d.DTestDescription.java

@Override
public void findDepsForTargetFromConstructorArgs(BuildTarget buildTarget, CellPathResolver cellRoots,
        AbstractDTestDescriptionArg constructorArg, ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
        ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
    extraDepsBuilder.addAll(
            DDescriptionUtils.getUnresolvedCxxPlatform(toolchainProvider, dBuckConfig).getParseTimeDeps());
}

From source file:com.facebook.buck.features.d.DBinaryDescription.java

@Override
public void findDepsForTargetFromConstructorArgs(BuildTarget buildTarget, CellPathResolver cellRoots,
        AbstractDBinaryDescriptionArg constructorArg, ImmutableCollection.Builder<BuildTarget> extraDepsBuilder,
        ImmutableCollection.Builder<BuildTarget> targetGraphOnlyDepsBuilder) {
    extraDepsBuilder.addAll(
            DDescriptionUtils.getUnresolvedCxxPlatform(toolchainProvider, dBuckConfig).getParseTimeDeps());
}