Github user mn-mikke commented on a diff in the pull request: https://github.com/apache/spark/pull/21687#discussion_r200850107 --- Diff: sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/Expression.scala --- @@ -695,6 +695,56 @@ abstract class TernaryExpression extends Expression { } } +/** + * A trait resolving nullable, containsNull, valueContainsNull flags of the output date type. + * This logic is usually utilized by expressions combining data from multiple child expressions + * of non-primitive types (e.g. [[CaseWhen]]). + */ +trait NonPrimitiveTypeMergingExpression extends Expression --- End diff -- ```Complex``` also sounds better to me :-) But I would like to stay consistent of the terminology (see a [comment](https://github.com/apache/spark/pull/20938/files/eeab72786aa0c28b123cc21a87bd8619a63831bd#r181345710) from a different PR.) What about using some neutral name like ```NullFlagsMergingExpression``` or similar?
--- --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org