diff options
author | Taras Tsugrii <ttsugrii@fb.com> | 2018-07-25 14:09:04 -0700 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2018-07-25 14:10:29 -0700 |
commit | 03bd99d4a4a6ae51b45907fc4b8677eeafe1d6c8 (patch) | |
tree | b589369de5b229a6abbe6ca0afba22a98afa4269 /src/main/java/com/google/devtools/build/lib/syntax/FuncallExpression.java | |
parent | 7fe7047e6e6aec82f78cca366f0604dd606a5e7e (diff) |
[Perf] Remove unnecessary ImmutableMap.copyOf invocation.
`keyWordArgs` is already `ImmutableMap<String, Object>` and `copyOf` contains enough
overhead to show up on parse profiles.
Closes #5651.
PiperOrigin-RevId: 206051798
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.java | 6 |
1 files changed, 2 insertions, 4 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 6bd4c9e2e8..53b892dc37 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 @@ -836,16 +836,14 @@ public final class FuncallExpression extends Expression { : positionals.subList(1, positionals.size()); if (function != null) { - return function.call( - positionalArgs, ImmutableMap.copyOf(keyWordArgs), call, env); + return function.call(positionalArgs, keyWordArgs, call, env); } else if (fieldValue != null) { if (!(fieldValue instanceof BaseFunction)) { throw new EvalException( location, String.format("struct field '%s' is not a function", method)); } function = (BaseFunction) fieldValue; - return function.call( - positionalArgs, ImmutableMap.copyOf(keyWordArgs), call, env); + return function.call(positionalArgs, keyWordArgs, call, env); } else { // When calling a Java method, the name is not in the Environment, // so evaluating 'function' would fail. |