/* Ċ Ġ* ĠCopyright Ġ 2 0 1 9 ĠGoogle ĠLLC Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġio . ag ora . flat . data Ċ Ċ sealed Ġclass ĠResult < T > Ġ{ ĊĠĠĠ Ġopen Ġfun Ġget (): ĠT ? Ġ= Ġnull ĊĊĠĠĠ Ġfun Ġget OrThrow (): ĠT Ġ= Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠĠĠ Ġis ĠSuccess Ġ-> Ġget () ĊĠĠĠĠĠĠĠ Ġis ĠFailure Ġ-> Ġthrow Ġthrowable ĊĠĠĠ Ġ} Ċ } Ċ Ċ data Ġclass ĠSuccess < T >( val Ġdata : ĠT ) Ġ: ĠResult < T >() Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġget (): ĠT Ġ= Ġdata Ċ } Ċ Ċ data Ġclass ĠFailure < T >( ĊĠĠĠ Ġval Ġthrowable : ĠThrowable , ĊĠĠĠ Ġval Ġerror : ĠError Ġ= ĠError . Unknown , Ċ ) Ġ: ĠResult < T >() Ċ Ċ data Ġclass ĠError ( val Ġstatus : ĠInt , Ġval Ġcode : ĠInt ) Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġvar ĠUnknown : ĠError Ġ= ĠError (- 1 , Ġ- 1 ) ĊĠĠĠ Ġ} Ċ }