[
https://issues.apache.org/jira/browse/CALCITE-3483?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16970498#comment-16970498
]
Haisheng Yuan commented on CALCITE-3483:
----------------------------------------
Hi [~zabetak], thanks for the comment. I forgot to mention making constructor
public. We do need to subclass RexLiteral, because {{printAsJava}} needs to be
customized according to our system, e.g. we have different additional types, or
we want different decimal format etc.. So it would be great to allow it to be
extensible and customizable.
> 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)