Skip to content
This repository was archived by the owner on Nov 10, 2023. It is now read-only.

Commit 4760665

Browse files
mykola-semkofacebook-github-bot
authored andcommitted
Optionals.toStream -> RichStream.from
Summary: As suggested in D15194495, split into separate diffs. Reviewed By: styurin fbshipit-source-id: 9376858981
1 parent caa66cf commit 4760665

16 files changed

+31
-57
lines changed

src/com/facebook/buck/android/RobolectricTest.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
import com.facebook.buck.rules.args.Arg;
3737
import com.facebook.buck.step.Step;
3838
import com.facebook.buck.step.fs.WriteFileStep;
39-
import com.facebook.buck.util.Optionals;
39+
import com.facebook.buck.util.RichStream;
4040
import com.google.common.annotations.VisibleForTesting;
4141
import com.google.common.base.Joiner;
4242
import com.google.common.base.Preconditions;
@@ -308,9 +308,9 @@ public Stream<BuildTarget> getRuntimeDeps(BuildRuleResolver buildRuleResolver) {
308308
// {@link DummyRDotJava} and any of its resource deps is available locally (if it
309309
// exists)
310310
// to run this test.
311-
Optionals.toStream(optionalDummyRDotJava),
311+
RichStream.from(optionalDummyRDotJava),
312312
buildRuleResolver.filterBuildRuleInputs(
313-
Optionals.toStream(optionalDummyRDotJava)
313+
RichStream.from(optionalDummyRDotJava)
314314
.flatMap(input -> input.getAndroidResourceDeps().stream())
315315
.flatMap(input -> Stream.of(input.getRes(), input.getAssets()))
316316
.filter(Objects::nonNull)),

src/com/facebook/buck/apple/AppleDescriptions.java

+4-5
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,6 @@
6565
import com.facebook.buck.rules.coercer.SourceSortedSet;
6666
import com.facebook.buck.rules.macros.StringWithMacros;
6767
import com.facebook.buck.shell.AbstractGenruleDescription;
68-
import com.facebook.buck.util.Optionals;
6968
import com.facebook.buck.util.RichStream;
7069
import com.facebook.buck.util.types.Either;
7170
import com.google.common.annotations.VisibleForTesting;
@@ -814,9 +813,9 @@ static AppleBundle createAppleBundle(
814813
binaryTarget,
815814
ImmutableSet.<BuildRule>builder()
816815
.add(targetDebuggableBinaryRule)
817-
.addAll(Optionals.toStream(assetCatalog).iterator())
818-
.addAll(Optionals.toStream(coreDataModel).iterator())
819-
.addAll(Optionals.toStream(sceneKitAssets).iterator())
816+
.addAll(RichStream.from(assetCatalog).iterator())
817+
.addAll(RichStream.from(coreDataModel).iterator())
818+
.addAll(RichStream.from(sceneKitAssets).iterator())
820819
.addAll(
821820
BuildRules.toBuildRulesFor(
822821
buildTarget,
@@ -826,7 +825,7 @@ static AppleBundle createAppleBundle(
826825
.filter(BuildTargetSourcePath.class)
827826
.map(BuildTargetSourcePath::getTarget)
828827
.collect(ImmutableSet.toImmutableSet())))
829-
.addAll(Optionals.toStream(appleDsym).iterator())
828+
.addAll(RichStream.from(appleDsym).iterator())
830829
.addAll(extraBinaries)
831830
.build());
832831

src/com/facebook/buck/apple/AppleTest.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
import com.facebook.buck.test.TestCaseSummary;
4444
import com.facebook.buck.test.TestResults;
4545
import com.facebook.buck.test.TestRunningOptions;
46-
import com.facebook.buck.util.Optionals;
46+
import com.facebook.buck.util.RichStream;
4747
import com.facebook.buck.util.types.Either;
4848
import com.facebook.buck.util.types.Pair;
4949
import com.google.common.annotations.VisibleForTesting;
@@ -493,9 +493,9 @@ public Stream<BuildTarget> getRuntimeDeps(BuildRuleResolver buildRuleResolver) {
493493
return Stream.concat(
494494
Stream.concat(
495495
Stream.of(testBundle),
496-
Stream.concat(Optionals.toStream(testHostApp), Optionals.toStream(uiTestTargetApp)))
496+
Stream.concat(RichStream.from(testHostApp), RichStream.from(uiTestTargetApp)))
497497
.map(BuildRule::getBuildTarget),
498-
Optionals.toStream(xctool)
498+
RichStream.from(xctool)
499499
.map(buildRuleResolver::filterBuildRuleInputs)
500500
.flatMap(ImmutableSet::stream)
501501
.map(BuildRule::getBuildTarget));

src/com/facebook/buck/apple/AppleTestDescription.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@
7575
import com.facebook.buck.swift.SwiftRuntimeNativeLinkable;
7676
import com.facebook.buck.test.config.TestBuckConfig;
7777
import com.facebook.buck.unarchive.UnzipStep;
78-
import com.facebook.buck.util.Optionals;
78+
import com.facebook.buck.util.RichStream;
7979
import com.facebook.buck.util.types.Either;
8080
import com.facebook.buck.versions.Version;
8181
import com.google.common.annotations.VisibleForTesting;
@@ -286,7 +286,7 @@ public BuildRule createBuildRule(
286286
testHostWithTargetApp.flatMap(TestHostInfo::getTestHostAppBinarySourcePath),
287287
testHostWithTargetApp.map(TestHostInfo::getBlacklist).orElse(ImmutableSet.of()),
288288
libraryTarget,
289-
Optionals.toStream(args.getTestHostApp()).toImmutableSortedSet(Ordering.natural()));
289+
RichStream.from(args.getTestHostApp()).toImmutableSortedSet(Ordering.natural()));
290290
if (!createBundle || SwiftLibraryDescription.isSwiftTarget(libraryTarget)) {
291291
return library;
292292
}

src/com/facebook/buck/apple/toolchain/impl/AppleCxxPlatforms.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@
5858
import com.facebook.buck.io.filesystem.ProjectFilesystem;
5959
import com.facebook.buck.swift.toolchain.SwiftPlatform;
6060
import com.facebook.buck.swift.toolchain.impl.SwiftPlatformFactory;
61-
import com.facebook.buck.util.Optionals;
61+
import com.facebook.buck.util.RichStream;
6262
import com.facebook.buck.util.environment.Platform;
6363
import com.google.common.annotations.VisibleForTesting;
6464
import com.google.common.base.Joiner;
@@ -229,7 +229,7 @@ public static AppleCxxPlatform buildWithXcodeToolFinder(
229229
ImmutableList<String> toolchainVersions =
230230
targetSdk.getToolchains().stream()
231231
.map(AppleToolchain::getVersion)
232-
.flatMap(Optionals::toStream)
232+
.flatMap(RichStream::from)
233233
.collect(ImmutableList.toImmutableList());
234234
if (toolchainVersions.isEmpty()) {
235235
if (!xcodeBuildVersion.isPresent()) {

src/com/facebook/buck/core/rules/DefaultSourcePathRuleFinder.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818

1919
import com.facebook.buck.core.sourcepath.BuildTargetSourcePath;
2020
import com.facebook.buck.core.sourcepath.SourcePath;
21-
import com.facebook.buck.util.Optionals;
2221
import com.facebook.buck.util.RichStream;
2322
import com.google.common.collect.ImmutableSet;
2423
import java.util.Arrays;
@@ -54,7 +53,7 @@ public Stream<BuildRule> filterBuildRuleInputs(Stream<SourcePath> sources) {
5453

5554
@Override
5655
public Stream<BuildRule> filterBuildRuleInputs(Optional<SourcePath> sourcePath) {
57-
return filterBuildRuleInputs(Optionals.toStream(sourcePath));
56+
return filterBuildRuleInputs(RichStream.from(sourcePath));
5857
}
5958

6059
/**

src/com/facebook/buck/counters/CounterRegistryImpl.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
import com.facebook.buck.core.util.log.Logger;
2020
import com.facebook.buck.event.BuckEventBus;
21-
import com.facebook.buck.util.Optionals;
21+
import com.facebook.buck.util.RichStream;
2222
import com.google.common.base.Preconditions;
2323
import com.google.common.collect.ImmutableList;
2424
import com.google.common.collect.ImmutableMap;
@@ -121,7 +121,7 @@ private void flushCounters() {
121121
}
122122

123123
ImmutableList<CounterSnapshot> presentSnapshots =
124-
snapshots.stream().flatMap(Optionals::toStream).collect(ImmutableList.toImmutableList());
124+
snapshots.stream().flatMap(RichStream::from).collect(ImmutableList.toImmutableList());
125125
if (!presentSnapshots.isEmpty()) {
126126
CountersSnapshotEvent event = new CountersSnapshotEvent(presentSnapshots);
127127
eventBus.post(event);

src/com/facebook/buck/doctor/AbstractReport.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ public final Optional<DefectSubmitResult> collectAndSubmitResult()
165165
.setHighlightedBuildIds(
166166
RichStream.from(selectedBuilds)
167167
.map(BuildLogEntry::getBuildId)
168-
.flatMap(Optionals::toStream)
168+
.flatMap(RichStream::from)
169169
.toOnceIterable())
170170
.setBuildEnvironmentDescription(buildEnvironmentDescription)
171171
.setSourceControlInfo(sourceControlInfo)

src/com/facebook/buck/features/apple/project/WorkspaceAndProjectGenerator.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@
4949
import com.facebook.buck.features.halide.HalideBuckConfig;
5050
import com.facebook.buck.rules.keys.config.RuleKeyConfiguration;
5151
import com.facebook.buck.swift.SwiftBuckConfig;
52-
import com.facebook.buck.util.Optionals;
52+
import com.facebook.buck.util.RichStream;
5353
import com.facebook.buck.util.json.ObjectMappers;
5454
import com.google.common.annotations.VisibleForTesting;
5555
import com.google.common.base.Preconditions;
@@ -253,7 +253,7 @@ public Path generateWorkspaceAndDependentProjects(
253253

254254
ImmutableSet<BuildTarget> targetsInRequiredProjects =
255255
Stream.concat(
256-
schemeNameToSrcTargetNode.values().stream().flatMap(Optionals::toStream),
256+
schemeNameToSrcTargetNode.values().stream().flatMap(RichStream::from),
257257
buildForTestNodes.values().stream())
258258
.map(TargetNode::getBuildTarget)
259259
.collect(ImmutableSet.toImmutableSet());
@@ -1069,7 +1069,7 @@ private void buildWorkspaceSchemeTests(
10691069
for (String schemeName : schemeNameToSrcTargetNode.keySet()) {
10701070
ImmutableSet<TargetNode<?>> targetNodes =
10711071
schemeNameToSrcTargetNode.get(schemeName).stream()
1072-
.flatMap(Optionals::toStream)
1072+
.flatMap(RichStream::from)
10731073
.collect(ImmutableSet.toImmutableSet());
10741074
ImmutableSet<TargetNode<AppleTestDescriptionArg>> testNodes =
10751075
getOrderedTestNodes(
@@ -1187,7 +1187,7 @@ private void writeWorkspaceSchemes(
11871187
ImmutableSet<PBXTarget> orderedBuildTargets =
11881188
schemeNameToSrcTargetNode.get(schemeName).stream()
11891189
.distinct()
1190-
.flatMap(Optionals::toStream)
1190+
.flatMap(RichStream::from)
11911191
.map(TargetNode::getBuildTarget)
11921192
.map(buildTargetToPBXTarget::get)
11931193
.filter(Objects::nonNull)

src/com/facebook/buck/features/haskell/HaskellCompileRule.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,6 @@
4949
import com.facebook.buck.util.Escaper;
5050
import com.facebook.buck.util.MoreIterables;
5151
import com.facebook.buck.util.MoreSuppliers;
52-
import com.facebook.buck.util.Optionals;
5352
import com.facebook.buck.util.RichStream;
5453
import com.facebook.buck.util.Verbosity;
5554
import com.google.common.annotations.VisibleForTesting;
@@ -308,7 +307,7 @@ private Iterable<String> getCompilerArguments(SourcePathResolver resolver) {
308307
builder
309308
.addAll(
310309
MoreIterables.zipAndConcat(
311-
Iterables.cycle("-main-is"), Optionals.toStream(main).toOnceIterable()))
310+
Iterables.cycle("-main-is"), RichStream.from(main).toOnceIterable()))
312311
.addAll(getPackageNameArgs())
313312
.addAll(getPreprocessorFlags(resolver))
314313
.add("-odir", getProjectFilesystem().resolve(getObjectDir()).toString())

src/com/facebook/buck/features/lua/LuaBinaryDescription.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@
6666
import com.facebook.buck.rules.args.SourcePathArg;
6767
import com.facebook.buck.rules.coercer.PatternMatchedCollection;
6868
import com.facebook.buck.util.MoreMaps;
69-
import com.facebook.buck.util.Optionals;
69+
import com.facebook.buck.util.RichStream;
7070
import com.facebook.buck.versions.VersionRoot;
7171
import com.google.common.annotations.VisibleForTesting;
7272
import com.google.common.base.Joiner;
@@ -148,7 +148,7 @@ private Iterable<BuildTarget> getNativeStarterDepTargets(LuaPlatform luaPlatform
148148
Optional<BuildTarget> nativeStarterLibrary = luaPlatform.getNativeStarterLibrary();
149149
return nativeStarterLibrary.isPresent()
150150
? ImmutableSet.of(nativeStarterLibrary.get())
151-
: Optionals.toStream(luaPlatform.getLuaCxxLibraryTarget())
151+
: RichStream.from(luaPlatform.getLuaCxxLibraryTarget())
152152
.collect(ImmutableSet.toImmutableSet());
153153
}
154154

src/com/facebook/buck/features/project/intellij/DefaultIjModuleFactoryResolver.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
import com.facebook.buck.jvm.java.CompilerOutputPaths;
3333
import com.facebook.buck.jvm.java.JavacPluginParams;
3434
import com.facebook.buck.jvm.java.JvmLibraryArg;
35-
import com.facebook.buck.util.Optionals;
35+
import com.facebook.buck.util.RichStream;
3636
import java.nio.file.Path;
3737
import java.util.Optional;
3838
import java.util.Set;
@@ -134,7 +134,7 @@ public Optional<Path> getCompilerOutputPath(TargetNode<? extends JvmLibraryArg>
134134

135135
private Path getRelativePathAndRecordRule(SourcePath sourcePath) {
136136
requiredBuildTargets.addAll(
137-
Optionals.toStream(graphBuilder.getRule(sourcePath).map(BuildRule::getBuildTarget))
137+
RichStream.from(graphBuilder.getRule(sourcePath).map(BuildRule::getBuildTarget))
138138
.collect(Collectors.toList()));
139139
return sourcePathResolver.getRelativePath(sourcePath);
140140
}

src/com/facebook/buck/shell/AbstractGenruleDescription.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@
5252
import com.facebook.buck.rules.macros.WorkerMacroArg;
5353
import com.facebook.buck.rules.macros.WorkerMacroExpander;
5454
import com.facebook.buck.sandbox.SandboxExecutionStrategy;
55-
import com.facebook.buck.util.Optionals;
5655
import com.facebook.buck.util.RichStream;
5756
import com.facebook.infer.annotation.SuppressFieldNotInitialized;
5857
import com.google.common.collect.ImmutableList;
@@ -184,7 +183,7 @@ public BuildRule createBuildRule(
184183
Stream.concat(
185184
graphBuilder.filterBuildRuleInputs(args.getSrcs().getPaths()).stream(),
186185
Stream.of(cmd, bash, cmdExe)
187-
.flatMap(Optionals::toStream)
186+
.flatMap(RichStream::from)
188187
.flatMap(input -> BuildableSupport.getDeps(input, graphBuilder)))
189188
.collect(ImmutableSortedSet.toImmutableSortedSet(Comparator.naturalOrder()))),
190189
graphBuilder,

src/com/facebook/buck/shell/ShTestDescription.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
import com.facebook.buck.rules.macros.StringWithMacros;
4141
import com.facebook.buck.rules.macros.StringWithMacrosConverter;
4242
import com.facebook.buck.test.config.TestBuckConfig;
43-
import com.facebook.buck.util.Optionals;
43+
import com.facebook.buck.util.RichStream;
4444
import com.google.common.collect.FluentIterable;
4545
import com.google.common.collect.ImmutableList;
4646
import com.google.common.collect.ImmutableMap;
@@ -82,7 +82,7 @@ public ShTest createBuildRule(
8282
StringWithMacrosConverter.of(buildTarget, context.getCellPathResolver(), MACRO_EXPANDERS);
8383
ImmutableList<Arg> testArgs =
8484
Stream.concat(
85-
Optionals.toStream(args.getTest()).map(SourcePathArg::of),
85+
RichStream.from(args.getTest()).map(SourcePathArg::of),
8686
args.getArgs().stream().map(x -> macrosConverter.convert(x, graphBuilder)))
8787
.collect(ImmutableList.toImmutableList());
8888
ImmutableMap<String, Arg> testEnv =

src/com/facebook/buck/util/Optionals.java

-21
Original file line numberDiff line numberDiff line change
@@ -66,27 +66,6 @@ public static <T> T require(Optional<T> optional) {
6666
return optional.get();
6767
}
6868

69-
/**
70-
* Returns a singleton stream of an {@code Optional}'s value if present, otherwise an empty
71-
* stream.
72-
*
73-
* <p>Useful for filtering present instances in a stream pipeline:
74-
*
75-
* <pre>{@code
76-
* Stream.of(Optional.empty(), Optional.of(1), Optional.of(2))
77-
* .flatMap(Optionals::toStream)
78-
*
79-
* // Yields a stream of 2 elements, [1, 2]
80-
* }</pre>
81-
*/
82-
public static <T> RichStream<T> toStream(Optional<T> optional) {
83-
if (optional.isPresent()) {
84-
return RichStream.of(optional.get());
85-
} else {
86-
return RichStream.empty();
87-
}
88-
}
89-
9069
private static final Optional<Boolean> OPTIONAL_TRUE = Optional.of(true);
9170
private static final Optional<Boolean> OPTIONAL_FALSE = Optional.of(false);
9271

test/com/facebook/buck/cxx/CxxGenruleDescriptionTest.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@
5454
import com.facebook.buck.rules.macros.StringWithMacrosUtils;
5555
import com.facebook.buck.shell.Genrule;
5656
import com.facebook.buck.testutil.OptionalMatchers;
57-
import com.facebook.buck.util.Optionals;
5857
import com.facebook.buck.util.RichStream;
5958
import com.facebook.buck.versions.NaiveVersionSelector;
6059
import com.facebook.buck.versions.ParallelVersionedTargetGraphBuilder;
@@ -282,7 +281,7 @@ public void cxxGenruleInLocationMacro() {
282281
.getRule(rule.getGenrule(CxxPlatformUtils.DEFAULT_PLATFORM, graphBuilder))
283282
.orElseThrow(AssertionError::new);
284283
assertThat(
285-
Arg.stringify(Optionals.toStream(genrule.getCmd()).toOnceIterable(), pathResolver),
284+
Arg.stringify(RichStream.from(genrule.getCmd()).toOnceIterable(), pathResolver),
286285
Matchers.contains(
287286
pathResolver
288287
.getAbsolutePath(dep.getGenrule(CxxPlatformUtils.DEFAULT_PLATFORM, graphBuilder))

0 commit comments

Comments
 (0)