On Mon, 31 Aug 2026 21:58:17 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 nine additional 
> commits since the last revision:
> 
>  - Merge remote-tracking branch 'jdk-sandbox/json' into 
> JDK-8381976-Implementation-for-Simple-JSON-API
>  - offset -> cursorPos in JsonParser
>  - Consolidated copyOf() in JsonArrayImpl constructor
>  - Make Utils.composeTypeError derive expected from Class name
>  - Refactor Frame classes in JG into records
>  - Give initial size to StringBuilder
>  - initSb() -> StringBuilder::new
>  - Making Util class final
>  - Clarify JSON string -> text in toDisplayString

src/jdk.incubator.json/share/classes/jdk/incubator/json/impl/JsonObjectImpl.java
 line 45:

> 43:     private final char[] doc;
> 44: 
> 45:     public JsonObjectImpl(Map<String, JsonValue> map) {

We might consider using SequencedMap for these internal constructors, as well 
as within the machinery within the parser. This will make it a bit clearer 
where we're trying to preserve order, I think. However, this does NOT imply 
that `asMap()` should return a SequencedMap. That's an orthogonal discussion.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/32282#discussion_r3900856029

Reply via email to