package Ġde . j ln str k . transit . api . tri as . serializer Ċ Ċ import Ġcom . so y wiz . k lock . ISO 8 6 0 1 Ċ import Ġcom . so y wiz . k lock . format Ċ import Ġcom . so y wiz . k lock . parse Time Ċ import Ġde . j ln str k . transit . util . Local Time Ċ import Ġkotlinx . serialization . K Serializer Ċ import Ġkotlinx . serialization . Serializer Ċ import Ġkotlinx . serialization . descriptors . Primitive Kind Ċ import Ġkotlinx . serialization . descriptors . Primitive Serial Descriptor Ċ import Ġkotlinx . serialization . descriptors . Serial Descriptor Ċ import Ġkotlinx . serialization . encoding . Decoder Ċ import Ġkotlinx . serialization . encoding . Encoder Ċ Ċ @ Serializer ( for Class Ġ= ĠLocal Time :: class ) Ċ public Ġobject ĠTime Serializer Ġ: ĠK Serializer < Local Time > Ġ{ ĊĠĠĠ Ġoverride Ġval Ġdescriptor : ĠSerial Descriptor Ġ= ĊĠĠĠĠĠĠĠ ĠPrimitive Serial Descriptor (" Time ", ĠPrimitive Kind . STRING ) ĊĊĠĠĠ Ġoverride Ġfun Ġserialize ( encoder : ĠEncoder , Ġvalue : ĠLocal Time ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġencoder . encode String ( ISO 8 6 0 1 . TIME . format ( value )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize ( decoder : ĠDecoder ): ĠLocal Time Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠISO 8 6 0 1 . TIME . parse Time ( decoder . decode String ()) ĊĠĠĠ Ġ} Ċ }