import Ġcom . squareup . mos hi . M oshi Ċ import Ġio . kot lint est . properties . Gen Ċ import Ġio . kot lint est . properties . for All Ċ import Ġio . kot lint est . specs . String Spec Ċ Ċ data Ġclass ĠP izza ( val Ġname : ĠString , Ġval Ġprice : ĠInt ) Ċ Ċ fun ĠGen . Companion . p izza (): ĠGen < P izza > Ġ= ĠGen . bind ( Gen . int (), ĠGen . string ()) Ġ{ Ġprice , Ġname Ġ-> ĊĠĠĠ ĠP izza ( name , Ġprice ) Ċ } Ċ Ċ class ĠM oshi Properties Ġ: ĠString Spec () Ġ{ Ġinit Ġ{ ĊĠĠĠ Ġval Ġm oshi Ġ= ĠM oshi . Builder (). build () ĊĠĠĠ Ġval Ġadapter Ġ= Ġm oshi . adapter ( P izza :: class . java ) ĊĊĠĠĠ Ġ" Property : Ġserialize Ġand Ġun serialize " Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfor All ( Gen . p izza ()) Ġ{ Ġpizza Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter . fromJson ( adapter . toJson ( p izza )) Ġ== Ġpizza ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ" When Ġno Ġescap ing Ġis Ġpresent " Ġ{ ĊĠĠĠĠĠĠĠ Ġfor All Ġ{ Ġi : ĠInt Ġ-> ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstring Ġ= Ġ""" {" name ": Ġ"$ i ", Ġ" price ": Ġ$ i } """ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadapter . fromJson ( string ) Ġ== ĠP izza ("$ i ", Ġi ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ } Ċ