Skip to content

Commit 53fdc53

Browse files
authored
Fix confusing description of JsonPrimitive.content (Kotlin#2670)
- clarifies that JsonPrimitive.content will return `"null"` rather than `null` - include the suggestion that `contentOrNull` should be used if the JsonPrimitive could be `JsonNull` - fix potentially misleading usage in `JsonTreeTest`
1 parent e35c28d commit 53fdc53

File tree

2 files changed

+3
-2
lines changed
  • formats

2 files changed

+3
-2
lines changed

formats/json-tests/commonTest/src/kotlinx/serialization/json/serializers/JsonTreeTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ class JsonTreeTest : JsonTestBase() {
4747
assertTrue(elem.getValue("c") is JsonArray)
4848

4949
val array = elem.getValue("c").jsonArray
50-
assertEquals("foo", array.getOrNull(0)?.jsonPrimitive?.content)
50+
assertEquals("foo", array.getOrNull(0)?.jsonPrimitive?.contentOrNull)
5151
assertEquals(100500, array.getOrNull(1)?.jsonPrimitive?.int)
5252

5353
assertTrue(array[2] is JsonObject)

formats/json/commonMain/src/kotlinx/serialization/json/JsonElement.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,8 @@ public sealed class JsonPrimitive : JsonElement() {
4141
public abstract val isString: Boolean
4242

4343
/**
44-
* Content of given element without quotes. For [JsonNull] this methods returns `null`
44+
* Content of given element without quotes. For [JsonNull], this method returns a "null" string.
45+
* [JsonPrimitive.contentOrNull] should be used for [JsonNull] to get a `null`.
4546
*/
4647
public abstract val content: String
4748

0 commit comments

Comments
 (0)