module Hydra.Contract.DepositError ( errorCode, module Hydra.Contract.DepositError, ) where import Hydra.Contract.Error (ToErrorCode (..), errorCode) import Text.Show (Show) data DepositError = DepositPeriodSurpassed | DepositNoUpperBoundDefined | DepositNoLowerBoundDefined | DepositPeriodNotReached | IncorrectDepositHash | DepositHeadInputNotFound | HeadInputRedeemerNotFound | HeadRedeemerNotIncrement | DepositNotClaimedByHead | MultipleDepositsRecovered deriving stock (Int -> DepositError -> ShowS [DepositError] -> ShowS DepositError -> String (Int -> DepositError -> ShowS) -> (DepositError -> String) -> ([DepositError] -> ShowS) -> Show DepositError forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> DepositError -> ShowS showsPrec :: Int -> DepositError -> ShowS $cshow :: DepositError -> String show :: DepositError -> String $cshowList :: [DepositError] -> ShowS showList :: [DepositError] -> ShowS Show) instance ToErrorCode DepositError where toErrorCode :: DepositError -> Text toErrorCode = \case DepositError DepositPeriodSurpassed -> Text "D01" DepositError DepositNoUpperBoundDefined -> Text "D02" DepositError DepositNoLowerBoundDefined -> Text "D03" DepositError DepositPeriodNotReached -> Text "D04" DepositError IncorrectDepositHash -> Text "D05" DepositError DepositHeadInputNotFound -> Text "D06" DepositError HeadInputRedeemerNotFound -> Text "D07" DepositError HeadRedeemerNotIncrement -> Text "D08" DepositError DepositNotClaimedByHead -> Text "D09" DepositError MultipleDepositsRecovered -> Text "D10"