Safe Haskell | None |
---|---|
Language | Haskell98 |
Shelley.Spec.Ledger.Serialization
Synopsis
- class Typeable a ⇒ ToCBORGroup a where
- toCBORGroup ∷ a → Encoding
- encodedGroupSizeExpr ∷ (∀ x. ToCBOR x ⇒ Proxy x → Size) → Proxy a → Size
- listLen ∷ a → Word
- listLenBound ∷ Proxy a → Word
- class Typeable a ⇒ FromCBORGroup a where
- fromCBORGroup ∷ Decoder s a
- newtype CBORGroup a = CBORGroup {
- unCBORGroup ∷ a
- newtype CborSeq a = CborSeq {
- unwrapCborSeq ∷ Seq a
- decodeList ∷ Decoder s a → Decoder s [a]
- decodeSeq ∷ Decoder s a → Decoder s (Seq a)
- decodeStrictSeq ∷ Decoder s a → Decoder s (StrictSeq a)
- decodeSet ∷ Ord a ⇒ Decoder s a → Decoder s (Set a)
- decodeMap ∷ Ord a ⇒ Decoder s a → Decoder s b → Decoder s (Map a b)
- decodeMapContents ∷ Decoder s a → Decoder s [a]
- decodeMapTraverse ∷ (Ord a, Applicative t) ⇒ Decoder s (t a) → Decoder s (t b) → Decoder s (t (Map a b))
- decodeMaybe ∷ Decoder s a → Decoder s (Maybe a)
- decodeRecordNamed ∷ Text → (a → Int) → Decoder s a → Decoder s a
- decodeRecordSum ∷ String → (Word → Decoder s (Int, a)) → Decoder s a
- decodeNullMaybe ∷ Decoder s a → Decoder s (Maybe a)
- encodeFoldable ∷ (ToCBOR a, Foldable f) ⇒ f a → Encoding
- encodeFoldableEncoder ∷ Foldable f ⇒ (a → Encoding) → f a → Encoding
- encodeFoldableMapEncoder ∷ Foldable f ⇒ (Word → a → Maybe Encoding) → f a → Encoding
- encodeNullMaybe ∷ (a → Encoding) → Maybe a → Encoding
- groupRecord ∷ ∀ a s. (ToCBORGroup a, FromCBORGroup a) ⇒ Decoder s a
- ratioToCBOR ∷ ToCBOR a ⇒ Ratio a → Encoding
- ratioFromCBOR ∷ (Integral a, FromCBOR a) ⇒ Decoder s (Ratio a)
- mapToCBOR ∷ (ToCBOR a, ToCBOR b) ⇒ Map a b → Encoding
- mapFromCBOR ∷ (Ord a, FromCBOR a, FromCBOR b) ⇒ Decoder s (Map a b)
- ipv4ToBytes ∷ IPv4 → ByteString
- ipv4FromBytes ∷ ByteString → Either String IPv4
- ipv4ToCBOR ∷ IPv4 → Encoding
- ipv4FromCBOR ∷ Decoder s IPv4
- ipv6ToBytes ∷ IPv6 → ByteString
- ipv6FromBytes ∷ ByteString → Either String IPv6
- ipv6ToCBOR ∷ IPv6 → Encoding
- ipv6FromCBOR ∷ Decoder s IPv6
- listLenInt ∷ ToCBORGroup a ⇒ a → Int
- runByteBuilder ∷ Int → Builder → ByteString
- utcTimeToCBOR ∷ UTCTime → Encoding
- utcTimeFromCBOR ∷ Decoder s UTCTime
Documentation
class Typeable a ⇒ ToCBORGroup a where Source #
Methods
toCBORGroup ∷ a → Encoding Source #
encodedGroupSizeExpr ∷ (∀ x. ToCBOR x ⇒ Proxy x → Size) → Proxy a → Size Source #
listLenBound ∷ Proxy a → Word Source #
Instances
ToCBORGroup ProtVer Source # | |
ToCBORGroup Ptr Source # | |
Crypto crypto ⇒ ToCBORGroup (OCert crypto) Source # | |
Era era ⇒ ToCBORGroup (PoolParams era) Source # | |
Defined in Shelley.Spec.Ledger.TxBody Methods toCBORGroup ∷ PoolParams era → Encoding Source # encodedGroupSizeExpr ∷ (∀ x. ToCBOR x ⇒ Proxy x → Size) → Proxy (PoolParams era) → Size Source # listLen ∷ PoolParams era → Word Source # listLenBound ∷ Proxy (PoolParams era) → Word Source # | |
Era era ⇒ ToCBORGroup (TxSeq era) Source # | |
class Typeable a ⇒ FromCBORGroup a where Source #
Methods
fromCBORGroup ∷ Decoder s a Source #
Instances
FromCBORGroup ProtVer Source # | |
Defined in Shelley.Spec.Ledger.PParams Methods | |
FromCBORGroup Ptr Source # | |
Defined in Shelley.Spec.Ledger.Credential Methods fromCBORGroup ∷ Decoder s Ptr Source # | |
Crypto crypto ⇒ FromCBORGroup (OCert crypto) Source # | |
Defined in Shelley.Spec.Ledger.OCert Methods fromCBORGroup ∷ Decoder s (OCert crypto) Source # | |
Era era ⇒ FromCBORGroup (PoolParams era) Source # | |
Defined in Shelley.Spec.Ledger.TxBody Methods fromCBORGroup ∷ Decoder s (PoolParams era) Source # |
Constructors
CBORGroup | |
Fields
|
Instances
ToCBORGroup a ⇒ ToCBOR (CBORGroup a) Source # | |
(FromCBORGroup a, ToCBORGroup a) ⇒ FromCBOR (CBORGroup a) Source # | |
Constructors
CborSeq | |
Fields
|
Instances
Foldable CborSeq Source # | |
Defined in Shelley.Spec.Ledger.Serialization Methods fold ∷ Monoid m ⇒ CborSeq m → m # foldMap ∷ Monoid m ⇒ (a → m) → CborSeq a → m # foldMap' ∷ Monoid m ⇒ (a → m) → CborSeq a → m # foldr ∷ (a → b → b) → b → CborSeq a → b # foldr' ∷ (a → b → b) → b → CborSeq a → b # foldl ∷ (b → a → b) → b → CborSeq a → b # foldl' ∷ (b → a → b) → b → CborSeq a → b # foldr1 ∷ (a → a → a) → CborSeq a → a # foldl1 ∷ (a → a → a) → CborSeq a → a # elem ∷ Eq a ⇒ a → CborSeq a → Bool # maximum ∷ Ord a ⇒ CborSeq a → a # | |
ToCBOR a ⇒ ToCBOR (CborSeq a) Source # | |
FromCBOR a ⇒ FromCBOR (CborSeq a) Source # | |
decodeList ∷ Decoder s a → Decoder s [a] Source #
decodeMapContents ∷ Decoder s a → Decoder s [a] Source #
decodeMapTraverse ∷ (Ord a, Applicative t) ⇒ Decoder s (t a) → Decoder s (t b) → Decoder s (t (Map a b)) Source #
groupRecord ∷ ∀ a s. (ToCBORGroup a, FromCBORGroup a) ⇒ Decoder s a Source #
ipv4ToBytes ∷ IPv4 → ByteString Source #
ipv4FromBytes ∷ ByteString → Either String IPv4 Source #
ipv4ToCBOR ∷ IPv4 → Encoding Source #
ipv4FromCBOR ∷ Decoder s IPv4 Source #
ipv6ToBytes ∷ IPv6 → ByteString Source #
ipv6FromBytes ∷ ByteString → Either String IPv6 Source #
ipv6ToCBOR ∷ IPv6 → Encoding Source #
ipv6FromCBOR ∷ Decoder s IPv6 Source #
listLenInt ∷ ToCBORGroup a ⇒ a → Int Source #
runByteBuilder ∷ Int → Builder → ByteString Source #
Run a ByteString Builder
using a strategy aimed at making smaller
things efficiently.
It takes a size hint and produces a strict ByteString
. This will be fast
when the size hint is the same or slightly bigger than the true size.