BlockchainProviderTF
Trait for blockchain providers with generic effect type. (TF is for "tagless final" style, often term used in FP literature).
Extends BlockchainReaderTF with transaction submission capability.
Attributes
- Graph
-
- Supertypes
- Known subtypes
Members list
Value members
Abstract methods
Poll for transaction confirmation, checking periodically until confirmed or max attempts reached.
Poll for transaction confirmation, checking periodically until confirmed or max attempts reached.
Value parameters
- delayMs
-
delay between attempts in milliseconds (default 1000)
- maxAttempts
-
maximum number of polling attempts (default 60)
- txHash
-
the transaction hash to poll for
Attributes
- Returns
-
the last observed transaction status
Submits a transaction to the network.
Submits a transaction to the network.
Attributes
Submit a transaction and poll until confirmed.
Submit a transaction and poll until confirmed.
Composes submit and pollForConfirmation: submits the transaction, then polls until it is confirmed or the maximum number of attempts is reached.
Value parameters
- delayMs
-
delay between attempts in milliseconds (default 1000)
- maxAttempts
-
maximum number of polling attempts (default 60)
- transaction
-
the transaction to submit
Attributes
- Returns
-
Right(txHash) if confirmed, Left(error) if submission failed or not confirmed
Inherited methods
Find a single UTxO by its transaction input.
Find a single UTxO by its transaction input.
Attributes
- Returns
-
Right(utxo) if found, Left(NotFound) otherwise
- Inherited from:
- BlockchainReaderTF
Find all UTxOs at the given address.
Find UTxOs by a set of transaction inputs (fails with NotFound if not all are found).
Find UTxOs by a set of transaction inputs (fails with NotFound if not all are found).
Attributes
- Inherited from:
- BlockchainReaderTF
Query UTxOs using a lambda DSL.
Query UTxOs using a lambda DSL.
Translates the lambda to a UtxoQuery at compile time and returns a builder that can be further configured before execution. Effect-polymorphic — the resulting .execute() returns the reader's own F[Either[UtxoQueryError, Utxos]], so the same call shape works on Future-typed providers (Blockfrost, JS) and direct-style providers (ox Id).
Example:
// Simple query — execute immediately
reader.queryUtxos { u =>
u.output.address == myAddress
}.execute()
// With pagination and minimum total
reader.queryUtxos { u =>
u.output.address == myAddress && u.output.value.hasAsset(policyId, assetName)
}.minTotal(Coin.ada(100)).limit(10).execute()
Supported expressions:
u.output.address == addr— query by addressu.input.transactionId == txId— query by transactionu.output.value.hasAsset(policyId, assetName)— query/filter by assetu.output.value.coin >= amount— filter by minimum lovelaceu.output.hasDatumHash(hash)— filter by datum hash&&— AND combination||— OR combination
Value parameters
- f
-
Lambda expression from Utxo to Boolean
Attributes
- Returns
-
A UtxoQueryWithReaderTF builder over this reader's effect type
- Inherited from:
- BlockchainReaderTF
Inherited and Abstract methods
Returns CardanoInfo for this provider.
Check the status of a transaction on the blockchain.
Check the status of a transaction on the blockchain.
Value parameters
- txHash
-
the transaction hash to check
Attributes
- Returns
-
the current status of the transaction
- Inherited from:
- BlockchainReaderTF
Returns the current slot number.
Fetches the latest protocol parameters from the network.
Fetches the latest protocol parameters from the network.
Attributes
- Inherited from:
- BlockchainReaderTF
Find UTxOs using a type-safe query.
Look up a datum by its hash. Returns None if unknown.
Map over this reader's effect F — the one primitive needed to give the convenience lookups above (findUtxo and the findUtxos overloads) a single effect-polymorphic default, without imposing an external Functor/Monad constraint on F. Future-based readers map via their captured ExecutionContext; monadic effects map via their monad.
Map over this reader's effect F — the one primitive needed to give the convenience lookups above (findUtxo and the findUtxos overloads) a single effect-polymorphic default, without imposing an external Functor/Monad constraint on F. Future-based readers map via their captured ExecutionContext; monadic effects map via their monad.
Attributes
- Inherited from:
- BlockchainReaderTF