xref: /aosp_15_r20/external/kotlinx.serialization/guide/example/example-classes-02.kt (revision 57b5a4a64c534cf7f27ac9427ceab07f3d8ed3d8)
1*57b5a4a6SAndroid Build Coastguard Worker // This file was automatically generated from basic-serialization.md by Knit tool. Do not edit.
2*57b5a4a6SAndroid Build Coastguard Worker package example.exampleClasses02
3*57b5a4a6SAndroid Build Coastguard Worker 
4*57b5a4a6SAndroid Build Coastguard Worker import kotlinx.serialization.*
5*57b5a4a6SAndroid Build Coastguard Worker import kotlinx.serialization.json.*
6*57b5a4a6SAndroid Build Coastguard Worker 
7*57b5a4a6SAndroid Build Coastguard Worker @Serializable
8*57b5a4a6SAndroid Build Coastguard Worker class Project private constructor(val owner: String, val name: String) {
9*57b5a4a6SAndroid Build Coastguard Worker     constructor(path: String) : this(
10*57b5a4a6SAndroid Build Coastguard Worker         owner = path.substringBefore('/'),
11*57b5a4a6SAndroid Build Coastguard Worker         name = path.substringAfter('/')
12*57b5a4a6SAndroid Build Coastguard Worker     )
13*57b5a4a6SAndroid Build Coastguard Worker 
14*57b5a4a6SAndroid Build Coastguard Worker     val path: String
15*57b5a4a6SAndroid Build Coastguard Worker         get() = "$owner/$name"
16*57b5a4a6SAndroid Build Coastguard Worker }
17*57b5a4a6SAndroid Build Coastguard Worker 
mainnull18*57b5a4a6SAndroid Build Coastguard Worker fun main() {
19*57b5a4a6SAndroid Build Coastguard Worker     println(Json.encodeToString(Project("kotlin/kotlinx.serialization")))
20*57b5a4a6SAndroid Build Coastguard Worker }
21