/* Ċ Ġ* ĠCopyright Ġ 2 0 2 1 ĠI ce Rock ĠMAG ĠInc . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense . Ċ Ġ*/ Ċ Ċ package Ġdev . icer ock . mo ko . web 3 . contract Ċ Ċ enum Ġclass ĠStatic En coders ( ĊĠĠĠ Ġval Ġtype Annotation : ĠString , ĊĠĠĠ Ġval Ġencoder : ĠStatic Encoder < *> Ċ ) Ġ{ ĊĠĠĠ ĠUInt 2 5 6 ( type Annotation Ġ= Ġ" uint 2 5 6 ", Ġencoder Ġ= ĠUInt 2 5 6 Param ), ĊĠĠĠ ĠAddress ( type Annotation Ġ= Ġ" address ", Ġencoder Ġ= ĠAddress Param ); ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġfor Type ( type Annotation : ĠString ) Ġ= Ġvalues () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. first OrNull Ġ{ Ġit . type Annotation Ġ== Ġtype Annotation Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġerror (" There Ġis Ġno Ġsuch Ġencoder Ġfor Ġtype Ġ$ type Annotation ") ĊĠĠĠ Ġ} Ċ } Ċ