Documentation
¶
Index ¶
- type Asset
- type AssetVtxo
- type AssetVtxoVw
- type Contract
- type DBTX
- type DeleteUtxoParams
- type GetVtxosParams
- type InsertAssetVtxoParams
- type InsertContractParams
- type InsertTxParams
- type InsertUtxoParams
- type InsertVtxoParams
- type Queries
- func (q *Queries) CleanAssetVtxos(ctx context.Context) error
- func (q *Queries) CleanAssets(ctx context.Context) error
- func (q *Queries) CleanContracts(ctx context.Context) error
- func (q *Queries) CleanTxs(ctx context.Context) error
- func (q *Queries) CleanUtxos(ctx context.Context) error
- func (q *Queries) CleanVtxos(ctx context.Context) error
- func (q *Queries) DeleteUtxo(ctx context.Context, arg DeleteUtxoParams) error
- func (q *Queries) GetVtxos(ctx context.Context, arg GetVtxosParams) ([]AssetVtxoVw, error)
- func (q *Queries) InsertAssetVtxo(ctx context.Context, arg InsertAssetVtxoParams) error
- func (q *Queries) InsertContract(ctx context.Context, arg InsertContractParams) error
- func (q *Queries) InsertTx(ctx context.Context, arg InsertTxParams) error
- func (q *Queries) InsertUtxo(ctx context.Context, arg InsertUtxoParams) error
- func (q *Queries) InsertVtxo(ctx context.Context, arg InsertVtxoParams) error
- func (q *Queries) ReplaceTx(ctx context.Context, arg ReplaceTxParams) error
- func (q *Queries) SelectActiveContractsByType(ctx context.Context, type_ string) ([]Contract, error)
- func (q *Queries) SelectAllContracts(ctx context.Context) ([]Contract, error)
- func (q *Queries) SelectAllTxs(ctx context.Context) ([]Tx, error)
- func (q *Queries) SelectAllUtxos(ctx context.Context) ([]Utxo, error)
- func (q *Queries) SelectAsset(ctx context.Context, assetID string) (Asset, error)
- func (q *Queries) SelectContractsByScripts(ctx context.Context, scripts []string) ([]Contract, error)
- func (q *Queries) SelectContractsByState(ctx context.Context, state string) ([]Contract, error)
- func (q *Queries) SelectLatestActiveContractByType(ctx context.Context, contractType string) (Contract, error)
- func (q *Queries) SelectSpendableOrRecoverableVtxos(ctx context.Context) ([]AssetVtxoVw, error)
- func (q *Queries) SelectTxs(ctx context.Context, txids []string) ([]Tx, error)
- func (q *Queries) SelectUtxo(ctx context.Context, arg SelectUtxoParams) (Utxo, error)
- func (q *Queries) SelectUtxosByTxid(ctx context.Context, txid string) ([]Utxo, error)
- func (q *Queries) SelectVtxo(ctx context.Context, arg SelectVtxoParams) ([]AssetVtxoVw, error)
- func (q *Queries) SettleVtxo(ctx context.Context, arg SettleVtxoParams) error
- func (q *Queries) SpendVtxo(ctx context.Context, arg SpendVtxoParams) error
- func (q *Queries) SweepVtxo(ctx context.Context, arg SweepVtxoParams) error
- func (q *Queries) UnrollVtxo(ctx context.Context, arg UnrollVtxoParams) error
- func (q *Queries) UpdateContractState(ctx context.Context, arg UpdateContractStateParams) (int64, error)
- func (q *Queries) UpdateTx(ctx context.Context, arg UpdateTxParams) error
- func (q *Queries) UpdateUtxo(ctx context.Context, arg UpdateUtxoParams) error
- func (q *Queries) UpsertAsset(ctx context.Context, arg UpsertAssetParams) error
- func (q *Queries) WithTx(tx *sql.Tx) *Queries
- type ReplaceTxParams
- type SelectUtxoParams
- type SelectVtxoParams
- type SettleVtxoParams
- type SpendVtxoParams
- type SweepVtxoParams
- type Tx
- type UnrollVtxoParams
- type UpdateContractStateParams
- type UpdateTxParams
- type UpdateUtxoParams
- type UpsertAssetParams
- type Utxo
- type Vtxo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Asset ¶
type Asset struct {
AssetID string
ControlAssetID sql.NullString
Metadata sql.NullString
}
type AssetVtxoVw ¶
type AssetVtxoVw struct {
Txid string
Vout int64
Script string
Amount int64
CommitmentTxids string
SpentBy sql.NullString
Spent bool
ExpiresAt int64
CreatedAt int64
Preconfirmed bool
Swept bool
SettledBy sql.NullString
Unrolled bool
ArkTxid sql.NullString
AssetID sql.NullString
AssetAmount sql.NullInt64
}
type DeleteUtxoParams ¶
type GetVtxosParams ¶ added in v0.10.0
type GetVtxosParams struct {
StatusFilter sql.NullString
AssetID sql.NullString
ScriptFilter sql.NullString
CursorCreatedAt sql.NullInt64
CursorTxid sql.NullString
CursorVout sql.NullInt64
LimitPlusOne int64
}
type InsertAssetVtxoParams ¶
type InsertContractParams ¶ added in v0.10.0
type InsertTxParams ¶
type InsertTxParams struct {
Txid string
TxidType string
Amount int64
Type string
CreatedAt int64
Hex sql.NullString
SettledBy sql.NullString
Settled bool
AssetPacket sql.NullString
}
type InsertUtxoParams ¶
type InsertUtxoParams struct {
Txid string
Vout int64
Script string
Amount int64
SpentBy sql.NullString
Spent bool
Tapscripts sql.NullString
SpendableAt sql.NullInt64
CreatedAt sql.NullInt64
DelayValue sql.NullInt64
DelayType sql.NullString
Tx sql.NullString
}
type InsertVtxoParams ¶
type Queries ¶
type Queries struct {
// contains filtered or unexported fields
}
func (*Queries) CleanContracts ¶ added in v0.10.0
func (*Queries) DeleteUtxo ¶
func (q *Queries) DeleteUtxo(ctx context.Context, arg DeleteUtxoParams) error
func (*Queries) GetVtxos ¶ added in v0.10.0
func (q *Queries) GetVtxos(ctx context.Context, arg GetVtxosParams) ([]AssetVtxoVw, error)
Cursor-based keyset pagination over VTXOs. Two stages. Stage 1, page_keys CTE, scans the base vtxo table (one row per VTXO so LIMIT counts VTXOs not asset rows), applies status and asset filters, applies the cursor predicate, sorts by (created_at DESC, txid DESC, vout DESC) using the matching composite index for an O(log n + limit) scan, and LIMITs at the SQL layer. Stage 2 INNER JOINs the paged keys against asset_vtxo_vw to hydrate assets in one round-trip; applying LIMIT to the view directly would cut multi-asset VTXOs mid-way. The caller passes (user_limit + 1) as limit_plus_one. The extra row is a has-more sentinel; if SQL returns more than user_limit rows the caller trims the last one and uses its outpoint as the next cursor. status_filter accepts NULL (no filter), spendable (spent=false AND unrolled=false), or spent (spent=true OR unrolled=true). asset_id uses EXISTS rather than JOIN so the row count stays at VTXO count. script_filter filters by exact match on the vtxo.script column (NULL = no filter). The cursor predicate uses SQL row-value comparison which is the canonical composite-key keyset idiom. CAST wrappers around sqlc.narg are required so sqlc emits typed nullable Go args instead of interface{}. WARNING: do not put inline -- comments inside the query body below; sqlc's query splitter breaks downstream queries when the GetVtxos body contains inline comments. Keep all docs here in the header.
func (*Queries) InsertAssetVtxo ¶
func (q *Queries) InsertAssetVtxo(ctx context.Context, arg InsertAssetVtxoParams) error
func (*Queries) InsertContract ¶ added in v0.10.0
func (q *Queries) InsertContract(ctx context.Context, arg InsertContractParams) error
func (*Queries) InsertTx ¶
func (q *Queries) InsertTx(ctx context.Context, arg InsertTxParams) error
func (*Queries) InsertUtxo ¶
func (q *Queries) InsertUtxo(ctx context.Context, arg InsertUtxoParams) error
func (*Queries) InsertVtxo ¶
func (q *Queries) InsertVtxo(ctx context.Context, arg InsertVtxoParams) error
func (*Queries) ReplaceTx ¶
func (q *Queries) ReplaceTx(ctx context.Context, arg ReplaceTxParams) error
func (*Queries) SelectActiveContractsByType ¶ added in v0.10.1
func (*Queries) SelectAllContracts ¶ added in v0.10.0
func (*Queries) SelectAllUtxos ¶
func (*Queries) SelectAsset ¶
func (*Queries) SelectContractsByScripts ¶ added in v0.10.0
func (*Queries) SelectContractsByState ¶ added in v0.10.0
func (*Queries) SelectLatestActiveContractByType ¶ added in v0.10.1
func (*Queries) SelectSpendableOrRecoverableVtxos ¶ added in v0.10.0
func (q *Queries) SelectSpendableOrRecoverableVtxos(ctx context.Context) ([]AssetVtxoVw, error)
func (*Queries) SelectUtxo ¶
func (*Queries) SelectUtxosByTxid ¶ added in v0.10.0
func (*Queries) SelectVtxo ¶
func (q *Queries) SelectVtxo(ctx context.Context, arg SelectVtxoParams) ([]AssetVtxoVw, error)
func (*Queries) SettleVtxo ¶
func (q *Queries) SettleVtxo(ctx context.Context, arg SettleVtxoParams) error
func (*Queries) SpendVtxo ¶
func (q *Queries) SpendVtxo(ctx context.Context, arg SpendVtxoParams) error
func (*Queries) SweepVtxo ¶
func (q *Queries) SweepVtxo(ctx context.Context, arg SweepVtxoParams) error
func (*Queries) UnrollVtxo ¶
func (q *Queries) UnrollVtxo(ctx context.Context, arg UnrollVtxoParams) error
func (*Queries) UpdateContractState ¶ added in v0.10.0
func (*Queries) UpdateTx ¶
func (q *Queries) UpdateTx(ctx context.Context, arg UpdateTxParams) error
func (*Queries) UpdateUtxo ¶
func (q *Queries) UpdateUtxo(ctx context.Context, arg UpdateUtxoParams) error
func (*Queries) UpsertAsset ¶
func (q *Queries) UpsertAsset(ctx context.Context, arg UpsertAssetParams) error
type ReplaceTxParams ¶
type ReplaceTxParams struct {
NewTxid string
TxidType string
Amount int64
Type string
SettledBy sql.NullString
CreatedAt int64
Hex sql.NullString
OldTxid string
}
type SelectUtxoParams ¶
type SelectVtxoParams ¶
type SettleVtxoParams ¶
type SettleVtxoParams struct {
SpentBy sql.NullString
SettledBy sql.NullString
Txid string
Vout int64
}
type SpendVtxoParams ¶
type SpendVtxoParams struct {
SpentBy sql.NullString
ArkTxid sql.NullString
Txid string
Vout int64
}
type SweepVtxoParams ¶
type Tx ¶
type Tx struct {
Txid string
TxidType string
Amount int64
Type string
Settled bool
CreatedAt int64
Hex sql.NullString
SettledBy sql.NullString
AssetPacket sql.NullString
}
type UnrollVtxoParams ¶
type UpdateContractStateParams ¶ added in v0.10.0
type UpdateTxParams ¶
type UpdateUtxoParams ¶
type UpsertAssetParams ¶
type UpsertAssetParams struct {
AssetID string
ControlAssetID sql.NullString
Metadata sql.NullString
}