[
https://issues.apache.org/jira/browse/CALCITE-6571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17881091#comment-17881091
]
Julian Hyde commented on CALCITE-6571:
--------------------------------------
Yes, I think we want to discourage people from instantiating RelOptRule
directly. Ultimately I would like to replace RelOptRule with RelRule but I
doubt that will ever be possible.
> Impossible to create/extend RelOptRule without using deprecated APIs
> --------------------------------------------------------------------
>
> Key: CALCITE-6571
> URL: https://issues.apache.org/jira/browse/CALCITE-6571
> Project: Calcite
> Issue Type: Bug
> Affects Versions: 1.37.0
> Reporter: Stamatis Zampetakis
> Priority: Major
>
> The {{RelOptRule}} class is not deprecated but all the static factories that
> create operands were deprecated as part of CALCITE-3923.
> The deprecation link instructs the user to use {{RelRule.OperandBuilder}} butÂ
> the latter is an interface and its concrete implementations is private and
> inaccessible outside the {{RelRule}} class.
> In a nutshell, any rule that extends directly from {{RelOptRule}} is forced
> to use deprecated APIs.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)