.. py:module:: ethereum.spurious_dragon.utils.message Hardfork Utility Functions For The Message Data-structure ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. contents:: Table of Contents :backlinks: none :local: Introduction ------------ Message specific functions used in this spurious dragon version of specification. .. only:: stage1 Module Contents --------------- Functions ~~~~~~~~~ .. autoapisummary:: :nosignatures: ethereum.spurious_dragon.utils.message.prepare_message Module Details --------------- prepare_message ~~~~~~~~~~~~~~~ .. function:: prepare_message(caller: ethereum.spurious_dragon.eth_types.Address, target: Union[ethereum.base_types.Bytes0, ethereum.spurious_dragon.eth_types.Address], value: ethereum.base_types.U256, data: ethereum.base_types.Bytes, gas: ethereum.base_types.U256, env: ethereum.spurious_dragon.vm.Environment, code_address: Optional[ethereum.spurious_dragon.eth_types.Address] = None, should_transfer_value: bool = True) -> ethereum.spurious_dragon.vm.Message :noindexentry: Execute a transaction against the provided environment. :param caller: Address which initiated the transaction :param target: Address whose code will be executed :param value: Value to be transferred. :param data: Array of bytes provided to the code in `target`. :param gas: Gas provided for the code in `target`. :param env: Environment for the Ethereum Virtual Machine. :param code_address: This is usually same as the `target` address except when an alternative accounts code needs to be executed. eg. `CALLCODE` calling a precompile. :param should_transfer_value: if True ETH should be transferred while executing a message call. :returns: **message** -- Items containing contract creation or message call specific data. :rtype: `ethereum.spurious_dragon.vm.Message` .. undocinclude:: /../src/ethereum/spurious_dragon/utils/message.py :language: python :pyobject: prepare_message