package Ġio . pl ast ique . core . json . adapters Ċ Ċ import Ġcom . squareup . mos hi . Json Adapter Ċ import Ġcom . squareup . mos hi . M oshi Ċ import Ġcom . squareup . mos hi . Types Ċ import Ġjava . lang . reflect . Type Ċ Ċ class ĠDerived Class Adapter Factory < T Ġ: ĠAny >( ĊĠĠĠ Ġprivate Ġval Ġbase Class : ĠClass < T >, ĊĠĠĠ Ġprivate Ġval Ġactual Class : ĠClass < out ĠT > Ċ ) Ġ: ĠJson Adapter . Factory Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġcreate ( type : ĠType , Ġannotations : ĠSet < Annotation >, Ġm oshi : ĠM oshi ): ĠJson Adapter < *> ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( Types . getRaw Type ( type )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbase Class Ġ-> Ġm oshi . adapter ( actual Class ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ