package Ġse . ans man . kot shi Ċ Ċ import Ġcom . squareup . mos hi . Json Ċ import Ġcom . squareup . mos hi . Json Adapter Ċ import Ġcom . squareup . mos hi . Json Qualifier Ċ import Ġcom . squareup . mos hi . Json Writer Ċ Ċ /** Ċ Ġ* ĠAnnotation Ġto Ġbe Ġplaced Ġon Ġclasses Ġthat ĠK ot shi Ġshould Ġgenerate Ġa Ġ[ Json Adapter ] Ġfor . Ċ Ġ* Ċ Ġ* ĠThe Ġannotation Ġshould Ġonly Ġbe Ġplaced Ġon ĠKotlin Ġdata Ġclasses Ġor ĠKotlin Ġenums . Ċ Ġ* Ġ[ Json Qualifier ] Ġis Ġsupported Ġand Ġso Ġis Ġthe Ġ[ Json ] Ġannotation . ĠThey Ġcan Ġbe Ġplaced Ġon Ġeither Ġthe Ġproperty Ġfield Ġor Ġthe Ċ Ġ* Ġproperty Ġparameter . Ċ Ġ* Ċ Ġ* ĠExample : Ċ Ġ* Ġ``` Ċ Ġ* Ġ@ Json Serializable Ċ Ġ* Ġdata Ġclass ĠPerson ( Ċ Ġ* ĠĠĠĠ Ġval Ġname : ĠString , Ċ Ġ* ĠĠĠĠ Ġval Ġemail : ĠString ?, Ċ Ġ* ĠĠĠĠ Ġ// ĠThis Ġproperty Ġuses Ġa Ġcustom Ġgetter Ġname Ġwhich Ġrequires Ġtwo Ġannotations Ċ Ġ* ĠĠĠĠ Ġ@ get : Jvm Name (" has Verified Account ") Ġ@ Getter (" has Verified Account ") Ċ Ġ* ĠĠĠĠ Ġval Ġhas Verified Account : ĠBoolean , Ċ Ġ* ĠĠĠĠ Ġ// ĠThis Ġproperty Ġhas Ġa Ġdifferent Ġname Ġin Ġthe ĠJson Ġthan Ġhere Ġso Ġ@ Json Ġmust Ġbe Ġapplied Ċ Ġ* ĠĠĠĠ Ġ@ Json ( name Ġ= Ġ" sign _ up _ date ") Ċ Ġ* ĠĠĠĠ Ġval Ġsign Up Date : ĠDate , Ċ Ġ* ĠĠĠĠ Ġ// ĠThis Ġfield Ġhas Ġa Ġjson Ġqualifier Ġapplied , Ġthe Ġgenerated Ġadapter Ġwill Ġrequest Ġan Ġadapter Ġwith Ġthe Ġqualifier . Ċ Ġ* ĠĠĠĠ Ġ@ Null If Empty Ċ Ġ* ĠĠĠĠ Ġval Ġjob Title : ĠString ? Ċ Ġ* Ġ) Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ@ param Ġuse Adapters For Primitives ĠA Ġflag Ġto Ġenable / disable Ġthe Ġuse Ġof Ġadapters Ġto Ġread Ġand Ġwrite Ġprimitive Ġvalues . Ċ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠThe Ġdefault Ġvalue Ġis Ġthe Ġsame Ġas Ġ[ K ot shi Json Adapter Factory . use Adapters For Primitives ]. Ċ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIf Ġyou Ġdon 't Ġactually Ġneed Ġit Ġit 's Ġbetter Ġto Ġnot Ġuse Ġadapters Ġfor Ġperformance Ġreasons . Ċ Ġ* Ġ@ param Ġserialize Null s ĠEnable Ġor Ġdisable Ġ[ null Ġserialization ][ Json Writer . serialize Null s ] Ġfor Ġthis Ġadapter Ġand Ġchild Ċ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadapters Ġ( unless Ġthey Ġoverride Ġit ). Ċ Ġ*/ Ċ @ Target ( Annotation Target . CLASS ) Ċ @ Must Be Document ed Ċ @ Retention ( Annotation Retention . SOURCE ) Ċ annotation Ġclass ĠJson Serializable ( ĊĠĠĠ Ġval Ġuse Adapters For Primitives : ĠPrimitive Adapters Ġ= ĠPrimitive Adapters . DEFAULT , ĊĠĠĠ Ġval Ġserialize Null s : ĠSerialize Null s Ġ= ĠSerialize Null s . DEFAULT Ċ )