Update Hexstring for binary #1

Merged
pitmutt merged 12 commits from dev into master 2024-03-12 18:54:02 +00:00
Showing only changes of commit be830be714 - Show all commits

View file

@ -6,7 +6,7 @@
{-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE OverloadedStrings #-}
module Data.HexString module Data.HexString
( HexString ( HexString(..)
, hexString , hexString
, fromBinary , fromBinary
, toBinary , toBinary
@ -36,12 +36,12 @@ import qualified Generics.SOP as SOP
-- | Represents a Hex string. Guarantees that all characters it contains -- | Represents a Hex string. Guarantees that all characters it contains
-- are valid hex characters. -- are valid hex characters.
data HexString = newtype HexString = HexString
HexString BS.ByteString { bytes :: BS.ByteString
deriving stock (Eq, Prelude.Show, GHC.Generic) } deriving stock (Eq, Prelude.Show, GHC.Generic)
deriving anyclass (SOP.Generic, SOP.HasDatatypeInfo) deriving anyclass (SOP.Generic, SOP.HasDatatypeInfo)
deriving anyclass (Data.Structured.Show) deriving anyclass (Data.Structured.Show)
deriving (BorshSize, ToBorsh, FromBorsh) via AsStruct HexString deriving (BorshSize, ToBorsh, FromBorsh) via AsStruct HexString
instance FromJSON HexString where instance FromJSON HexString where
parseJSON = withText "HexString" $ pure . hexString . TE.encodeUtf8 parseJSON = withText "HexString" $ pure . hexString . TE.encodeUtf8