-
Notifications
You must be signed in to change notification settings - Fork 258
About Batch Call
The host contract provides a bespoke solution for batching super token operations, agreements operations and app actions.
Each operation is described by this struct:
/**
* @dev Batch operation data
*/
struct Operation {
// Operation type. Defined in BatchOperation (Definitions.sol)
uint32 operationType;
// Operation target
address target;
// Data specific to the operation
bytes data;
}
operationType
is a set of enumerable constants defined in BatchOperation
library (NB! to be moved to global scope soon).
The most simple version of the batch call is to call batchCall
directly.
ERC-2771 defines a contract-level protocol for Recipient contracts to accept meta-transactions through trusted Forwarder contracts.
By being a trusted forwarder (checked through getTrustedForwarderConfigKey
governance method), a contract can call forwardBatchCall
on behalf of any address. Due to this power, there are very strict requirements on which contracts can be trusted forwarder; usually they should be immutable, verified and perhaps audited.
- (Deprecated) biconomy trusted forwarders for meta transactions.
- CFAv1Forwarder - an ergonomic interface for interacting with CFAv1.
- (To be deployed) https://github.com/superfluid-finance/protocol-monorepo/blob/dev/packages/ethereum-contracts/contracts/utils/IDAv1Forwarder.sol
- TODO GDAv1 Forwarder.
- Governance Overview
- For Contributors
- Development Process
- Protocol EVMv1 Operations
- Protocol EVMv1 Technical Notes
- Protocol EVMv1 Core Subgraph