Safe Haskell | None |
---|---|
Language | Haskell2010 |
Cardano.Api.SerialiseTextEnvelope
Description
TextEnvelope Serialisation
Synopsis
-
class
SerialiseAsCBOR
a =>
HasTextEnvelope
a
where
- textEnvelopeType :: AsType a -> TextEnvelopeType
- textEnvelopeDefaultDescr :: a -> TextEnvelopeDescr
-
data
TextEnvelope
=
TextEnvelope
{
- teType :: ! TextEnvelopeType
- teDescription :: ! TextEnvelopeDescr
- teRawCBOR :: ! ByteString
- newtype TextEnvelopeType = TextEnvelopeType String
- newtype TextEnvelopeDescr = TextEnvelopeDescr String
- textEnvelopeRawCBOR :: TextEnvelope -> ByteString
- data TextEnvelopeError
- serialiseToTextEnvelope :: forall a. HasTextEnvelope a => Maybe TextEnvelopeDescr -> a -> TextEnvelope
- deserialiseFromTextEnvelope :: HasTextEnvelope a => AsType a -> TextEnvelope -> Either TextEnvelopeError a
- readFileTextEnvelope :: HasTextEnvelope a => AsType a -> FilePath -> IO ( Either ( FileError TextEnvelopeError ) a)
- writeFileTextEnvelope :: HasTextEnvelope a => FilePath -> Maybe TextEnvelopeDescr -> a -> IO ( Either ( FileError ()) ())
- writeFileTextEnvelopeWithOwnerPermissions :: HasTextEnvelope a => FilePath -> Maybe TextEnvelopeDescr -> a -> IO ( Either ( FileError ()) ())
- readTextEnvelopeFromFile :: FilePath -> IO ( Either ( FileError TextEnvelopeError ) TextEnvelope )
- readTextEnvelopeOfTypeFromFile :: TextEnvelopeType -> FilePath -> IO ( Either ( FileError TextEnvelopeError ) TextEnvelope )
- textEnvelopeToJSON :: HasTextEnvelope a => Maybe TextEnvelopeDescr -> a -> ByteString
-
data
FromSomeType
(c ::
Type
->
Constraint
) b
where
- FromSomeType :: c a => AsType a -> (a -> b) -> FromSomeType c b
- deserialiseFromTextEnvelopeAnyOf :: [ FromSomeType HasTextEnvelope b] -> TextEnvelope -> Either TextEnvelopeError b
- readFileTextEnvelopeAnyOf :: [ FromSomeType HasTextEnvelope b] -> FilePath -> IO ( Either ( FileError TextEnvelopeError ) b)
- data family AsType t
Documentation
class SerialiseAsCBOR a => HasTextEnvelope a where Source #
Minimal complete definition
Methods
textEnvelopeType :: AsType a -> TextEnvelopeType Source #
Instances
data TextEnvelope Source #
A
TextEnvelope
is a structured envelope for serialised binary values
with an external format with a semi-readable textual format.
It contains a "type" field, e.g. "PublicKeyByron" or "TxSignedShelley" to indicate the type of the encoded data. This is used as a sanity check and to help readers.
It also contains a "title" field which is free-form, and could be used to indicate the role or purpose to a reader.
Constructors
TextEnvelope | |
Fields
|
Instances
newtype TextEnvelopeType Source #
Constructors
TextEnvelopeType String |
Instances
newtype TextEnvelopeDescr Source #
Constructors
TextEnvelopeDescr String |
Instances
data TextEnvelopeError Source #
The errors that the pure
TextEnvelope
parsing/decoding functions can return.
Constructors
TextEnvelopeTypeError ![ TextEnvelopeType ] ! TextEnvelopeType |
expected, actual |
TextEnvelopeDecodeError ! DecoderError | |
TextEnvelopeAesonDecodeError ! String |
Instances
Eq TextEnvelopeError Source # | |
Defined in Cardano.Api.SerialiseTextEnvelope Methods (==) :: TextEnvelopeError -> TextEnvelopeError -> Bool Source # (/=) :: TextEnvelopeError -> TextEnvelopeError -> Bool Source # |
|
Show TextEnvelopeError Source # | |
Defined in Cardano.Api.SerialiseTextEnvelope |
|
Error TextEnvelopeError Source # | |
Defined in Cardano.Api.SerialiseTextEnvelope Methods |
serialiseToTextEnvelope :: forall a. HasTextEnvelope a => Maybe TextEnvelopeDescr -> a -> TextEnvelope Source #
deserialiseFromTextEnvelope :: HasTextEnvelope a => AsType a -> TextEnvelope -> Either TextEnvelopeError a Source #
readFileTextEnvelope :: HasTextEnvelope a => AsType a -> FilePath -> IO ( Either ( FileError TextEnvelopeError ) a) Source #
writeFileTextEnvelope :: HasTextEnvelope a => FilePath -> Maybe TextEnvelopeDescr -> a -> IO ( Either ( FileError ()) ()) Source #
writeFileTextEnvelopeWithOwnerPermissions :: HasTextEnvelope a => FilePath -> Maybe TextEnvelopeDescr -> a -> IO ( Either ( FileError ()) ()) Source #
readTextEnvelopeFromFile :: FilePath -> IO ( Either ( FileError TextEnvelopeError ) TextEnvelope ) Source #
readTextEnvelopeOfTypeFromFile :: TextEnvelopeType -> FilePath -> IO ( Either ( FileError TextEnvelopeError ) TextEnvelope ) Source #
textEnvelopeToJSON :: HasTextEnvelope a => Maybe TextEnvelopeDescr -> a -> ByteString Source #
Reading one of several key types
data FromSomeType (c :: Type -> Constraint ) b where Source #
Constructors
FromSomeType :: c a => AsType a -> (a -> b) -> FromSomeType c b |
deserialiseFromTextEnvelopeAnyOf :: [ FromSomeType HasTextEnvelope b] -> TextEnvelope -> Either TextEnvelopeError b Source #
readFileTextEnvelopeAnyOf :: [ FromSomeType HasTextEnvelope b] -> FilePath -> IO ( Either ( FileError TextEnvelopeError ) b) Source #
Data family instances
A family of singleton types used in this API to indicate which type to use where it would otherwise be ambiguous or merely unclear.
Values of this type are passed to deserialisation functions for example.