Skip to main content

QueryContext

@midnight-ntwrk/compact-runtime v0.14.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​

ChargedState

address​

string

Returns​

QueryContext

Properties​

address​

readonly address: string;

The address of the contract


block​

block: CallContext;

The block-level information accessible to the contract


comIndices​

readonly comIndices: 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: ChargedState;

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


qualify()​

qualify(coin): Value | undefined;

Internal

Internal counterpart to insertCommitment; upgrades an encoded ShieldedCoinInfo to an encoded QualifiedShieldedCoinInfo using the inserted commitments

Parameters​

coin​

Value

Returns​

Value | undefined


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​

CostModel

gas_limit?​

RunningCost

Returns​

QueryResults


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​

CostModel

Returns​

QueryContext


toString()​

toString(compact?): string;

Parameters​

compact?​

boolean

Returns​

string


toVmStack()​

toVmStack(): VmStack;

Converts the QueryContext to VmStack.

Returns​

VmStack