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

Julian Hyde edited comment on CALCITE-4099 at 7/10/20, 12:21 AM:
-----------------------------------------------------------------

Maybe they should be brought into {{ReturnTypeInference}}.

I know that {{ReturnTypeInference}} only says whether the return MAY be null, 
whereas {{Strong.Policy}} and {{NullPolicy}} says when it MUST be null and MUST 
NOT be null (based on runtime values). But still, if {{ReturnTypeInference}} 
knows the {{NullPolicy}} is {{STRICT}} (for example) then the nullability of 
the return is fully determined by the arguments.


was (Author: julianhyde):
Maybe they should be brought into {{ReturnTypeInference}}.

I know that {{ReturnTypeInference}} only says whether the return MAY be null, 
whereas {{Strong.Policy}} and {{NullPolicy}} says when it MUST be null and MUST 
NOT be null (based on runtime values). But still, if {{ReturnTypeInference}} 
knows the {{NullPolicy}} is {{STRICT}} 
 (for example) then the nullability of the return is fully determined by the 
arguments.

> Unify Strong.Policy and NullPolicy
> ----------------------------------
>
>                 Key: CALCITE-4099
>                 URL: https://issues.apache.org/jira/browse/CALCITE-4099
>             Project: Calcite
>          Issue Type: Task
>          Components: core
>            Reporter: Ruben Q L
>            Priority: Minor
>
> (discussion about this ticket started in CALCITE-4094)
> {{Strong.Policy}} and {{NullPolicy}} are two different enum that represent 
> grosso-modo the same thing. The former is mostly used on the simplifier, and 
> the latter on the code generation.
> To be studied if we could unify both entities and make it available through 
> the SqlOperator.



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

Reply via email to