TransactionForwarder_v1
Inherits: ITransactionForwarder_v1, ERC2771ForwarderUpgradeable, ContextUpgradeable
Author: Inverter Network
This contract enables users to interact with smart contracts indirectly through a trusted forwarder. It supports meta transactions, allowing transactions to be sent by one party but signed and paid for by another. It also handles batch transactions (multi-call), facilitating complex, multi-step interactions within a single transaction.
Integrates {ERC2771ForwarderUpgradeable} and {ContextUpgradeable} to manage and relay meta transactions. It handles nonce management, signature verification, and ensures only trusted calls are forwarded.
State Variables
__gap
Storage gap for future upgrades.
Functions
constructor
init
createDigest
Creates a digest for the given ForwardRequestData
.
The signature field of the given ForwardRequestData
can be empty.
Parameters
req
ForwardRequestData
The ForwardRequest you want to get the digest from.
Returns
digest
bytes32
The digest needed to create a signature for the request.
executeMulticall
Enables the execution of multiple calls in a single transaction.
Parameters
calls
SingleCall[]
Array of call structs that should be executed in the multicall.
Returns
results
Result[]
returnData The return data of the calls that were executed.
_getStructHash
Returns the digest for the given ForwardRequestData
.
Parameters
req
ERC2771ForwarderUpgradeable.ForwardRequestData
The ForwardRequest you want to get the digest from.
Returns
<none>
bytes32
digest The digest needed to create a signature for the request.
__isTrustedByTarget
Last updated