hydra-node
Safe HaskellSafe-Inferred
LanguageGHC2021

Hydra.Chain.Backend

Synopsis

Documentation

class ChainBackend m where Source #

Methods

queryGenesisParameters :: m (GenesisParameters ShelleyEra) Source #

queryScriptRegistry :: [TxId] -> m ScriptRegistry Source #

queryNetworkId :: m NetworkId Source #

queryTip :: m ChainPoint Source #

queryUTxO :: [Address ShelleyAddr] -> m UTxO Source #

queryUTxOByTxIn :: [TxIn] -> m UTxO Source #

queryEraHistory :: QueryPoint -> m EraHistory Source #

querySystemStart :: QueryPoint -> m SystemStart Source #

queryProtocolParameters :: QueryPoint -> m (PParams LedgerEra) Source #

queryStakePools :: QueryPoint -> m (Set PoolId) Source #

queryUTxOFor :: QueryPoint -> VerificationKey PaymentKey -> m UTxO Source #

submitTransaction :: Tx -> m () Source #

awaitTransaction :: Tx -> VerificationKey PaymentKey -> m UTxO Source #

getBlockTime :: m NominalDiffTime Source #

Instances

Instances details
ChainBackend BlockfrostBackend Source # 
Instance details

Defined in Hydra.Chain.Blockfrost

ChainBackend DirectBackend Source # 
Instance details

Defined in Hydra.Chain.Direct

buildTransaction Source #

Arguments

:: ChainBackend m 
=> MonadIO m 
=> AddressInEra

Change address to send

-> UTxO

Unspent transaction outputs to spend.

-> [TxIn]

Collateral inputs.

-> [TxOut CtxTx]

Outputs to create.

-> m (Either (TxBodyErrorAutoBalance Era) Tx) 

buildTransactionWithMintingScript Source #

Arguments

:: ChainBackend m 
=> MonadIO m 
=> AddressInEra

Change address to send

-> UTxO

Unspent transaction outputs to spend.

-> [TxIn]

Collateral inputs.

-> [TxOut CtxTx]

Outputs to create.

-> Maybe PlutusScript 
-> m (Either (TxBodyErrorAutoBalance Era) Tx) 

buildTransactionWithPParams Source #

Arguments

:: ChainBackend m 
=> MonadIO m 
=> PParams LedgerEra

Protocol parameters

-> AddressInEra

Change address to send

-> UTxO

Unspent transaction outputs to spend.

-> [TxIn]

Collateral inputs.

-> [TxOut CtxTx]

Outputs to create.

-> Maybe PlutusScript 
-> m (Either (TxBodyErrorAutoBalance Era) Tx) 

Construct a simple payment consuming some inputs and producing some outputs (no certificates or withdrawals involved).

On success, the returned transaction is fully balanced. On error, return TxBodyErrorAutoBalance.

buildTransactionWithPParams' Source #

Arguments

:: PParams LedgerEra

Protocol parameters

-> SystemStart 
-> EraHistory 
-> Set PoolId 
-> AddressInEra

Change address to send

-> UTxO

Unspent transaction outputs to spend.

-> [TxIn]

Collateral inputs.

-> [TxOut CtxTx]

Outputs to create.

-> Maybe PlutusScript 
-> Either (TxBodyErrorAutoBalance Era) Tx 

NOTE: If there are any non ADA assets present in the output Value and minting scrips is specified this function will mint them using provided script as the script witness.

buildTransactionWithBody Source #

Arguments

:: PParams LedgerEra

Protocol parameters

-> SystemStart

System start

-> EraHistory

Change address to send

-> Set PoolId 
-> AddressInEra 
-> TxBodyContent BuildTx

Body

-> UTxO

Unspent transaction outputs to spend.

-> Either (TxBodyErrorAutoBalance Era) Tx