You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@drill.apache.org by ar...@apache.org on 2020/03/25 16:34:29 UTC
[drill] branch master updated: DRILL-7663: Code refactor to
DefaultFunctionResolver
This is an automated email from the ASF dual-hosted git repository.
arina pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/drill.git
The following commit(s) were added to refs/heads/master by this push:
new 83bc8e6 DRILL-7663: Code refactor to DefaultFunctionResolver
83bc8e6 is described below
commit 83bc8e63586051962a6ab39731d3c0ae19b334d1
Author: weijie.tong <we...@alipay.com>
AuthorDate: Wed Mar 25 20:00:44 2020 +0800
DRILL-7663: Code refactor to DefaultFunctionResolver
---
.../apache/drill/exec/resolver/DefaultFunctionResolver.java | 11 ++++-------
1 file changed, 4 insertions(+), 7 deletions(-)
diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/resolver/DefaultFunctionResolver.java b/exec/java-exec/src/main/java/org/apache/drill/exec/resolver/DefaultFunctionResolver.java
index b768792..ae3c68b 100644
--- a/exec/java-exec/src/main/java/org/apache/drill/exec/resolver/DefaultFunctionResolver.java
+++ b/exec/java-exec/src/main/java/org/apache/drill/exec/resolver/DefaultFunctionResolver.java
@@ -19,8 +19,7 @@ package org.apache.drill.exec.resolver;
import java.util.LinkedList;
import java.util.List;
-
-import org.apache.drill.shaded.guava.com.google.common.collect.Lists;
+import java.util.stream.Collectors;
import org.apache.drill.common.expression.FunctionCall;
import org.apache.drill.common.expression.LogicalExpression;
import org.apache.drill.common.types.TypeProtos;
@@ -38,12 +37,10 @@ public class DefaultFunctionResolver implements FunctionResolver {
int currcost = Integer.MAX_VALUE;
DrillFuncHolder bestmatch = null;
final List<DrillFuncHolder> bestMatchAlternatives = new LinkedList<>();
-
+ List<TypeProtos.MajorType> argumentTypes = call.args().stream()
+ .map(LogicalExpression::getMajorType)
+ .collect(Collectors.toList());
for (DrillFuncHolder h : methods) {
- final List<TypeProtos.MajorType> argumentTypes = Lists.newArrayList();
- for (LogicalExpression expression : call.args()) {
- argumentTypes.add(expression.getMajorType());
- }
currcost = TypeCastRules.getCost(argumentTypes, h);
// if cost is lower than 0, func implementation is not matched, either w/ or w/o implicit casts