bazel syntax: delete BaseFunction.name field
Leave getName method abstract.
Some subclasses want a field, others need a method.
BaseFunction is one step closer to becoming an interface.
Also:
- eliminate ProviderFromFunction, which was not an abstraction but merely
code-reuse hack.
- inline FakeStarlarkCallable class into sole point of use.
PiperOrigin-RevId: 280185359
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java b/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java
index ff07322..231b373 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java
@@ -2088,7 +2088,12 @@
"values_only_field",
"fromValues",
"values_only_method",
- new BuiltinFunction("values_only_method", FunctionSignature.of()) {
+ new BuiltinFunction(FunctionSignature.of()) {
+ @Override
+ public String getName() {
+ return "values_only_method";
+ }
+
public String invoke() {
return "fromValues";
}
@@ -2096,7 +2101,12 @@
"collision_field",
"fromValues",
"collision_method",
- new BuiltinFunction("collision_method", FunctionSignature.of()) {
+ new BuiltinFunction(FunctionSignature.of()) {
+ @Override
+ public String getName() {
+ return "collision_method";
+ }
+
public String invoke() {
return "fromValues";
}