QueryContext
@midnight-ntwrk/compact-runtime v0.9.0
@midnight-ntwrk/compact-runtime / QueryContext
Class: QueryContext
Provides the information needed to fully process a transaction, including information about the rest of the transaction, and the state of the chain at the time of execution.
Constructors
Constructor
new QueryContext(state, address): QueryContext;
Construct a basic context from a contract's address and current state value
Parameters
state
address
string
Returns
QueryContext
Properties
address
readonly address: string;
The address of the contract
block
block: BlockContext;
The block-level information accessible to the contract
comIndicies
readonly comIndicies: Map<string, bigint>;
The commitment indices map accessible to the contract, primarily via qualify
effects
effects: Effects;
The effects that occurred during execution against this context, should match those declared in a Transcript
state
readonly state: StateValue;
The current contract state retained in the context
Methods
insertCommitment()
insertCommitment(comm, index): QueryContext;
Register a given coin commitment as being accessible at a specific index, for use when receiving coins in-contract, and needing to record their index to later spend them
Parameters
comm
string
index
bigint
Returns
QueryContext
intoTranscript()
intoTranscript(program, cost_model): [
| undefined
| Transcript<AlignedValue>,
| undefined
| Transcript<AlignedValue>];
Finalizes a sequence of operations against their initial context, resulting in a guaranteed and fallible Transcript, optimally allocated, and heuristically covered for gas fees.
Parameters
program
Op<AlignedValue>[]
cost_model
Returns
[
| undefined
| Transcript<AlignedValue>,
| undefined
| Transcript<AlignedValue>]
Deprecated
Please use the ledger's partitionTranscripts instead.
qualify()
qualify(coin): undefined | Value;
Internal
Internal counterpart to insertCommitment; upgrades an encoded CoinInfo to an encoded QualifiedCoinInfo using the inserted commitments
Parameters
coin
Returns
undefined | Value
query()
query(
ops,
cost_model,
gas_limit?): QueryResults;
Runs a sequence of operations in gather mode, returning the results of the gather.
Parameters
ops
Op<null>[]
cost_model
gas_limit?
bigint
Returns
runTranscript()
runTranscript(transcript, cost_model): QueryContext;
Runs a transcript in verifying mode against the current query context, outputting a new query context, with the state and effects from after the execution.
Parameters
transcript
Transcript<AlignedValue>
cost_model
Returns
QueryContext
toString()
toString(compact?): string;
Parameters
compact?
boolean
Returns
string