List of usage examples for com.google.common.collect ImmutableSortedSet builder
@Deprecated public static <E> ImmutableSortedSet.Builder<E> builder()
From source file:com.facebook.buck.rules.BuildRules.java
public static ImmutableSortedSet<BuildRule> toBuildRulesFor(BuildTarget invokingBuildTarget, BuildRuleResolver ruleResolver, Iterable<BuildTarget> buildTargets, boolean allowNonExistentRule) { ImmutableSortedSet.Builder<BuildRule> buildRules = ImmutableSortedSet.naturalOrder(); for (BuildTarget target : buildTargets) { BuildRule buildRule = ruleResolver.get(target); if (buildRule != null) { buildRules.add(buildRule);/*from ww w.j a v a 2s .c o m*/ } else if (!allowNonExistentRule) { throw new HumanReadableException("No rule for %s found when processing %s", target, invokingBuildTarget.getFullyQualifiedName()); } } return buildRules.build(); }
From source file:com.codingopus.guava.custom.collectors.ImmutableSortedSetCollector.java
/** * @returns a {@link Collector} that collects data in * {@link ImmutableSortedSet} whose elements are * ordered by their natural ordering.//from w w w . ja va 2 s .co m * * @param <T> The type of input elements for the new * collector. * */ public static <T extends Comparable<?>> Collector<T, ImmutableSortedSet.Builder<T>, ImmutableSortedSet<T>> toImmutableSortedSetCollector() { return Collector.of(ImmutableSortedSet::naturalOrder, (c, v) -> c.add(v), (c1, c2) -> c1.addAll(c2.build()), ImmutableSortedSet.Builder<T>::build); }
From source file:org.gradle.api.internal.tasks.properties.TaskPropertyUtils.java
public static <T extends TaskFilePropertySpec> SortedSet<T> collectFileProperties(String displayName, Iterable<? extends T> fileProperties) { Set<String> names = Sets.newHashSet(); ImmutableSortedSet.Builder<T> builder = ImmutableSortedSet.naturalOrder(); for (T propertySpec : fileProperties) { String propertyName = propertySpec.getPropertyName(); if (!names.add(propertyName)) { throw new IllegalArgumentException( String.format("Multiple %s file properties with name '%s'", displayName, propertyName)); }// ww w.ja v a2 s . c o m builder.add(propertySpec); } return builder.build(); }
From source file:org.gradle.api.internal.tasks.TaskPropertyUtils.java
public static <T extends TaskFilePropertySpec> SortedSet<T> collectFileProperties(String displayName, Iterator<? extends T> fileProperties) { Set<String> names = Sets.newHashSet(); ImmutableSortedSet.Builder<T> builder = ImmutableSortedSet.naturalOrder(); while (fileProperties.hasNext()) { T propertySpec = fileProperties.next(); String propertyName = propertySpec.getPropertyName(); if (!names.add(propertyName)) { throw new IllegalArgumentException( String.format("Multiple %s file properties with name '%s'", displayName, propertyName)); }//from w w w . j av a 2 s . c o m builder.add(propertySpec); } return builder.build(); }
From source file:com.facebook.buck.rules.Buildables.java
/** * Helper function for {@link Buildable}s to create their lists of files for caching. *//*from w w w . j av a 2 s .c om*/ public static void addInputsToSortedSet(@Nullable Path pathToDirectory, ImmutableSortedSet.Builder<Path> inputsToConsiderForCachingPurposes, DirectoryTraverser traverser) { if (pathToDirectory == null) { return; } Set<Path> files; try { files = DirectoryTraversers.getInstance().findFiles(pathToDirectory.toString(), traverser); } catch (IOException e) { throw new RuntimeException("Exception while traversing " + pathToDirectory + ".", e); } inputsToConsiderForCachingPurposes.addAll(files); }
From source file:com.facebook.buck.swift.SwiftDescriptions.java
static ImmutableSortedSet<SourcePath> filterSwiftSources(SourcePathResolver sourcePathResolver, ImmutableSet<SourceWithFlags> srcs) { ImmutableSortedSet.Builder<SourcePath> swiftSrcsBuilder = ImmutableSortedSet.naturalOrder(); for (SourceWithFlags source : srcs) { if (MorePaths.getFileExtension(sourcePathResolver.getAbsolutePath(source.getSourcePath())) .equalsIgnoreCase(SWIFT_EXTENSION)) { swiftSrcsBuilder.add(source.getSourcePath()); }/*from w w w. ja v a 2 s . c o m*/ } return swiftSrcsBuilder.build(); }
From source file:com.facebook.buck.android.NoDxArgsHelper.java
static ImmutableSortedSet<JavaLibrary> findRulesToExcludeFromDex(ActionGraphBuilder graphBuilder, BuildTarget buildTarget, ImmutableSet<BuildTarget> noDxTargets) { // Build rules added to "no_dx" are only hints, not hard dependencies. Therefore, although a // target may be mentioned in that parameter, it may not be present as a build rule. ImmutableSortedSet.Builder<BuildRule> builder = ImmutableSortedSet.naturalOrder(); for (BuildTarget noDxTarget : noDxTargets) { Optional<BuildRule> ruleOptional = graphBuilder.getRuleOptional(noDxTarget); if (ruleOptional.isPresent()) { builder.add(ruleOptional.get()); } else {/* w w w . j ava 2s. c o m*/ LOG.info("%s: no_dx target not a dependency: %s", buildTarget, noDxTarget); } } ImmutableSortedSet<BuildRule> buildRulesToExcludeFromDex = builder.build(); return RichStream.from(buildRulesToExcludeFromDex).filter(JavaLibrary.class) .collect(ImmutableSortedSet.toImmutableSortedSet(Ordering.natural())); }
From source file:com.codingopus.guava.custom.collectors.ImmutableSortedSetCollector.java
/** * @returns a {@link Collector} that collects data in * {@link ImmutableSortedSet} whose elements are * ordered by reverse of the their natural ordering. *//from w w w . jav a 2 s. c om * @param <T> The type of input elements for the new * collector. * */ public static <T extends Comparable<?>> Collector<T, ImmutableSortedSet.Builder<T>, ImmutableSortedSet<T>> toReverseImmutableSortedSetCollector() { return Collector.of(ImmutableSortedSet::reverseOrder, (c, v) -> c.add(v), (c1, c2) -> c1.addAll(c2.build()), ImmutableSortedSet.Builder<T>::build); }
From source file:com.facebook.buck.rust.RustLinkables.java
static ImmutableSortedSet<Path> getDependencyPaths(BuildRule rule) { final ImmutableSortedSet.Builder<Path> builder = ImmutableSortedSet.naturalOrder(); new AbstractBreadthFirstTraversal<BuildRule>(ImmutableSet.of(rule)) { @Override//w w w . j a v a2s .com public ImmutableSet<BuildRule> visit(BuildRule rule) { if (rule instanceof RustLinkable) { RustLinkable linkable = (RustLinkable) rule; builder.add(linkable.getLinkPath().getParent()); return rule.getDeps(); } else { return ImmutableSet.of(); } } }.start(); return builder.build(); }
From source file:com.facebook.buck.core.rules.common.BuildRules.java
public static ImmutableSortedSet<BuildRule> toBuildRulesFor(BuildTarget invokingBuildTarget, BuildRuleResolver ruleResolver, Iterable<BuildTarget> buildTargets) { ImmutableSortedSet.Builder<BuildRule> buildRules = ImmutableSortedSet.naturalOrder(); for (BuildTarget target : buildTargets) { Optional<BuildRule> buildRule = ruleResolver.getRuleOptional(target); if (buildRule.isPresent()) { buildRules.add(buildRule.get()); } else {//from ww w.j av a2s.c om throw new HumanReadableException("No rule for %s found when processing %s", target, invokingBuildTarget.getFullyQualifiedName()); } } return buildRules.build(); }