rubenada commented on code in PR #3668:
URL: https://github.com/apache/calcite/pull/3668#discussion_r2423071993
##########
core/src/main/java/org/apache/calcite/rel/type/RelDataTypeFactory.java:
##########
@@ -65,6 +65,15 @@ public interface RelDataTypeFactory {
*/
RelDataType createJavaType(Class clazz);
+ /**
+ * Creates a type that corresponds to a Java class, with a given family.
+ *
+ * @param clazz the Java class used to define the type
+ * @param family The family of the type, or null to infer
+ * @return canonical Java type descriptor
+ */
+ RelDataType createJavaType(Class clazz, @Nullable RelDataTypeFamily family);
Review Comment:
My understanding of @zabetak 's remark was the other way around.
IIANM your proposal would mean that all consumers implementing this (widely
used) interface will break upon upgrade, since they'd need to implement the new
method `createJavaType(Class clazz, @Nullable RelDataTypeFamily family)` ;
whereas having a default implementation for it delegating to
`createJavaType(Class clazz)` (as I, and I think @zabetak, proposed) would mean
that these consumers shall continue working as before upon upgrade.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]