On Mon, 7 Oct 2024 04:44:43 GMT, Chen Liang <li...@openjdk.org> wrote:
>> src/java.base/share/classes/java/io/Reader.java line 172: >> >>> 170: Objects.requireNonNull(source); >>> 171: >>> 172: return new Reader() { >> >> Maybe make this into a package‑private `CharSequenceReader` so that >> [`StringReader::close()`] doesn’t have to use a try‑catch. >> >> [`StringReader::close()`]: >> https://docs.oracle.com/en/java/javase/23/docs/api/java.base/java/io/StringReader.html#close() > > I don't think that try-catch is too much of a bloat compared to the extra > license header and imports from the explicit `CharSequenceReader.java` file. > Maybe make this into a package‑private `CharSequenceReader` so that > [`StringReader::close()`](https://docs.oracle.com/en/java/javase/23/docs/api/java.base/java/io/StringReader.html#close()) > doesn’t have to use a try‑catch. This is exactly the opposite of what Alan and me had in mind: It piles up the stack of special-case classes. Instead, I do agree with Chen regarding code bloat. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21371#discussion_r1791300193