SwapRouter

Algebra Swap Router

Router for stateless execution of swaps against Algebra

Developer note: Credit to Uniswap Labs under GPL-2.0-or-later license: https://github.com/Uniswap/v3-periphery

Functions

constructor

constructor(address _factory, address _WNativeToken, address _poolDeployer) public public

algebraSwapCallback

function algebraSwapCallback(int256 amount0Delta, int256 amount1Delta, bytes _data) external external

Called to `msg.sender` after executing a swap via IAlgebraPool#swap. Developer note: In the implementation you must pay the pool tokens owed for the swap. The caller of this method must be checked to be a AlgebraPool deployed by the canonical AlgebraFactory. amount0Delta and amount1Delta can both be 0 if no tokens were swapped.

exactInputSingle

function exactInputSingle(struct ISwapRouter.ExactInputSingleParams params) external payable returns (uint256 amountOut) payable external

Swaps `amountIn` of one token for as much as possible of another token

Returns:

exactInput

function exactInput(struct ISwapRouter.ExactInputParams params) external payable returns (uint256 amountOut) payable external

Swaps `amountIn` of one token for as much as possible of another along the specified path

Returns:

exactInputSingleSupportingFeeOnTransferTokens

function exactInputSingleSupportingFeeOnTransferTokens(struct ISwapRouter.ExactInputSingleParams params) external returns (uint256 amountOut) external

Swaps `amountIn` of one token for as much as possible of another along the specified path Developer note: Unlike standard swaps, handles transferring from user before the actual swap.

Returns:

exactOutputSingle

function exactOutputSingle(struct ISwapRouter.ExactOutputSingleParams params) external payable returns (uint256 amountIn) payable external

Swaps as little as possible of one token for `amountOut` of another token

Returns:

exactOutput

function exactOutput(struct ISwapRouter.ExactOutputParams params) external payable returns (uint256 amountIn) payable external

Swaps as little as possible of one token for `amountOut` of another along the specified path (reversed)

Returns: