IV2SwapRouter
Functions for swapping tokens via Dragonswap V2
Functions
exactInputSingle
Swaps amountIn
of one token for as much as possible of another token
Setting amountIn
to 0 will cause the contract to look up its own balance, and swap the entire amount, enabling contracts to send tokens before calling this function.
function exactInputSingle(ExactInputSingleParams calldata params) external payable returns (uint256 amountOut);
Parameters
params
ExactInputSingleParams
The parameters necessary for the swap, encoded as ExactInputSingleParams
in calldata
Returns
amountOut
uint256
The amount of the received token
exactInput
Swaps amountIn
of one token for as much as possible of another along the specified path
Setting amountIn
to 0 will cause the contract to look up its own balance, and swap the entire amount, enabling contracts to send tokens before calling this function.
function exactInput(ExactInputParams calldata params) external payable returns (uint256 amountOut);
Parameters
params
ExactInputParams
The parameters necessary for the multi-hop swap, encoded as ExactInputParams
in calldata
Returns
amountOut
uint256
The amount of the received token
exactOutputSingle
Swaps as little as possible of one token for amountOut
of another token that may remain in the router after the swap.
function exactOutputSingle(ExactOutputSingleParams calldata params) external payable returns (uint256 amountIn);
Parameters
params
ExactOutputSingleParams
The parameters necessary for the swap, encoded as ExactOutputSingleParams
in calldata
Returns
amountIn
uint256
The amount of the input token
exactOutput
Swaps as little as possible of one token for amountOut
of another along the specified path (reversed) that may remain in the router after the swap.
function exactOutput(ExactOutputParams calldata params) external payable returns (uint256 amountIn);
Parameters
params
ExactOutputParams
The parameters necessary for the multi-hop swap, encoded as ExactOutputParams
in calldata
Returns
amountIn
uint256
The amount of the input token
Structs
ExactInputSingleParams
struct ExactInputSingleParams {
address tokenIn;
address tokenOut;
uint24 fee;
address recipient;
uint256 amountIn;
uint256 amountOutMinimum;
uint160 sqrtPriceLimitX96;
}
ExactInputParams
struct ExactInputParams {
bytes path;
address recipient;
uint256 amountIn;
uint256 amountOutMinimum;
}
ExactOutputSingleParams
struct ExactOutputSingleParams {
address tokenIn;
address tokenOut;
uint24 fee;
address recipient;
uint256 amountOut;
uint256 amountInMaximum;
uint160 sqrtPriceLimitX96;
}
ExactOutputParams
struct ExactOutputParams {
bytes path;
address recipient;
uint256 amountOut;
uint256 amountInMaximum;
}
Last updated