xref: /aosp_15_r20/external/kotlinx.serialization/guide/example/example-json-20.kt (revision 57b5a4a64c534cf7f27ac9427ceab07f3d8ed3d8)
1 // This file was automatically generated from json.md by Knit tool. Do not edit.
2 package example.exampleJson20
3 
4 import kotlinx.serialization.*
5 import kotlinx.serialization.json.*
6 
7 import java.math.BigDecimal
8 
<lambda>null9 val format = Json { prettyPrint = true }
10 
mainnull11 fun main() {
12     val pi = BigDecimal("3.141592653589793238462643383279")
13 
14     // use JsonUnquotedLiteral to encode raw JSON content
15     val piJsonLiteral = JsonUnquotedLiteral(pi.toString())
16 
17     val piJsonDouble = JsonPrimitive(pi.toDouble())
18     val piJsonString = JsonPrimitive(pi.toString())
19 
20     val piObject = buildJsonObject {
21         put("pi_literal", piJsonLiteral)
22         put("pi_double", piJsonDouble)
23         put("pi_string", piJsonString)
24     }
25 
26     println(format.encodeToString(piObject))
27 }
28