google / google/gson

The "builder" API

Open
#2,958 5 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Java
Stars
24.2k
Forks
4.5k
Avg merge
6d 4h
Merged PRs (30d)
12

Description

## Description

(Idea by @eamonnmcmanus )

We want to build a JsonObject/Array in a simple way like:

```java
Map user = Map.of(
"id", 1001,
"name", "Alice",
"age", 25,
"tags", List.of("Java", "Kotlin", "Scala"),
"address", Map.of("city", "Shanghai", "street", "Xujiahui")
);

JsonObject userJson = JsonObject.parse(user);
```

However, because of Java's type system, we can only do:
```java
// JsonObject.class
static JsonObject parse(Map)
static JsonObject of(Map)

// JsonArray.class
static JsonArray parse(Iterable)
static JsonArray of(Iterable)

// JsonPrimitive
static JsonPrimitive parse(Object) // ???

// JsonElelement
static JsonElement parse(Object)
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.