test: add GasTest to compare with Universal Router gas usage
This commit is contained in:
25
foundry/interfaces/IUniversalRouter.sol
Normal file
25
foundry/interfaces/IUniversalRouter.sol
Normal file
@@ -0,0 +1,25 @@
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
pragma solidity ^0.8.24;
|
||||
|
||||
interface IUniversalRouter {
|
||||
/// @notice Thrown when a required command has failed
|
||||
error ExecutionFailed(uint256 commandIndex, bytes message);
|
||||
|
||||
/// @notice Thrown when attempting to send ETH directly to the contract
|
||||
error ETHNotAccepted();
|
||||
|
||||
/// @notice Thrown when executing commands with an expired deadline
|
||||
error TransactionDeadlinePassed();
|
||||
|
||||
/// @notice Thrown when attempting to execute commands and an incorrect number of inputs are provided
|
||||
error LengthMismatch();
|
||||
|
||||
// @notice Thrown when an address that isn't WETH tries to send ETH to the router without calldata
|
||||
error InvalidEthSender();
|
||||
|
||||
/// @notice Executes encoded commands along with provided inputs. Reverts if deadline has expired.
|
||||
/// @param commands A set of concatenated commands, each 1 byte in length
|
||||
/// @param inputs An array of byte strings containing abi encoded inputs for each command
|
||||
/// @param deadline The deadline by which the transaction must be executed
|
||||
function execute(bytes calldata commands, bytes[] calldata inputs, uint256 deadline) external payable;
|
||||
}
|
||||
Reference in New Issue
Block a user