RFR: 8314592: Add shortcut to SymbolLookup::find
Maurizio Cimadamore
mcimadamore at openjdk.org
Thu Apr 11 11:43:42 UTC 2024
On Mon, 25 Mar 2024 14:56:23 GMT, Per Minborg <pminborg at openjdk.org> wrote:
> While `SymbolLookup` correctly uses an `Optional` return to denote whether a symbol has been found by the lookup or not (which enables composition of symbol lookups), many clients end up just calling `Optional::get`, or `Optional::orElseThrow()` on the result.
>
> This PR proposes to add a convenience method `SymbolLookup::findOrThrow` that will do a lookup and, if no symbol can be found, throws an `IllegalArgumentException` with a relevant exception message.
src/java.base/share/classes/java/lang/foreign/SymbolLookup.java line 152:
> 150:
> 151: /**
> 152: * {@return the address of the symbol with the provided {@code name} or throws an
I suggest using the same javadoc structure as the main `find` method. Note that there we have a summary, then a more detailed `@return` which talks about zero length memory segments. This should do the same.
src/java.base/share/classes/java/lang/foreign/SymbolLookup.java line 155:
> 153: * {@linkplain IllegalArgumentException} if no such address can be found}
> 154: *<p>
> 155: * This is a convenience method that provides better exception messages compared
I would reframe this as: "this is equivalent to the following code, but with better exception message" (for consistency with other API points in FFM where we show what a method boils down to)
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/18474#discussion_r1560889723
PR Review Comment: https://git.openjdk.org/jdk/pull/18474#discussion_r1560893974
More information about the shenandoah-dev
mailing list