You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Stamatis Zampetakis (Jira)" <ji...@apache.org> on 2019/11/08 08:33:00 UTC

[jira] [Commented] (CALCITE-3483) Make RexLiteral member fields accessible by sub-class

    [ https://issues.apache.org/jira/browse/CALCITE-3483?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16969943#comment-16969943 ] 

Stamatis Zampetakis commented on CALCITE-3483:
----------------------------------------------

The current implementation of {{RexLiteral}} has many indications that it was not meant to be subclassed (package private constructor, no protected members/methods, etc.). 

Can you share a bit more info regarding your needs? I am not against subclassing I am just curious about the use-case.  

> Make RexLiteral member fields accessible by sub-class
> -----------------------------------------------------
>
>                 Key: CALCITE-3483
>                 URL: https://issues.apache.org/jira/browse/CALCITE-3483
>             Project: Calcite
>          Issue Type: Improvement
>          Components: core
>            Reporter: Haisheng Yuan
>            Priority: Major
>
> RexLiteral may be sub-classed and some methods may be overridden. e.g. {{printAsJava}}. But currently, RexLiteral fields are private, sub-classes can't access these fields, which makes methods like {{printAsJava}} meaningless to be overridden. We recommend make RexLiteral member fields protected, so that we can sub-class it, and customize the behavior of methods such as {{printAsJava}}. Does it make sense?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)