xref: /aosp_15_r20/external/kotlinx.serialization/guide/example/example-classes-10.kt (revision 57b5a4a64c534cf7f27ac9427ceab07f3d8ed3d8)
1 // This file was automatically generated from basic-serialization.md by Knit tool. Do not edit.
2 package example.exampleClasses10
3 
4 import kotlinx.serialization.*
5 import kotlinx.serialization.json.*
6 
7 @Serializable
8 data class Project(
9     val name: String,
10     @EncodeDefault val language: String = "Kotlin"
11 )
12 
13 
14 @Serializable
15 data class User(
16     val name: String,
17     @EncodeDefault(EncodeDefault.Mode.NEVER) val projects: List<Project> = emptyList()
18 )
19 
mainnull20 fun main() {
21     val userA = User("Alice", listOf(Project("kotlinx.serialization")))
22     val userB = User("Bob")
23     println(Json.encodeToString(userA))
24     println(Json.encodeToString(userB))
25 }
26