On Tue, 16 May 2023 22:36:51 GMT, Maurizio Cimadamore <[email protected]>
wrote:
>> This patch adds a simpler method for composing symbol lookups. It is common
>> for clients to chain multiple symbol lookups together, e.g. to find a symbol
>> in multiple libraries.
>>
>> A new instance method, namely `SymbolLookup::or` is added, which first
>> searches a symbol in the first lookup, and, if that fails, proceeds to
>> search the symbol in the provided lookup.
>>
>> We have considered alternatives to express this, such as a static factory
>> `SymbolLookup::ofComposite` but settled on this because of the similarity
>> with `Optional::or`.
>
> Maurizio Cimadamore has updated the pull request incrementally with one
> additional commit since the last revision:
>
> Tweak javadoc
Isn't it already possible to easily create a composed `SymbolLookup`?
SymbolLookup lookUp = name -> library1.find(name)
.or(() -> library2.find(name))
.or(() -> loader.find(name));
The proposed method may be a bit nicer, but it is sort of duplicating what
`Optional::or` was intended for.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/13954#issuecomment-1550560151