@ file : Suppress (" unused ") Ċ Ċ package Ġcom . chr yn an . graphql . int rospection . core Ċ Ċ import Ġkotlinx . serialization . Serial Name Ċ import Ġkotlinx . serialization . Serializable Ċ import Ġkotlinx . serialization . Serialization Exception Ċ import Ġkotlinx . serialization . json . Json Ċ Ċ /** Ċ Ġ* ĠThe Ġdata Ġcomponent Ġof Ġa Ġsuccessful Ġresult Ġof Ġa ĠGraphQL ĠInt rospection ĠQuery . Ċ Ġ*/ Ċ @ Serializable Ċ data Ġclass ĠInt rospection Schema Data ( ĊĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ"__ schema ") Ġval Ġint rospection Schema : ĠInt rospection Schema Ċ ) Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠRetrieves Ġan Ġ[ Int rospection Schema ] Ġinstance Ġfrom Ġthe Ġprovided ĠJSON ĠString Ġ[ input ] Ġusing Ġthe Ġprovided Ġ[ json ] ĊĠĠĠĠĠĠĠĠ Ġ* Ġobject Ġfor Ġde serializing . ĠThis Ġwill Ġthrow Ġa Ġ[ Serialization Exception ] Ġif Ġan Ġerror Ġoccurred Ġwhile Ġparsing Ġthe ĊĠĠĠĠĠĠĠĠ Ġ* Ġprovided ĠJSON ĠString Ġ[ input ]. ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġ[ input ] ĠThe Ġproperly Ġformatted ĠJSON Ġ[ String ] Ġof Ġthe Ġ[ Int rospection Schema ] Ġobject . ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġ[ json ] ĠThe Ġ[ Json ] Ġclass Ġused Ġto Ġdeserialize Ġthe Ġprovided Ġ[ input ]. ĠThis Ġdefaults Ġto Ġan Ġappropriately ĊĠĠĠĠĠĠĠĠ Ġ* Ġdefined Ġ[ Json ] Ġinstance Ġneeded Ġfor Ġthe Ġparsing . ĠIf Ġyou Ġoverride Ġthis Ġvalue , Ġbe Ġsure Ġto Ġset Ġthe ĊĠĠĠĠĠĠĠĠ Ġ* Ġclass Discriminator Ġvalue Ġto Ġ[ Type . TYPE _ FIELD _ NAME ] Ġand Ġit 's Ġrecommended Ġto Ġhave Ġis Len ient Ġset Ġto Ġtrue . ĠAlso , ĊĠĠĠĠĠĠĠĠ Ġ* Ġit 's Ġrecommended Ġto Ġhave Ġencode Defaults Ġset Ġto Ġtrue . ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġfrom Json String ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinput : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġjson : ĠJson Ġ= ĠJson Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Len ient Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġencode Defaults Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġignore Unknown Keys Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ): ĠInt rospection Schema Data Ġ= Ġjson . decode FromString ( serializer (), Ġinput ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠConverts Ġthis Ġ[ Int rospection Schema Data ] Ġto Ġa ĠJSON Ġformatted Ġ[ String ] Ġusing Ġthe Ġprovided Ġ[ json ] Ġobject . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġ[ json ] ĠThe Ġ[ Json ] Ġclass Ġused Ġto Ġdeserialize Ġthis Ġclass Ġinstance . ĠThis Ġdefaults Ġto Ġan Ġappropriately ĊĠĠĠĠ Ġ* Ġdefined Ġ[ Json ] Ġinstance Ġneeded Ġfor Ġthe Ġparsing . ĠIf Ġyou Ġoverride Ġthis Ġvalue , Ġbe Ġsure Ġto Ġset Ġthe ĊĠĠĠĠ Ġ* Ġclass Discriminator Ġvalue Ġto Ġ[ Type . TYPE _ FIELD _ NAME ] Ġand Ġit 's Ġrecommended Ġto Ġhave Ġis Len ient Ġset Ġto Ġtrue . ĠAlso , ĊĠĠĠĠ Ġ* Ġit 's Ġrecommended Ġto Ġhave Ġencode Defaults Ġset Ġto Ġtrue . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun ĠtoJson String ( ĊĠĠĠĠĠĠĠ Ġjson : ĠJson Ġ= ĠJson Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Len ient Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġencode Defaults Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġignore Unknown Keys Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ): ĠString Ġ= Ġjson . encode ToString ( serializer (), Ġthis ) Ċ } Ċ