[ https://issues.apache.org/jira/browse/GROOVY-7350?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Shil Sinha updated GROOVY-7350: ------------------------------- Component/s: (was: groovy-jdk) groovy-runtime > findAll and findResults should take an optional 'collector' argument > -------------------------------------------------------------------- > > Key: GROOVY-7350 > URL: https://issues.apache.org/jira/browse/GROOVY-7350 > Project: Groovy > Issue Type: Improvement > Components: groovy-runtime > Reporter: Shil Sinha > Assignee: Guillaume Delcroix > > Currently, the only DGM methods that support providing a collection with > which to collect results are {{collect, collectNested, collectEntries}}, and > {{collectMany}}. > Without this ability for {{findAll}} and {{findResults}}, one has to convert > the resulting collection to the desired type after the fact, which results in > extra collections being created. > Example: > {code} > def list = [1, 2, 2, 6, 7, 9] > // we want to get the set of unique even numbers in the list > // creates new list and set > def oldAnswer = list.findAll { it % 2 == 0 }.toSet() > // only uses the given set > def newAnswer = list.findAll(new HashSet()) { it % 2 == 0 } > {code} > I have created a pull request with the necessary changes here: > https://github.com/groovy/groovy-core/pull/643 > The implementation is essentially the same as that of {{collect(collection, > collector, closure)}}. -- This message was sent by Atlassian JIRA (v6.3.4#6332)