Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Cardano.Api.Byron
Description
This module provides a library interface that is intended to be the complete API for Byron covering everything, including exposing constructors for the lower level types.
Synopsis
- module Cardano.Api
- data family AsType t
- data family VerificationKey keyrole
- data family SigningKey keyrole
- data SomeByronSigningKey
- data family Hash keyrole
- data Address addrtype where
- ByronAddress :: Address -> Address ByronAddr
- data NetworkId
- newtype TxId = TxId (Hash StandardCrypto EraIndependentTxBody)
- data TxIn = TxIn TxId TxIx
- data TxOut ctx era = TxOut (AddressInEra era) (TxOutValue era) (TxOutDatum ctx era) (ReferenceScript era)
- newtype TxIx = TxIx Word
- newtype Lovelace = Lovelace Integer
- data ATxAux a = ATxAux {
- aTaTx :: !(Annotated Tx a)
- aTaWitness :: !(Annotated TxWitness a)
- aTaAnnotation :: !a
- data KeyWitness era where
- ByronKeyWitness :: TxInWitness -> KeyWitness ByronEra
- data WitnessNetworkIdOrByronAddress
- class Error e where
- prettyError :: e -> Doc ann
- data FileError e
- data LocalNodeConnectInfo = LocalNodeConnectInfo ConsensusModeParams NetworkId SocketPath
- data LocalNodeClientProtocols block point tip slot tx txid txerr (query :: Type -> Type) (m :: Type -> Type) = LocalNodeClientProtocols (LocalChainSyncClient block point tip m) (Maybe (LocalTxSubmissionClient tx txerr m ())) (Maybe (LocalStateQueryClient block point query m ())) (Maybe (LocalTxMonitorClient txid tx slot m ()))
- newtype ChainSyncClient header point tip (m :: Type -> Type) a = ChainSyncClient {
- runChainSyncClient :: m (ClientStIdle header point tip m a)
- newtype LocalTxSubmissionClient tx reject (m :: Type -> Type) a = LocalTxSubmissionClient (m (LocalTxClientStIdle tx reject m a))
- newtype LocalStateQueryClient block point (query :: Type -> Type) (m :: Type -> Type) a = LocalStateQueryClient {
- runLocalStateQueryClient :: m (ClientStIdle block point query m a)
- newtype NetworkMagic = NetworkMagic {}
- newtype ByronUpdateProposal = ByronUpdateProposal {
- unByronUpdateProposal :: AProposal ByteString
- data ByronProtocolParametersUpdate = ByronProtocolParametersUpdate {
- bPpuScriptVersion :: !(Maybe Word16)
- bPpuSlotDuration :: !(Maybe Natural)
- bPpuMaxBlockSize :: !(Maybe Natural)
- bPpuMaxHeaderSize :: !(Maybe Natural)
- bPpuMaxTxSize :: !(Maybe Natural)
- bPpuMaxProposalSize :: !(Maybe Natural)
- bPpuMpcThd :: !(Maybe LovelacePortion)
- bPpuHeavyDelThd :: !(Maybe LovelacePortion)
- bPpuUpdateVoteThd :: !(Maybe LovelacePortion)
- bPpuUpdateProposalThd :: !(Maybe LovelacePortion)
- bPpuUpdateProposalTTL :: !(Maybe SlotNumber)
- bPpuSoftforkRule :: !(Maybe SoftforkRule)
- bPpuTxFeePolicy :: !(Maybe TxFeePolicy)
- bPpuUnlockStakeEpoch :: !(Maybe EpochNumber)
- makeByronUpdateProposal :: NetworkId -> ProtocolVersion -> SoftwareVersion -> SystemTag -> InstallerHash -> SomeByronSigningKey -> ByronProtocolParametersUpdate -> ByronUpdateProposal
- toByronLedgerUpdateProposal :: ByronUpdateProposal -> GenTx ByronBlock
- makeProtocolParametersUpdate :: ByronProtocolParametersUpdate -> ProtocolParametersUpdate
- newtype ByronVote = ByronVote {
- unByronVote :: AVote ByteString
- makeByronVote :: NetworkId -> SomeByronSigningKey -> ByronUpdateProposal -> Bool -> ByronVote
- toByronLedgertoByronVote :: ByronVote -> GenTx ByronBlock
- fromByronTxIn :: TxIn -> TxIn
- toByronLovelace :: Lovelace -> Maybe Lovelace
- toByronNetworkMagic :: NetworkId -> NetworkMagic
- toByronProtocolMagicId :: NetworkId -> ProtocolMagicId
- toByronRequiresNetworkMagic :: NetworkId -> RequiresNetworkMagic
- applicationName :: ApplicationName
- applicationVersion :: NumSoftwareVersion
- softwareVersion :: SoftwareVersion
- serializeByronTx :: ATxAux ByteString -> TextEnvelopeCddl
- writeByronTxFileTextEnvelopeCddl :: File content 'Out -> ATxAux ByteString -> IO (Either (FileError ()) ())
Documentation
module Cardano.Api
Instances
Cryptographic key interface
data family VerificationKey keyrole #
Instances
data family SigningKey keyrole #
Instances
data SomeByronSigningKey #
Constructors
AByronSigningKeyLegacy (SigningKey ByronKeyLegacy) | |
AByronSigningKey (SigningKey ByronKey) |
Hashes
Instances
Payment addresses
Constructing and inspecting Byron payment addresses
Constructors
ByronAddress :: Address -> Address ByronAddr |
Instances
Building transactions
Constructing and inspecting transactions
Constructors
TxId (Hash StandardCrypto EraIndependentTxBody) |
Instances
FromJSON TxId | |
Defined in Cardano.Api.TxIn | |
FromJSONKey TxId | |
Defined in Cardano.Api.TxIn | |
ToJSON TxId | |
Defined in Cardano.Api.TxIn Methods toEncoding :: TxId -> Encoding toJSONList :: [TxId] -> Value toEncodingList :: [TxId] -> Encoding | |
ToJSONKey TxId | |
Defined in Cardano.Api.TxIn | |
IsString TxId | |
Defined in Cardano.Api.TxIn Methods fromString :: String -> TxId Source # | |
Show TxId | |
HasTypeProxy TxId | |
Defined in Cardano.Api.TxIn | |
SerialiseAsRawBytes TxId | |
Defined in Cardano.Api.TxIn Methods serialiseToRawBytes :: TxId -> ByteString # deserialiseFromRawBytes :: AsType TxId -> ByteString -> Either SerialiseAsRawBytesError TxId # | |
Eq TxId | |
Ord TxId | |
data AsType TxId | |
Defined in Cardano.Api.TxIn |
Instances
FromJSON TxIn | |
Defined in Cardano.Api.TxIn | |
FromJSONKey TxIn | |
Defined in Cardano.Api.TxIn | |
ToJSON TxIn | |
Defined in Cardano.Api.TxIn Methods toEncoding :: TxIn -> Encoding toJSONList :: [TxIn] -> Value toEncodingList :: [TxIn] -> Encoding | |
ToJSONKey TxIn | |
Defined in Cardano.Api.TxIn | |
Show TxIn | |
Eq TxIn | |
Ord TxIn | |
Pretty TxIn | |
Defined in Cardano.Api.TxIn |
Constructors
TxOut (AddressInEra era) (TxOutValue era) (TxOutDatum ctx era) (ReferenceScript era) |
Instances
IsShelleyBasedEra era => FromJSON (TxOut CtxTx era) | |
Defined in Cardano.Api.TxBody Methods parseJSON :: Value -> Parser (TxOut CtxTx era) parseJSONList :: Value -> Parser [TxOut CtxTx era] omittedField :: Maybe (TxOut CtxTx era) | |
IsShelleyBasedEra era => FromJSON (TxOut CtxUTxO era) | |
Defined in Cardano.Api.TxBody Methods parseJSON :: Value -> Parser (TxOut CtxUTxO era) parseJSONList :: Value -> Parser [TxOut CtxUTxO era] omittedField :: Maybe (TxOut CtxUTxO era) | |
IsCardanoEra era => ToJSON (TxOut ctx era) | |
Defined in Cardano.Api.TxBody Methods toJSON :: TxOut ctx era -> Value toEncoding :: TxOut ctx era -> Encoding toJSONList :: [TxOut ctx era] -> Value toEncodingList :: [TxOut ctx era] -> Encoding | |
Show (TxOut ctx era) | |
Eq (TxOut ctx era) | |
Instances
FromJSON TxIx | |
Defined in Cardano.Api.TxIn | |
ToJSON TxIx | |
Defined in Cardano.Api.TxIn Methods toEncoding :: TxIx -> Encoding toJSONList :: [TxIx] -> Value toEncodingList :: [TxIx] -> Encoding | |
Enum TxIx | |
Show TxIx | |
Eq TxIx | |
Ord TxIx | |
Instances
Signing transactions
Creating transaction witnesses one by one, or all in one go.
Constructors
ATxAux | |
Fields
|
Instances
Functor ATxAux | |
FromCBOR TxAux | |
Defined in Cardano.Chain.UTxO.TxAux | |
ToCBOR TxAux | |
Defined in Cardano.Chain.UTxO.TxAux Methods toCBOR :: TxAux -> Encoding encodedSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy TxAux -> Size encodedListSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy [TxAux] -> Size | |
DecCBOR TxAux | |
EncCBOR TxAux | |
Defined in Cardano.Chain.UTxO.TxAux Methods encCBOR :: TxAux -> Encoding encodedSizeExpr :: (forall t. EncCBOR t => Proxy t -> Size) -> Proxy TxAux -> Size encodedListSizeExpr :: (forall t. EncCBOR t => Proxy t -> Size) -> Proxy [TxAux] -> Size | |
Buildable TxAux | |
Defined in Cardano.Chain.UTxO.TxAux Methods build :: TxAux -> Builder | |
ToJSON a => ToJSON (ATxAux a) | |
Defined in Cardano.Chain.UTxO.TxAux Methods toEncoding :: ATxAux a -> Encoding toJSONList :: [ATxAux a] -> Value toEncodingList :: [ATxAux a] -> Encoding | |
Generic (ATxAux a) | |
Show a => Show (ATxAux a) | |
FromCBOR (ATxAux ByteSpan) | |
Decoded (ATxAux ByteString) | |
Defined in Cardano.Chain.UTxO.TxAux Associated Types type BaseType (ATxAux ByteString) Methods recoverBytes :: ATxAux ByteString -> ByteString | |
DecCBOR (ATxAux ByteSpan) | |
NFData a => NFData (ATxAux a) | |
Defined in Cardano.Chain.UTxO.TxAux | |
Eq a => Eq (ATxAux a) | |
type Rep (ATxAux a) | |
Defined in Cardano.Chain.UTxO.TxAux type Rep (ATxAux a) = D1 ('MetaData "ATxAux" "Cardano.Chain.UTxO.TxAux" "cardano-ledger-byron-1.0.0.3-LYalELOlAkWHsn5rEEuqo3" 'False) (C1 ('MetaCons "ATxAux" 'PrefixI 'True) (S1 ('MetaSel ('Just "aTaTx") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Annotated Tx a)) :*: (S1 ('MetaSel ('Just "aTaWitness") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Annotated TxWitness a)) :*: S1 ('MetaSel ('Just "aTaAnnotation") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)))) | |
type BaseType (ATxAux ByteString) | |
Defined in Cardano.Chain.UTxO.TxAux |
Incremental signing and separate witnesses
data KeyWitness era where #
Constructors
ByronKeyWitness :: TxInWitness -> KeyWitness ByronEra |
Instances
Show (KeyWitness era) | |
Defined in Cardano.Api.Tx | |
HasTypeProxy era => HasTypeProxy (KeyWitness era) | |
Defined in Cardano.Api.Tx Associated Types data AsType (KeyWitness era) # Methods proxyToAsType :: Proxy (KeyWitness era) -> AsType (KeyWitness era) # | |
IsCardanoEra era => SerialiseAsCBOR (KeyWitness era) | |
Defined in Cardano.Api.Tx Methods serialiseToCBOR :: KeyWitness era -> ByteString # deserialiseFromCBOR :: AsType (KeyWitness era) -> ByteString -> Either DecoderError (KeyWitness era) # | |
IsCardanoEra era => HasTextEnvelope (KeyWitness era) | |
Defined in Cardano.Api.Tx Methods textEnvelopeType :: AsType (KeyWitness era) -> TextEnvelopeType # textEnvelopeDefaultDescr :: KeyWitness era -> TextEnvelopeDescr # | |
Eq (KeyWitness era) | |
Defined in Cardano.Api.Tx Methods (==) :: KeyWitness era -> KeyWitness era -> Bool Source # (/=) :: KeyWitness era -> KeyWitness era -> Bool Source # | |
data AsType (KeyWitness era) | |
Defined in Cardano.Api.Tx |
data WitnessNetworkIdOrByronAddress #
Constructors
WitnessNetworkId !NetworkId | |
WitnessByronAddress !(Address ByronAddr) |
Errors
Methods
prettyError :: e -> Doc ann #
Instances
Constructors
FileError FilePath e | |
FileErrorTempFile FilePath FilePath Handle | |
FileDoesNotExistError FilePath | |
FileIOError FilePath IOException |
Low level protocol interaction with a Cardano node
data LocalNodeConnectInfo #
Constructors
LocalNodeConnectInfo ConsensusModeParams NetworkId SocketPath |
data LocalNodeClientProtocols block point tip slot tx txid txerr (query :: Type -> Type) (m :: Type -> Type) #
Constructors
LocalNodeClientProtocols (LocalChainSyncClient block point tip m) (Maybe (LocalTxSubmissionClient tx txerr m ())) (Maybe (LocalStateQueryClient block point query m ())) (Maybe (LocalTxMonitorClient txid tx slot m ())) |
Chain sync protocol
newtype ChainSyncClient header point tip (m :: Type -> Type) a #
Constructors
ChainSyncClient | |
Fields
|
Local tx submission
newtype LocalTxSubmissionClient tx reject (m :: Type -> Type) a #
Constructors
LocalTxSubmissionClient (m (LocalTxClientStIdle tx reject m a)) |
Local state query
newtype LocalStateQueryClient block point (query :: Type -> Type) (m :: Type -> Type) a #
Constructors
LocalStateQueryClient | |
Fields
|
Address
newtype NetworkMagic #
Constructors
NetworkMagic | |
Fields |
Instances
Generic NetworkMagic | |
Defined in Ouroboros.Network.Magic Methods from :: NetworkMagic -> Rep NetworkMagic x Source # to :: Rep NetworkMagic x -> NetworkMagic Source # | |
Show NetworkMagic | |
Defined in Ouroboros.Network.Magic | |
Eq NetworkMagic | |
Defined in Ouroboros.Network.Magic Methods (==) :: NetworkMagic -> NetworkMagic -> Bool Source # (/=) :: NetworkMagic -> NetworkMagic -> Bool Source # | |
NoThunks NetworkMagic | |
Defined in Ouroboros.Network.Magic Methods noThunks :: Context -> NetworkMagic -> IO (Maybe ThunkInfo) wNoThunks :: Context -> NetworkMagic -> IO (Maybe ThunkInfo) showTypeOf :: Proxy NetworkMagic -> String | |
type Rep NetworkMagic | |
Defined in Ouroboros.Network.Magic type Rep NetworkMagic = D1 ('MetaData "NetworkMagic" "Ouroboros.Network.Magic" "ouroboros-network-api-0.6.1.0-A47bjiHDBREVwYFbul59o" 'True) (C1 ('MetaCons "NetworkMagic" 'PrefixI 'True) (S1 ('MetaSel ('Just "unNetworkMagic") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32))) |
Update Proposal
newtype ByronUpdateProposal #
Constructors
ByronUpdateProposal | |
Fields
|
Instances
Show ByronUpdateProposal | |
Defined in Cardano.Api.SpecialByron | |
HasTypeProxy ByronUpdateProposal | |
Defined in Cardano.Api.SpecialByron Associated Types data AsType ByronUpdateProposal # Methods proxyToAsType :: Proxy ByronUpdateProposal -> AsType ByronUpdateProposal # | |
SerialiseAsRawBytes ByronUpdateProposal | |
Defined in Cardano.Api.SpecialByron Methods serialiseToRawBytes :: ByronUpdateProposal -> ByteString # deserialiseFromRawBytes :: AsType ByronUpdateProposal -> ByteString -> Either SerialiseAsRawBytesError ByronUpdateProposal # | |
Eq ByronUpdateProposal | |
Defined in Cardano.Api.SpecialByron Methods (==) :: ByronUpdateProposal -> ByronUpdateProposal -> Bool Source # (/=) :: ByronUpdateProposal -> ByronUpdateProposal -> Bool Source # | |
data AsType ByronUpdateProposal | |
Defined in Cardano.Api.SpecialByron |
data ByronProtocolParametersUpdate #
Constructors
ByronProtocolParametersUpdate | |
Fields
|
Instances
makeByronUpdateProposal :: NetworkId -> ProtocolVersion -> SoftwareVersion -> SystemTag -> InstallerHash -> SomeByronSigningKey -> ByronProtocolParametersUpdate -> ByronUpdateProposal #
toByronLedgerUpdateProposal :: ByronUpdateProposal -> GenTx ByronBlock #
makeProtocolParametersUpdate :: ByronProtocolParametersUpdate -> ProtocolParametersUpdate #
Vote
Constructors
ByronVote | |
Fields
|
Instances
Show ByronVote | |
HasTypeProxy ByronVote | |
Defined in Cardano.Api.SpecialByron | |
SerialiseAsRawBytes ByronVote | |
Defined in Cardano.Api.SpecialByron Methods serialiseToRawBytes :: ByronVote -> ByteString # deserialiseFromRawBytes :: AsType ByronVote -> ByteString -> Either SerialiseAsRawBytesError ByronVote # | |
Eq ByronVote | |
data AsType ByronVote | |
Defined in Cardano.Api.SpecialByron |
makeByronVote :: NetworkId -> SomeByronSigningKey -> ByronUpdateProposal -> Bool -> ByronVote #
toByronLedgertoByronVote :: ByronVote -> GenTx ByronBlock #
Conversions
fromByronTxIn :: TxIn -> TxIn #
toByronLovelace :: Lovelace -> Maybe Lovelace #
toByronNetworkMagic :: NetworkId -> NetworkMagic #
toByronProtocolMagicId :: NetworkId -> ProtocolMagicId #
toByronRequiresNetworkMagic :: NetworkId -> RequiresNetworkMagic #
Hardcoded configuration parameters
applicationName :: ApplicationName #
applicationVersion :: NumSoftwareVersion #
softwareVersion :: SoftwareVersion #
Serialization
serializeByronTx :: ATxAux ByteString -> TextEnvelopeCddl #