Build
Architecture
contracts
contracts
evm
tools
ZetaTokenConsumerPancakeV3.strategy.sol
Contract.zetatokenconsumerpancakev3

Git Source (opens in a new tab)

Inherits: ZetaTokenConsumer, ZetaTokenConsumerUniV3Errors

Uniswap V3 strategy for ZetaTokenConsumer

MAX_DEADLINE

uint256 internal constant MAX_DEADLINE = 200;

zetaPoolFee

uint24 public immutable zetaPoolFee;

tokenPoolFee

uint24 public immutable tokenPoolFee;

WETH9Address

address public immutable WETH9Address;

zetaToken

address public immutable zetaToken;

pancakeV3Router

ISwapRouterPancake public immutable pancakeV3Router;

uniswapV3Factory

IUniswapV3Factory public immutable uniswapV3Factory;

_locked

bool internal _locked;

constructor

constructor(
    address zetaToken_,
    address pancakeV3Router_,
    address uniswapV3Factory_,
    address WETH9Address_,
    uint24 zetaPoolFee_,
    uint24 tokenPoolFee_
);

nonReentrant

modifier nonReentrant();

receive

receive() external payable;

getZetaFromEth

function getZetaFromEth(address destinationAddress, uint256 minAmountOut) external payable override returns (uint256);

getZetaFromToken

function getZetaFromToken(
    address destinationAddress,
    uint256 minAmountOut,
    address inputToken,
    uint256 inputTokenAmount
) external override returns (uint256);

getEthFromZeta

function getEthFromZeta(address destinationAddress, uint256 minAmountOut, uint256 zetaTokenAmount)
    external
    override
    returns (uint256);

getTokenFromZeta

function getTokenFromZeta(
    address destinationAddress,
    uint256 minAmountOut,
    address outputToken,
    uint256 zetaTokenAmount
) external override nonReentrant returns (uint256);

hasZetaLiquidity

function hasZetaLiquidity() external view override returns (bool);