atlas-0.1.0.0: Application backend for Plutus smart contracts on Cardano
Copyright(c) 2023 GYELD GMBH
LicenseApache 2.0
Maintainersupport@geniusyield.co
Stabilitydevelop
Safe HaskellNone
LanguageHaskell2010

GeniusYield.Types.PubKeyHash

Description

 
Synopsis

Documentation

data GYPubKeyHash #

Instances

Instances details
Eq GYPubKeyHash # 
Instance details

Defined in GeniusYield.Types.PubKeyHash

Ord GYPubKeyHash # 
Instance details

Defined in GeniusYield.Types.PubKeyHash

Show GYPubKeyHash # 
Instance details

Defined in GeniusYield.Types.PubKeyHash

IsString GYPubKeyHash # 
Instance details

Defined in GeniusYield.Types.PubKeyHash

PrintfArg GYPubKeyHash #
>>> Printf.printf "%s\n" $ pubKeyHashFromApi "e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d"
e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d
Instance details

Defined in GeniusYield.Types.PubKeyHash

FromJSON GYPubKeyHash #
>>> Aeson.eitherDecode @GYPubKeyHash "\"e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d\""
Right (GYPubKeyHash "e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d")

Invalid characters:

>>> Aeson.eitherDecode @GYPubKeyHash "\"e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6azzz\""
Left "Error in $: RawBytesHexErrorBase16DecodeFail \"e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6azzz\" \"invalid character at offset: 53\""
Instance details

Defined in GeniusYield.Types.PubKeyHash

Methods

parseJSON ∷ Value → Parser GYPubKeyHash #

parseJSONList ∷ Value → Parser [GYPubKeyHash] #

ToJSON GYPubKeyHash #
>>> let Just pkh = Aeson.decode @GYPubKeyHash "\"e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d\""
>>> LBS8.putStrLn $ Aeson.encode pkh
"e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d"
Instance details

Defined in GeniusYield.Types.PubKeyHash

Methods

toJSONGYPubKeyHash → Value #

toEncodingGYPubKeyHash → Encoding #

toJSONList ∷ [GYPubKeyHash] → Value #

toEncodingList ∷ [GYPubKeyHash] → Encoding #

ToField GYPubKeyHash #
>>> Csv.toField @GYPubKeyHash "e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d"
"e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d"
Instance details

Defined in GeniusYield.Types.PubKeyHash

Methods

toFieldGYPubKeyHash → Field

FromField GYPubKeyHash #
>>> Csv.runParser $ Csv.parseField @GYPubKeyHash "e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d"
Right (GYPubKeyHash "e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d")
>>> Csv.runParser $ Csv.parseField @GYPubKeyHash "not a pubkey hash"
Left "RawBytesHexErrorBase16DecodeFail \"not a pubkey hash\" \"invalid bytestring size\""
Instance details

Defined in GeniusYield.Types.PubKeyHash

Methods

parseField ∷ Field → Parser GYPubKeyHash

ToSchema GYPubKeyHash # 
Instance details

Defined in GeniusYield.Types.PubKeyHash

Methods

declareNamedSchemaProxy GYPubKeyHash → Declare (Definitions Schema) NamedSchema

pubKeyHashFromPlutus ∷ PubKeyHash → Either PlutusToCardanoError GYPubKeyHash #

>>> pubKeyHashFromPlutus "e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d"
Right (GYPubKeyHash "e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d")
>>> pubKeyHashFromPlutus "abcd"
Left (DeserialiseRawBytesError {ptceTag = "pubKeyHashFromPlutus \"\\171\\205\""})

pubKeyHashToPlutusGYPubKeyHash → PubKeyHash #

>>> let Just pkh = Aeson.decode @GYPubKeyHash "\"e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d\""
>>> pubKeyHashToPlutus pkh
e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d

pubKeyHashToApiGYPubKeyHash → Hash PaymentKey #

>>> let Just pkh = Aeson.decode @GYPubKeyHash "\"e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d\""
>>> pubKeyHashToApi pkh
"e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d"

pubKeyHashFromApi ∷ Hash PaymentKey → GYPubKeyHash #

>>> pubKeyHashFromApi "e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d"
GYPubKeyHash "e1cbb80db89e292269aeb93ec15eb963dda5176b66949fe1c2a6a38d"