Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Marconi.Cardano.Indexers.UtxoQuery
Description
Synopsis
- type UtxoQueryIndexer m = WithTrace IO (SQLiteAggregateQuery m ChainPoint) UtxoQueryEvent
- data UtxoQueryAggregate m = forall utxoIndexer utxo spentIndexer spent datumIndexer datum blockInfoIndexer blockInfo.(IsSourceProvider m (NonEmpty Utxo) utxoIndexer, IsSourceProvider m utxo utxoIndexer, Point utxo ~ Point (NonEmpty Utxo), IsSourceProvider m (NonEmpty SpentInfo) spentIndexer, IsSourceProvider m spent spentIndexer, Point spent ~ Point (NonEmpty SpentInfo), IsSourceProvider m (NonEmpty DatumInfo) datumIndexer, IsSourceProvider m datum datumIndexer, Point datum ~ Point (NonEmpty DatumInfo), IsSourceProvider m BlockInfo blockInfoIndexer, IsSourceProvider m blockInfo blockInfoIndexer, Point blockInfo ~ Point BlockInfo) => UtxoQueryAggregate {
- utxoIndexer :: MVar (utxoIndexer utxo)
- spentIndexer :: MVar (spentIndexer spent)
- datumIndexer :: MVar (datumIndexer datum)
- blockInfoIndexer :: MVar (blockInfoIndexer blockInfo)
- data UtxoQueryEvent
- mkUtxoSQLiteQuery :: UtxoQueryAggregate m -> IO (SQLiteAggregateQuery m ChainPoint event)
- data UtxoQueryInput = UtxoQueryInput {}
- address :: Lens' UtxoQueryInput AddressAny
- lowerBound :: Lens' UtxoQueryInput (Maybe SlotNo)
- upperBound :: Lens' UtxoQueryInput (Maybe SlotNo)
- data UtxoResult = UtxoResult Utxo !(Maybe ScriptData) !(Timed ChainPoint BlockInfo) !(Maybe (Timed ChainPoint (BlockInfo, TxId))) [TxIn]
- utxo :: Lens' UtxoResult Utxo
- datum :: Lens' UtxoResult (Maybe ScriptData)
- blockInfo :: Lens' UtxoResult (Timed ChainPoint BlockInfo)
- spentInfo :: Lens' UtxoResult (Maybe (Timed ChainPoint (BlockInfo, TxId)))
- inputs :: Lens' UtxoResult [TxIn]
Indexer
type UtxoQueryIndexer m = WithTrace IO (SQLiteAggregateQuery m ChainPoint) UtxoQueryEvent #
An alias for the SQLiteAggregateQuery
that handle the UtxoQueryEvent
data UtxoQueryAggregate m #
Explicit list of resources needed for the UtxoQueryAggregate
Constructors
forall utxoIndexer utxo spentIndexer spent datumIndexer datum blockInfoIndexer blockInfo.(IsSourceProvider m (NonEmpty Utxo) utxoIndexer, IsSourceProvider m utxo utxoIndexer, Point utxo ~ Point (NonEmpty Utxo), IsSourceProvider m (NonEmpty SpentInfo) spentIndexer, IsSourceProvider m spent spentIndexer, Point spent ~ Point (NonEmpty SpentInfo), IsSourceProvider m (NonEmpty DatumInfo) datumIndexer, IsSourceProvider m datum datumIndexer, Point datum ~ Point (NonEmpty DatumInfo), IsSourceProvider m BlockInfo blockInfoIndexer, IsSourceProvider m blockInfo blockInfoIndexer, Point blockInfo ~ Point BlockInfo) => UtxoQueryAggregate | |
Fields
|
data UtxoQueryEvent #
Uninhabited type for the UtxoQueryAggregate (as it's an aggregate, it doesn't index anything)
Instances
MonadIO m => Queryable m UtxoQueryEvent UtxoQueryInput (SQLiteAggregateQuery n ChainPoint) # | |
Defined in Marconi.Cardano.Indexers.UtxoQuery Methods query :: Point UtxoQueryEvent -> UtxoQueryInput -> SQLiteAggregateQuery n ChainPoint UtxoQueryEvent -> m (Result UtxoQueryInput) Source # queryLatest :: UtxoQueryInput -> SQLiteAggregateQuery n ChainPoint UtxoQueryEvent -> m (Result UtxoQueryInput) Source # | |
type Point UtxoQueryEvent # | |
Defined in Marconi.Cardano.Indexers.UtxoQuery |
mkUtxoSQLiteQuery :: UtxoQueryAggregate m -> IO (SQLiteAggregateQuery m ChainPoint event) #
Generate a UtxoQueryIndexer
from the given source
Query
data UtxoQueryInput #
Constructors
UtxoQueryInput | |
Fields
|
Instances
address :: Lens' UtxoQueryInput AddressAny #
lowerBound :: Lens' UtxoQueryInput (Maybe SlotNo) #
upperBound :: Lens' UtxoQueryInput (Maybe SlotNo) #
Result
data UtxoResult #
Constructors
UtxoResult Utxo !(Maybe ScriptData) !(Timed ChainPoint BlockInfo) !(Maybe (Timed ChainPoint (BlockInfo, TxId))) [TxIn] |
Instances
utxo :: Lens' UtxoResult Utxo #
datum :: Lens' UtxoResult (Maybe ScriptData) #
blockInfo :: Lens' UtxoResult (Timed ChainPoint BlockInfo) #
spentInfo :: Lens' UtxoResult (Maybe (Timed ChainPoint (BlockInfo, TxId))) #
inputs :: Lens' UtxoResult [TxIn] #