On Tue, 1 Sep 2026 17:31:38 GMT, Naoto Sato <[email protected]> wrote:
>> This PR implements [JEP 540: Simple JSON API >> (Incubator)](https://openjdk.org/jeps/540). >> >> It adds the `jdk.incubator.json` module which provides APIs for reading and >> writing JSON documents as specified by [RFC >> 8259](https://datatracker.ietf.org/doc/html/rfc8259). This is an incubating >> API. >> >> API documentation: >> https://cr.openjdk.org/~naoto/json/javadoc/api/jdk.incubator.json/module-summary.html >> Co-authored-by: Justin Lu >> ([@justin-curtis-lu](https://github.com/justin-curtis-lu)), Stuart Marks >> ([@stuart-marks](https://github.com/stuart-marks)) >> >> --------- >> - [x] I confirm that I make this contribution in accordance with the >> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). > > Naoto Sato has updated the pull request incrementally with two additional > commits since the last revision: > > - Merge remote-tracking branch 'jdk-sandbox/json' into > JDK-8381976-Implementation-for-Simple-JSON-API > - Use SequencedMap type for the member field src/jdk.incubator.json/share/classes/jdk/incubator/json/impl/JsonStringImpl.java line 39: > 37: private final int endOffset; > 38: private final boolean hasEscape; > 39: private final boolean fromFactory; It would be helpful here, or in the class comment, to document what the various fields mean and their invariants, for example, the meaning of hasEscape, whether there are surrounding quotes, and the differing roles of doc, jsonStr, and value. This also applies to other Impl objects with non-obvious state, such as JsonNumberImpl. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/32282#discussion_r3910209534
