aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/syntax/FuncallExpression.java
diff options
context:
space:
mode:
authorGravatar brandjon <brandjon@google.com>2017-12-07 14:30:04 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2017-12-07 14:32:12 -0800
commitdc2c55095f2060d1651cdcc873e189c61ca1e664 (patch)
tree84d7b481ed055230a27f615230c60e88f1284128 /src/main/java/com/google/devtools/build/lib/syntax/FuncallExpression.java
parentfdfd7f33b7d1b2b7708e255e0764e094df6ca7a7 (diff)
Register builtins with Runtime
This covers all builtins in classes that use SkylarkSignatureProcessor#configureSkylarkFunctions. Generally this means things you define with @SkylarkSignature. It is now an error to call configureSkylarkFunctions multiple times for the same class. It should only be called in static initializers. Runtime's static knowledge of builtins has been factored into Runtime.BuiltinRegistry. RELNOTES: None PiperOrigin-RevId: 178295926
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/syntax/FuncallExpression.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/syntax/FuncallExpression.java2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/FuncallExpression.java b/src/main/java/com/google/devtools/build/lib/syntax/FuncallExpression.java
index 2acfb21da2..833b20a7fb 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/FuncallExpression.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/FuncallExpression.java
@@ -616,7 +616,7 @@ public final class FuncallExpression extends Expression {
Location location = call.getLocation();
Object value = positionals.get(0);
ImmutableList<Object> positionalArgs = positionals.subList(1, positionals.size());
- BaseFunction function = Runtime.getFunction(EvalUtils.getSkylarkType(value.getClass()), method);
+ BaseFunction function = Runtime.getBuiltinRegistry().getFunction(value.getClass(), method);
Object fieldValue =
(value instanceof ClassObject) ? ((ClassObject) value).getValue(method) : null;
if (function != null) {