Module gstd::exec

source ·
Expand description

Utility functions related to the current execution context or program execution flow.

Wraps methods from gcore::exec for receiving details about the current execution and controlling it.


  • Get the current block height.
  • Get the current block timestamp.
  • Get current version of environment variables.
  • Terminate the execution of a program.
  • Get the current amount of gas available for execution.
  • Break the current execution.
  • Return the identifier of the current program.
  • Get the random seed, along with the block number from which it is determinable by chain observers.
  • Provide gas deposit from current message to handle reply message on given message id.
  • Delays message execution in asynchronous way for the specified number of blocks. It works pretty much like the exec::wait_for function, but allows to continue execution after the delay in the same handler. It is worth mentioning that the program state gets persisted inside the call, and the execution resumes with potentially different state.
  • Reserve the amount of gas for system usage.
  • Get the total available value amount.
  • Pause the current message handling.
  • Same as wait, but delays handling for a specific number of blocks.
  • Same as wait, but delays handling for the maximum number of blocks that can be paid for and doesn’t exceed the given duration.
  • Resume previously paused message handling.
  • Same as wake, but executes after the delay expressed in block count.