Github user fhueske commented on a diff in the pull request: https://github.com/apache/flink/pull/5132#discussion_r159761372 --- Diff: flink-libraries/flink-table/src/main/scala/org/apache/flink/table/api/TableEnvironment.scala --- @@ -791,92 +824,109 @@ abstract class TableEnvironment(val config: TableConfig) { * Returns field names and field positions for a given [[TypeInformation]] and [[Array]] of * [[Expression]]. It does not handle time attributes but considers them in indices. * + * @param isReferenceByPosition schema mode see [[isReferenceByPosition()]] * @param inputType The [[TypeInformation]] against which the [[Expression]]s are evaluated. * @param exprs The expressions that define the field names. * @tparam A The type of the TypeInformation. * @return A tuple of two arrays holding the field names and corresponding field positions. */ - protected[flink] def getFieldInfo[A]( + protected def getFieldInfo[A]( + isReferenceByPosition: Boolean, --- End diff -- why not call `isReferenceByPosition()` inside of `getFieldInfo()`? It has all required parameters. Moreover, we only need to call it for tuple-like types that can be resolved by pos or name.
---