[
https://issues.apache.org/jira/browse/GROOVY-11615?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Paul King updated GROOVY-11615:
-------------------------------
Summary: Groovy has trouble type inferencing for Collections. The offender
is Collectors.asBlah set of methods. It needs the generic type <A.Y.X> to be
added explicitly (was: Groovy has trouble type inferencing for Collections.
The offender is Collections.asBlah set of methods. It needs the generic type
<A.Y.X> to be added explicitly)
> Groovy has trouble type inferencing for Collections. The offender is
> Collectors.asBlah set of methods. It needs the generic type <A.Y.X> to be
> added explicitly
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: GROOVY-11615
> URL: https://issues.apache.org/jira/browse/GROOVY-11615
> Project: Groovy
> Issue Type: Bug
> Components: Static Type Checker
> Affects Versions: 4.0.24
> Reporter: Saravanan
> Priority: Minor
>
> {code:java}
> public class Interfaces {
> public String myThing() {
> var myArray = Arrays.asList("123", "1354");
> var mySet = myArray.stream().collect(Collectors.toSet());
>
> // This call will fail
> // Failed to find class method 'getBytes(java.lang.Object)' or
> // instance method 'getBytes()' for the type: java.lang.String
> // To make it work change the previous line to
> // var mySet =
> myArray.stream().collect(Collectors.<String>toSet());
> mySet.forEach(String::getBytes);
> }
> }{code}
> Most Collectors.<methods> need a fully qualified type for the generic
> parameter, without which the compile will fail (sometimes detect an Object
> type instead of the right one)
--
This message was sent by Atlassian Jira
(v8.20.10#820010)