[ 
https://issues.apache.org/jira/browse/FLINK-5881?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15898850#comment-15898850
 ] 

ASF GitHub Bot commented on FLINK-5881:
---------------------------------------

Github user KurtYoung commented on a diff in the pull request:

    https://github.com/apache/flink/pull/3389#discussion_r104600115
  
    --- Diff: 
flink-libraries/flink-table/src/main/scala/org/apache/flink/table/codegen/calls/ScalarFunctionCallGen.scala
 ---
    @@ -44,14 +44,24 @@ class ScalarFunctionCallGen(
           operands: Seq[GeneratedExpression])
         : GeneratedExpression = {
         // determine function signature and result class
    -    val matchingSignature = getSignature(scalarFunction, signature)
    +    val matchingMethod = getEvalMethod(scalarFunction, signature)
           .getOrElse(throw new CodeGenException("No matching signature 
found."))
    +    val matchingSignature = matchingMethod.getParameterTypes
         val resultClass = getResultTypeClass(scalarFunction, matchingSignature)
     
    +    // zip for variable signatures
    +    var paramToOperands = matchingSignature.zip(operands)
    +    var i = paramToOperands.length
    +    while (i < operands.length
    --- End diff --
    
    Forget zipAll, i think you can write codes like this instead of a while loop
    ```
        if (operands.length > matchingSignature.length) {
          operands.drop(matchingSignature.length).foreach(op =>
            paramToOperands = paramToOperands :+ 
(matchingSignature.last.getComponentType, op))
        }
    ```


> ScalarFunction(UDF) should support variable types and variable arguments      
> -------------------------------------------------------------------------
>
>                 Key: FLINK-5881
>                 URL: https://issues.apache.org/jira/browse/FLINK-5881
>             Project: Flink
>          Issue Type: Sub-task
>            Reporter: Zhuoluo Yang
>            Assignee: Zhuoluo Yang
>
> As a sub-task of FLINK-5826. We would like to support the ScalarFunction 
> first and make the review a little bit easier.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to