Copyright | (c) Duncan Coutts 2015-2017 |
---|---|
License | BSD3-style (see LICENSE.txt) |
Maintainer | [email protected] |
Stability | experimental |
Portability | non-portable (GHC extensions) |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Codec.CBOR.Read
Description
Tools for reading values in a CBOR-encoded format back into ordinary values.
Synopsis
- deserialiseFromBytes :: (forall s. Decoder s a) -> ByteString -> Either DeserialiseFailure (ByteString, a)
- deserialiseFromBytesWithSize :: (forall s. Decoder s a) -> ByteString -> Either DeserialiseFailure (ByteString, ByteOffset, a)
- deserialiseIncremental :: Decoder s a -> ST s (IDecode s a)
- data DeserialiseFailure = DeserialiseFailure ByteOffset String
- data IDecode s a
- = Partial (Maybe ByteString -> ST s (IDecode s a))
- | Done !ByteString !ByteOffset a
- | Fail !ByteString !ByteOffset DeserialiseFailure
- type ByteOffset = Int64
Documentation
deserialiseFromBytes :: (forall s. Decoder s a) -> ByteString -> Either DeserialiseFailure (ByteString, a) Source #
Given a Decoder
and some ByteString
representing
an encoded CBOR value, return Either
the decoded CBOR value
or an error. In addition to the decoded value return any remaining input
content.
Since: 0.2.0.0
deserialiseFromBytesWithSize :: (forall s. Decoder s a) -> ByteString -> Either DeserialiseFailure (ByteString, ByteOffset, a) Source #
Given a Decoder
and some ByteString
representing
an encoded CBOR value, return Either
the decoded CBOR value
or an error. In addition to the decoded value return any remaining input
content and the number of bytes consumed.
Since: 0.2.0.0
deserialiseIncremental :: Decoder s a -> ST s (IDecode s a) Source #
Run a Decoder
incrementally, returning a continuation
representing the result of the incremental decode.
Since: 0.2.0.0
data DeserialiseFailure Source #
An exception type that may be returned (by pure functions) or thrown (by IO actions) that fail to deserialise a given input.
Since: 0.2.0.0
Constructors
DeserialiseFailure ByteOffset String |
Instances
Exception DeserialiseFailure Source # | |
Defined in Codec.CBOR.Read Methods toException :: DeserialiseFailure -> SomeException Source # fromException :: SomeException -> Maybe DeserialiseFailure Source # | |
Show DeserialiseFailure Source # | |
Defined in Codec.CBOR.Read | |
NFData DeserialiseFailure Source # | |
Defined in Codec.CBOR.Read Methods rnf :: DeserialiseFailure -> () Source # | |
Eq DeserialiseFailure Source # | |
Defined in Codec.CBOR.Read Methods (==) :: DeserialiseFailure -> DeserialiseFailure -> Bool Source # (/=) :: DeserialiseFailure -> DeserialiseFailure -> Bool Source # |
An Incremental decoder, used to represent the result of
attempting to run a decoder over a given input, and return a value
of type a
.
Constructors
Partial (Maybe ByteString -> ST s (IDecode s a)) | The decoder has consumed the available input and needs more
to continue. Provide |
Done !ByteString !ByteOffset a | The decoder has successfully finished. Except for the output value you also get any unused input as well as the number of bytes consumed. |
Fail !ByteString !ByteOffset DeserialiseFailure | The decoder ran into an error. The decoder either used
|