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