License | BSD-style |
---|---|
Maintainer | Vincent Hanquez <vincent@snarc.org> |
Stability | Stable |
Portability | Excellent |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Crypto.Error
Description
Synopsis
- data CryptoError
- = CryptoError_KeySizeInvalid
- | CryptoError_IvSizeInvalid
- | CryptoError_SeedSizeInvalid
- | CryptoError_AEADModeNotSupported
- | CryptoError_SecretKeySizeInvalid
- | CryptoError_SecretKeyStructureInvalid
- | CryptoError_PublicKeySizeInvalid
- | CryptoError_SharedSecretSizeInvalid
- | CryptoError_EcScalarOutOfBounds
- | CryptoError_PointSizeInvalid
- | CryptoError_PointFormatInvalid
- | CryptoError_PointFormatUnsupported
- | CryptoError_PointCoordinatesInvalid
- | CryptoError_ScalarMultiplicationInvalid
- | CryptoError_MacKeyInvalid
- | CryptoError_AuthenticationTagSizeInvalid
- | CryptoError_PrimeSizeInvalid
- | CryptoError_SaltTooSmall
- | CryptoError_OutputLengthTooSmall
- | CryptoError_OutputLengthTooBig
- data CryptoFailable a
- throwCryptoErrorIO :: CryptoFailable a -> IO a
- throwCryptoError :: CryptoFailable a -> a
- onCryptoFailure :: (CryptoError -> r) -> (a -> r) -> CryptoFailable a -> r
- eitherCryptoError :: CryptoFailable a -> Either CryptoError a
- maybeCryptoError :: CryptoFailable a -> Maybe a
Documentation
data CryptoError #
Enumeration of all possible errors that can be found in this library
Constructors
Instances
Data CryptoError # | |
Defined in Crypto.Error.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CryptoError -> c CryptoError # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CryptoError # toConstr :: CryptoError -> Constr # dataTypeOf :: CryptoError -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CryptoError) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CryptoError) # gmapT :: (forall b. Data b => b -> b) -> CryptoError -> CryptoError # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CryptoError -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CryptoError -> r # gmapQ :: (forall d. Data d => d -> u) -> CryptoError -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> CryptoError -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> CryptoError -> m CryptoError # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CryptoError -> m CryptoError # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CryptoError -> m CryptoError # | |
Enum CryptoError # | |
Defined in Crypto.Error.Types Methods succ :: CryptoError -> CryptoError # pred :: CryptoError -> CryptoError # toEnum :: Int -> CryptoError # fromEnum :: CryptoError -> Int # enumFrom :: CryptoError -> [CryptoError] # enumFromThen :: CryptoError -> CryptoError -> [CryptoError] # enumFromTo :: CryptoError -> CryptoError -> [CryptoError] # enumFromThenTo :: CryptoError -> CryptoError -> CryptoError -> [CryptoError] # | |
Exception CryptoError # | |
Defined in Crypto.Error.Types Methods toException :: CryptoError -> SomeException fromException :: SomeException -> Maybe CryptoError displayException :: CryptoError -> String | |
Show CryptoError # | |
Defined in Crypto.Error.Types Methods showsPrec :: Int -> CryptoError -> ShowS # show :: CryptoError -> String # showList :: [CryptoError] -> ShowS # | |
Eq CryptoError # | |
Defined in Crypto.Error.Types |
data CryptoFailable a #
A simple Either like type to represent a computation that can fail
2 possibles values are:
CryptoPassed
: The computation succeeded, and contains the result of the computationCryptoFailed
: The computation failed, and contains the cryptographic error associated
Constructors
CryptoPassed a | |
CryptoFailed CryptoError |
Instances
throwCryptoErrorIO :: CryptoFailable a -> IO a #
Throw an CryptoError as exception on CryptoFailed result, otherwise return the computed value
throwCryptoError :: CryptoFailable a -> a #
Same as throwCryptoErrorIO
but throw the error asynchronously.
onCryptoFailure :: (CryptoError -> r) -> (a -> r) -> CryptoFailable a -> r #
Simple either
like combinator for CryptoFailable type
eitherCryptoError :: CryptoFailable a -> Either CryptoError a #
Transform a CryptoFailable to an Either
maybeCryptoError :: CryptoFailable a -> Maybe a #
Transform a CryptoFailable to a Maybe