Proposed API for JEP 259: Stack-Walking API (original) (raw)
Remi Forax forax at univ-mlv.fr
Sat Oct 31 18:29:40 UTC 2015
- Previous message: Proposed API for JEP 259: Stack-Walking API
- Next message: Proposed API for JEP 259: Stack-Walking API
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi Mandy, I've crawled the code and the documentation again.
In the doc and in the code, a lambda with one parameter doesn't require parenthesis around the parameter, (s) -> s.doSomething() should be s -> s.doSomething().
In the doc of StackWalker, in the first example, the local variable 'frame' should be named 'callerClass'
In the doc of getCallerClass(), the first example do a skip(2) which i believe is not necessary anymore, also instead of Optional.orElse, orElseGet is better because it avoids to evaluate Thread.currentThread().getClass() if not necessary.
So the example should be: walk(s -> s.map(StackFrame::getDeclaringClass) .findFirst()).orElseGet(() -> Thread.currentThread().getClass());
In the second example, the field walker should be declared 'final'.
And as i said earlier, the signature of walk() is: T walk(Function<? super Stream<StackWalker.StackFrame>, ? extends T> function, IntUnaryOperator batchSizeMapper)
cheers, Rémi
----- Mail original -----
De: forax at univ-mlv.fr À: "Mandy Chung" <mandy.chung at oracle.com> Cc: core-libs-dev at openjdk.java.net Envoyé: Samedi 31 Octobre 2015 19:06:11 Objet: Re: Proposed API for JEP 259: Stack-Walking API
Hi Mandy, ----- Mail original ----- > De: "Mandy Chung" <mandy.chung at oracle.com> > À: "Remi Forax" <forax at univ-mlv.fr>, "David M. Lloyd" > <david.lloyd at redhat.com> > Cc: core-libs-dev at openjdk.java.net > Envoyé: Vendredi 30 Octobre 2015 23:35:02 > Objet: Re: Proposed API for JEP 259: Stack-Walking API > > > > On Oct 30, 2015, at 1:26 PM, Remi Forax <forax at univ-mlv.fr> wrote: > > > > In StackWalker.Option, > > i think that CLASSREFERENCE can be renamed to KEEPCLASSREFERENCE, > > maybe > > ? > > What about RETAINCLASSREFERENCE? yes, it's a better name. > > I have updated the javadoc in place: > http://cr.openjdk.java.net/~mchung/jdk9/jep259/api/java/lang/StackWalker.html > > Changes include: > - CLASSREFERENCE renamed to RETAINCLASSREFERENCE > - remove StackWalker.WalkerOption interface > - the batchSizeMapper argument is of IntUnaryOperator type. > > Thanks for the feedback, Remi and David. > Mandy Rémi
- Previous message: Proposed API for JEP 259: Stack-Walking API
- Next message: Proposed API for JEP 259: Stack-Walking API
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]