List of usage examples for com.google.common.collect ImmutableSet builder
public static <E> Builder<E> builder()
From source file:rtdc.core.event.EventAggregator.java
public ImmutableSet<T> getHandlers() { ImmutableSet.Builder<T> builder = ImmutableSet.builder(); Iterator<WeakReference<T>> it = handlers.iterator(); while (it.hasNext()) { T next = it.next().get();/* w ww . j a v a2 s. com*/ if (next == null) it.remove(); else builder.add(next); } return builder.build(); }
From source file:com.facebook.buck.query.QueryTargetAccessor.java
/** * Filters the objects in the given attribute that satisfy the given predicate. *///from w w w . j ava2s . c om public static <T> ImmutableSet<Object> filterAttributeContents(TargetNode<T, ?> node, String attribute, final Predicate<Object> predicate) { try { final ImmutableSet.Builder<Object> builder = ImmutableSet.builder(); Class<?> constructorArgClass = node.getConstructorArg().getClass(); Field field = constructorArgClass.getField(attribute); ParamInfo info = new ParamInfo(typeCoercerFactory, constructorArgClass, field); info.traverse(value -> { if (predicate.apply(value)) { builder.add(value); } }, node.getConstructorArg()); return builder.build(); } catch (NoSuchFieldException e) { // Ignore if the field does not exist in this rule. return ImmutableSet.of(); } }
From source file:com.facebook.buck.js.JsFlavors.java
public static boolean validateFlavors(ImmutableSet<Flavor> flavors, Iterable<FlavorDomain<?>> allowableDomains) { final ImmutableSet.Builder<Flavor> allowableFlavors = ImmutableSet.builder(); for (FlavorDomain<?> domain : allowableDomains) { // verify only one flavor of each domain is present domain.getFlavor(flavors);/*from w w w. ja va 2s . c om*/ allowableFlavors.addAll(domain.getFlavors()); } return allowableFlavors.build().containsAll(flavors); }
From source file:org.sonar.java.ast.visitors.SyntaxHighlighterVisitor.java
public SyntaxHighlighterVisitor(SonarComponents sonarComponents) { this.sonarComponents = sonarComponents; ImmutableSet.Builder<String> keywordsBuilder = ImmutableSet.builder(); keywordsBuilder.add(JavaKeyword.keywordValues()); keywords = keywordsBuilder.build();//from w ww .j av a 2 s.co m ImmutableMap.Builder<Tree.Kind, TypeOfText> typesByKindBuilder = ImmutableMap.builder(); typesByKindBuilder.put(Tree.Kind.STRING_LITERAL, TypeOfText.STRING); typesByKindBuilder.put(Tree.Kind.CHAR_LITERAL, TypeOfText.STRING); typesByKindBuilder.put(Tree.Kind.FLOAT_LITERAL, TypeOfText.CONSTANT); typesByKindBuilder.put(Tree.Kind.DOUBLE_LITERAL, TypeOfText.CONSTANT); typesByKindBuilder.put(Tree.Kind.LONG_LITERAL, TypeOfText.CONSTANT); typesByKindBuilder.put(Tree.Kind.INT_LITERAL, TypeOfText.CONSTANT); typesByKindBuilder.put(Tree.Kind.ANNOTATION, TypeOfText.ANNOTATION); typesByKind = typesByKindBuilder.build(); }
From source file:org.onlab.graph.AdjacencyListsGraph.java
/** * Creates a graph comprising of the specified vertexes and edges. * * @param vertexes set of graph vertexes * @param edges set of graph edges/*w w w. ja v a 2 s.c om*/ */ public AdjacencyListsGraph(Set<V> vertexes, Set<E> edges) { checkNotNull(vertexes, "Vertex set cannot be null"); checkNotNull(edges, "Edge set cannot be null"); // Record ingress/egress edges for each vertex. ImmutableSetMultimap.Builder<V, E> srcMap = ImmutableSetMultimap.builder(); ImmutableSetMultimap.Builder<V, E> dstMap = ImmutableSetMultimap.builder(); // Also make sure that all edge end-points are added as vertexes ImmutableSet.Builder<V> actualVertexes = ImmutableSet.builder(); actualVertexes.addAll(vertexes); for (E edge : edges) { srcMap.put(edge.src(), edge); actualVertexes.add(edge.src()); dstMap.put(edge.dst(), edge); actualVertexes.add(edge.dst()); } // Make an immutable copy of the edge and vertex sets this.edges = ImmutableSet.copyOf(edges); this.vertexes = actualVertexes.build(); // Build immutable copies of sources and destinations edge maps sources = srcMap.build(); destinations = dstMap.build(); }
From source file:info.gehrels.voting.singleTransferableVote.CandidateStates.java
public ImmutableSet<CANDIDATE_TYPE> getHopefulCandidates() { ImmutableSet.Builder<CANDIDATE_TYPE> builder = ImmutableSet.builder(); candidateStates.entrySet().stream().filter(this::isHopefulCandidate) .forEach(entry -> builder.add(entry.getKey())); return builder.build(); }
From source file:org.androidtransfuse.util.matcher.InjectionSignatureMatcherBuilder.java
public InjectionSignatureMatcherBuilder byAnnotation(ASTAnnotation... qualifiers) { ImmutableSet.Builder<ASTAnnotation> builder = ImmutableSet.builder(); if (qualifiers != null) { for (ASTAnnotation astAnnotation : qualifiers) { builder.add(astAnnotation);//from w w w .j av a 2 s .c om } } return byAnnotation(builder.build()); }
From source file:com.facebook.buck.apple.xcode.RuleDependencyFinder.java
private static ImmutableSet<BuildRule> gatherTransitiveDependencies(Iterable<? extends BuildRule> initial) { final ImmutableSet.Builder<BuildRule> buildRulesBuilder = ImmutableSet.builder(); AbstractAcyclicDepthFirstPostOrderTraversal<BuildRule> allDependenciesTraversal = new AbstractAcyclicDepthFirstPostOrderTraversal<BuildRule>() { @Override//from www. jav a2s . com protected Iterator<BuildRule> findChildren(BuildRule node) throws IOException { return node.getDeps().iterator(); } @Override protected void onNodeExplored(BuildRule node) { } @Override protected void onTraversalComplete(Iterable<BuildRule> nodesInExplorationOrder) { buildRulesBuilder.addAll(nodesInExplorationOrder); } }; try { allDependenciesTraversal.traverse(initial); } catch (AbstractAcyclicDepthFirstPostOrderTraversal.CycleException e) { throw new HumanReadableException(e, "Cycle detected while gathering build rule dependencies for project generation:\n " + e.getMessage()); } catch (IOException e) { throw new RuntimeException(e); } return buildRulesBuilder.build(); }
From source file:com.facebook.buck.core.rules.common.BuildRules.java
public static ImmutableSet<BuildRule> getUnsortedExportedRules(Iterable<? extends BuildRule> rules) { ImmutableSet.Builder<BuildRule> exportedRules = ImmutableSet.builder(); buildExportedRules(rules, exportedRules); return exportedRules.build(); }
From source file:org.sonar.plugins.csharp.CSharpSonarRulesDefinition.java
@Override public void define(Context context) { NewRepository repository = context.createRepository(REPOSITORY_KEY, CSharpPlugin.LANGUAGE_KEY) .setName(REPOSITORY_NAME);/*from w ww .j a v a 2 s .c om*/ RulesDefinitionXmlLoader loader = new RulesDefinitionXmlLoader(); loader.load(repository, new InputStreamReader( getClass().getResourceAsStream("/org/sonar/plugins/csharp/rules.xml"), StandardCharsets.UTF_8)); SqaleXmlLoader.load(repository, "/org/sonar/plugins/csharp/sqale.xml"); ImmutableSet.Builder<String> builder = ImmutableSet.builder(); for (NewRule rule : repository.rules()) { builder.add(rule.key()); } allRuleKeys = builder.build(); repository.done(); }