RFR 8143964: JShell API: convert query responses to Stream instead of List/Collection
Robert Field
robert.field at oracle.com
Tue Aug 9 20:24:02 UTC 2016
On 08/09/16 13:04, Paul Sandoz wrote:
> Hi,
>
> Looks ok, just some minor stuff.
Thanks, Paul, for the review. See below.
>
>
> JShellTool
> —
>
> 1027 Stream<PersistentSnippet> dropableSnippets() {
> 1028 return state.snippets()
> 1029 .filter(sn -> state.status(sn).isActive() && sn instanceof PersistentSnippet)
> 1030 .map(sn -> (PersistentSnippet) sn);
> 1031 }
>
>
> Not sure if you can do PersistentSnippet.class::cast, if so up to you.
Is that preferred?
>
>
> 1895 Stream<Snippet> sns = at.hasOption("-all")
> 1896 ? state.snippets()
> 1897 : state.snippets().filter(this::mainActive);
> 1898 Iterator<Snippet> it = sns.iterator();
> 1899 while (it.hasNext()) {
> 1900 Snippet sn = it.next();
> 1901 writer.write(sn.source());
> 1902 writer.write("\n");
> 1903 }
>
> You can use forEach instead of an iterator.
Actually, the "write" can thrown IOException.
Thanks,
Robert
>
> Paul.
>
>> On 8 Aug 2016, at 23:15, Robert Field <robert.field at oracle.com> wrote:
>>
>> Please review this deferred API review request.
>> Basically changing List<*> return to Stream<*> return for seven methods:
>> Stream<Snippet> snippets()
>> Stream<VarSnippet> variables()
>> Stream<MethodSnippet> methods()
>> Stream<TypeDeclSnippet> types()
>> Stream<ImportSnippet> imports()
>> Stream<Diag> diagnostics(Snippet snippet)
>> Stream<String> unresolvedDependencies(DeclarationSnippet snippet)
>>
>> Bug:
>> https://bugs.openjdk.java.net/browse/JDK-8143964
>>
>> Webrev:
>> http://cr.openjdk.java.net/~rfield/8143964v0.webrev/
>>
>> Spec:
>> http://cr.openjdk.java.net/~rfield/8143964v0.jshellAPI/jdk/jshell/JShell.html
>>
>> Specdiff:
>> http://cr.openjdk.java.net/~rfield/8143964v0.specdiff/jdk/jshell/JShell.html
>>
>> Thanks,
>> Robert
>>
More information about the kulla-dev
mailing list