org.apache.hadoop.hive.ql.exec
Class ComparisonOpMethodResolver
java.lang.Object
org.apache.hadoop.hive.ql.exec.ComparisonOpMethodResolver
- All Implemented Interfaces:
- UDFMethodResolver
public class ComparisonOpMethodResolver
- extends Object
- implements UDFMethodResolver
The class implements the method resolution for operators like
(> < <= >= = <>). The resolution logic is as follows:
1. If one of the parameters is null, then it resolves to
evaluate(Double, Double)
2. If both of the parameters are of type T, then it resolves to
evaluate(T, T)
3. If 1 and 2 fails then it resolves to evaluate(Double, Double).
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ComparisonOpMethodResolver
public ComparisonOpMethodResolver(Class<? extends UDF> udfClass)
- Constuctor.
getEvalMethod
public Method getEvalMethod(List<TypeInfo> argTypeInfos)
throws AmbiguousMethodException
- Description copied from interface:
UDFMethodResolver
- Gets the evaluate method for the UDF given the parameter types.
- Specified by:
getEvalMethod
in interface UDFMethodResolver
- Parameters:
argTypeInfos
- The list of the argument types that need to matched with the evaluate
function signature.
- Throws:
AmbiguousMethodException
Copyright © 2009 The Apache Software Foundation