package Ġactivity starter . compiler . model . class binding Ċ Ċ import Ġactivity starter . compiler . utils . is Subtype OfType Ċ import Ġjavax . lang . model . type . Type Mirror Ċ Ċ enum Ġclass ĠKnown ClassType ( var arg Ġval Ġtype String : ĠString ) Ġ{ ĊĠĠĠ ĠActivity ( ACTIVITY _ TYPE ), ĊĠĠĠ ĠFragment ( FRAGMENT _ TYPE , ĠFR AG MENT v 4 _ TYPE ), ĊĠĠĠ ĠService ( SERVICE _ TYPE ), ĊĠĠĠ ĠBroadcast Receiver ( BRO ADCAST _ RECE IVER _ TYPE ); ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġget ByType ( elementType : ĠType Mirror ): ĠKnown ClassType ? Ġ= Ġvalues () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. first Ġ{ Ġelement Type . is Subtype OfType (* it . type String ) Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġconst Ġval ĠACT IVITY _ TYPE Ġ= Ġ" android . app . Activity " Ċ private Ġconst Ġval ĠFR AG MENT _ TYPE Ġ= Ġ" android . app . Fragment " Ċ private Ġconst Ġval ĠFR AG MENT v 4 _ TYPE Ġ= Ġ" android . support . v 4 . app . Fragment " Ċ private Ġconst Ġval ĠSERVICE _ TYPE Ġ= Ġ" android . app . Service " Ċ private Ġconst Ġval ĠBRO ADCAST _ RECE IVER _ TYPE Ġ= Ġ" android . content . Broadcast Receiver " Ċ private Ġconst Ġval ĠSERIAL IZ ABLE _ TYPE Ġ= Ġ" java . io . Serializable " Ċ private Ġconst Ġval ĠPAR CEL ABLE _ TYPE Ġ= Ġ" android . os . Parcelable "