dhall-1.32.0: A configuration language guaranteed to terminate
Safe HaskellNone
LanguageHaskell2010

Dhall.Binary

Description

This module contains logic for converting Dhall expressions to and from CBOR expressions which can in turn be converted to and from a binary representation

Synopsis

Standard versions

data StandardVersion Source #

Supported version strings

This exists primarily for backwards compatibility for expressions encoded before Dhall removed version tags from the binary encoding

Constructors

NoVersion

No version string

V_5_0_0

Version "5.0.0"

V_4_0_0

Version "4.0.0"

V_3_0_0

Version "3.0.0"

V_2_0_0

Version "2.0.0"

V_1_0_0

Version "1.0.0"

Encoding and decoding

encodeExpression :: Expr Void Import -> ByteString Source #

Encode a Dhall expression as a CBOR-encoded ByteString

decodeExpression :: Serialise (Expr s a) => ByteString -> Either DecodingFailure (Expr s a) Source #

Decode a Dhall expression from a CBOR Term

Exceptions

newtype DecodingFailure Source #

This indicates that a given CBOR-encoded ByteString did not correspond to a valid Dhall expression

Constructors

CBORIsNotDhall ByteString 

Instances

Instances details
Eq DecodingFailure Source # 
Instance details

Defined in Dhall.Binary

Show DecodingFailure Source # 
Instance details

Defined in Dhall.Binary

Methods

showsPrec :: Int -> DecodingFailure -> ShowS

show :: DecodingFailure -> String

showList :: [DecodingFailure] -> ShowS

Exception DecodingFailure Source # 
Instance details

Defined in Dhall.Binary

Methods

toException :: DecodingFailure -> SomeException

fromException :: SomeException -> Maybe DecodingFailure

displayException :: DecodingFailure -> String

Orphan instances

Serialise (Expr Void Void) Source # 
Instance details

Methods

encode :: Expr Void Void -> Encoding

decode :: Decoder s (Expr Void Void)

encodeList :: [Expr Void Void] -> Encoding

decodeList :: Decoder s [Expr Void Void]

Serialise (Expr Void Import) Source # 
Instance details

Methods

encode :: Expr Void Import -> Encoding

decode :: Decoder s (Expr Void Import)

encodeList :: [Expr Void Import] -> Encoding

decodeList :: Decoder s [Expr Void Import]