[
https://issues.apache.org/jira/browse/CALCITE-4103?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17151616#comment-17151616
]
Julian Hyde commented on CALCITE-4103:
--------------------------------------
I changed the status to 'won't fix' because it is a valid request.
The issues has never cropped up in my experience, because code always seems to
use {{RelBuilder}} or {{SetOp.create(ImmutableList.of(left, right))}}.
I agree that if we did it, it would not cause compatibility issues (due to
Java's type erasure). If we did it, we should do it for all constructors and
create methods of SetOp and sub-classes.
> SetOp and Union should accept RelNode subclasses in the constructor
> -------------------------------------------------------------------
>
> Key: CALCITE-4103
> URL: https://issues.apache.org/jira/browse/CALCITE-4103
> Project: Calcite
> Issue Type: Improvement
> Components: core
> Reporter: Haisheng Yuan
> Priority: Major
>
> Currently only list of RelNode is accepted:
> {code:java}
> protected SetOp(RelOptCluster cluster, RelTraitSet traits,
> List<RelNode> inputs, SqlKind kind, boolean all) {}
> {code}
> If I have a List of EnumerableTableScan, the compiler will complain. It might
> be better to change to List<? extends RelNode>. I think this can still keep
> the backward compatibility.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)