[
https://issues.apache.org/jira/browse/CALCITE-4226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17190905#comment-17190905
]
Vladimir Sitnikov commented on CALCITE-4226:
--------------------------------------------
I see Mappings.asList is like Map#multi-get.
What I mean is an additional method would be helpful if it adds extra
information to the exception message in case some of the keys are not found
(e.g. print the actual map contents).
It could be like Map#getValue in Kotlin
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/get-value.html
that includes the missing key to the exception message.
> Mappings#asList might return null for negative ordinals which would result in
> later NPEs
> ----------------------------------------------------------------------------------------
>
> Key: CALCITE-4226
> URL: https://issues.apache.org/jira/browse/CALCITE-4226
> Project: Calcite
> Issue Type: Sub-task
> Components: core
> Affects Versions: 1.25.0
> Reporter: Vladimir Sitnikov
> Priority: Major
>
> It looks like none of the uses for Mappings#asList is ready to handle nulls.
> So far there are 6 usages of the method, however, it is puzzling if NPE is
> expected behavior there.
> I'm inclined to create two variations of the method:
> 1) {{List<@Nullable Integer> asList(...)}} -- keep the current method current
> one
> 2) {{List<@NonNull Integer> asList(...)}} -- throw exceptions on invalid
> mappings
--
This message was sent by Atlassian Jira
(v8.3.4#803005)