package Ġcom . gan . breaking bad . utils Ċ Ċ import Ġcom . squareup . mos hi . Json Adapter Ċ import Ġcom . squareup . mos hi . M oshi Ċ import Ġcom . squareup . mos hi . kotlin . reflect . Kotlin Json Adapter Factory Ċ Ċ inline Ġfun Ġ< re ified ĠT > Ġcreate M oshi Adapter ( var arg Ġadapters : ĠJson Adapter . Factory ): ĠJson Adapter < T > Ġ{ ĊĠĠĠ Ġval Ġm oshi Ġ= ĠM oshi . Builder (). run Ġ{ ĊĠĠĠĠĠĠĠ Ġadapters . forEach Ġ{ Ġadd ( it ) Ġ} ĊĠĠĠĠĠĠĠ Ġadd ( Kotlin Json Adapter Factory ()) ĊĠĠĠĠĠĠĠ Ġbuild () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġreturn Ġm oshi . adapter ( T :: class . java ) !! Ċ } Ċ Ċ inline Ġfun Ġ< re ified ĠT > ĠtoJson ( value : ĠT , Ġvar arg Ġadapters : ĠJson Adapter . Factory ) Ġ= ĊĠĠĠ Ġcreate M oshi Adapter < T >(* adapters ). toJson ( value ) !! Ċ Ċ inline Ġfun Ġ< re ified ĠT > Ġfrom Json ( json String : ĠString , Ġvar arg Ġadapters : ĠJson Adapter . Factory ): ĠT Ġ= ĊĠĠĠ Ġcreate M oshi Adapter < T >(* adapters ). fromJson ( json String ) !!