aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar ccalvarin <ccalvarin@google.com>2017-07-25 23:32:43 +0200
committerGravatar Jakob Buchgraber <buchgr@google.com>2017-07-26 10:35:04 +0200
commit8ea7685bd4db755be6c600dc1f800fc0af3a9771 (patch)
tree723e45bc45db5e1187f5c16ea42cd4768500f65d /src
parent9e3018109b189a345cd9b353729c7f31ac209bc9 (diff)
Migrate the options parser to java8 functions.
PiperOrigin-RevId: 163124023
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/google/devtools/common/options/InvocationPolicyEnforcer.java6
-rw-r--r--src/main/java/com/google/devtools/common/options/OptionsParser.java5
-rw-r--r--src/main/java/com/google/devtools/common/options/OptionsParserImpl.java40
3 files changed, 24 insertions, 27 deletions
diff --git a/src/main/java/com/google/devtools/common/options/InvocationPolicyEnforcer.java b/src/main/java/com/google/devtools/common/options/InvocationPolicyEnforcer.java
index 97be190d40..562221df20 100644
--- a/src/main/java/com/google/devtools/common/options/InvocationPolicyEnforcer.java
+++ b/src/main/java/com/google/devtools/common/options/InvocationPolicyEnforcer.java
@@ -13,8 +13,6 @@
// limitations under the License.
package com.google.devtools.common.options;
-import com.google.common.base.Function;
-import com.google.common.base.Functions;
import com.google.common.base.Joiner;
import com.google.common.base.Verify;
import com.google.common.collect.ArrayListMultimap;
@@ -38,6 +36,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
+import java.util.function.Function;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.annotation.Nullable;
@@ -53,8 +52,7 @@ public final class InvocationPolicyEnforcer {
private static final Logger log = Logger.getLogger(InvocationPolicyEnforcer.class.getName());
- private static final Function<Object, String> INVOCATION_POLICY_SOURCE =
- Functions.constant("Invocation policy");
+ private static final Function<Object, String> INVOCATION_POLICY_SOURCE = o -> "Invocation policy";
@Nullable private final InvocationPolicy invocationPolicy;
diff --git a/src/main/java/com/google/devtools/common/options/OptionsParser.java b/src/main/java/com/google/devtools/common/options/OptionsParser.java
index fdfa256eec..b5077857af 100644
--- a/src/main/java/com/google/devtools/common/options/OptionsParser.java
+++ b/src/main/java/com/google/devtools/common/options/OptionsParser.java
@@ -14,8 +14,6 @@
package com.google.devtools.common.options;
-import com.google.common.base.Function;
-import com.google.common.base.Functions;
import com.google.common.base.Joiner;
import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableList;
@@ -34,6 +32,7 @@ import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
+import java.util.function.Function;
import javax.annotation.Nullable;
/**
@@ -710,7 +709,7 @@ public class OptionsParser implements OptionsProvider {
*/
public void parse(OptionPriority priority, String source,
List<String> args) throws OptionsParsingException {
- parseWithSourceFunction(priority, Functions.constant(source), args);
+ parseWithSourceFunction(priority, o -> source, args);
}
/**
diff --git a/src/main/java/com/google/devtools/common/options/OptionsParserImpl.java b/src/main/java/com/google/devtools/common/options/OptionsParserImpl.java
index b4ae458317..d49d5c4262 100644
--- a/src/main/java/com/google/devtools/common/options/OptionsParserImpl.java
+++ b/src/main/java/com/google/devtools/common/options/OptionsParserImpl.java
@@ -14,8 +14,6 @@
package com.google.devtools.common.options;
-import com.google.common.base.Function;
-import com.google.common.base.Functions;
import com.google.common.base.Joiner;
import com.google.common.base.Preconditions;
import com.google.common.base.Predicate;
@@ -40,6 +38,7 @@ import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
+import java.util.function.Function;
import javax.annotation.Nullable;
/**
@@ -475,13 +474,14 @@ class OptionsParserImpl {
if (option.wrapperOption()) {
if (value.startsWith("-")) {
-
- List<String> unparsed = parse(
- priority,
- Functions.constant("Unwrapped from wrapper option --" + originalName),
- null, // implicitDependent
- null, // expandedFrom
- ImmutableList.of(value));
+ String sourceMessage = "Unwrapped from wrapper option --" + originalName;
+ List<String> unparsed =
+ parse(
+ priority,
+ o -> sourceMessage,
+ null, // implicitDependent
+ null, // expandedFrom
+ ImmutableList.of(value));
if (!unparsed.isEmpty()) {
throw new OptionsParsingException(
@@ -526,12 +526,11 @@ class OptionsParserImpl {
if (OptionsData.isExpansionOption(field.getAnnotation(Option.class))) {
ImmutableList<String> expansion = optionsData.getEvaluatedExpansion(field, value);
- Function<Object, String> expansionSourceFunction =
- Functions.constant(
- "expanded from option --"
- + originalName
- + " from "
- + sourceFunction.apply(originalName));
+ String sourceMessage = "expanded from option --"
+ + originalName
+ + " from "
+ + sourceFunction.apply(originalName);
+ Function<Object, String> expansionSourceFunction = o -> sourceMessage;
maybeAddDeprecationWarning(field);
List<String> unparsed =
parse(priority, expansionSourceFunction, null, originalName, expansion);
@@ -582,12 +581,13 @@ class OptionsParserImpl {
// TODO(bazel-team): this should happen when the option is encountered.
if (!implicitRequirements.isEmpty()) {
for (Map.Entry<String, List<String>> entry : implicitRequirements.entrySet()) {
+ String sourceMessage =
+ "implicit requirement of option --"
+ + entry.getKey()
+ + " from "
+ + sourceFunction.apply(entry.getKey());
Function<Object, String> requirementSourceFunction =
- Functions.constant(
- "implicit requirement of option --"
- + entry.getKey()
- + " from "
- + sourceFunction.apply(entry.getKey()));
+ o -> sourceMessage;
List<String> unparsed = parse(priority, requirementSourceFunction, entry.getKey(), null,
entry.getValue());