Skip to main content

UniswapV3Factory

Deploys Uniswap V3 pools and manages ownership and control over pool protocol fees

Functions#

createPool#

function createPool(
address tokenA,
address tokenB,
uint24 fee
) external returns (address pool)

Creates a pool for the given two tokens and fee

tokenA and tokenB may be passed in either order: token0/token1 or token1/token0. tickSpacing is retrieved from the fee. The call will revert if the pool already exists, the fee is invalid, or the token arguments are invalid.

Parameters:#

NameTypeDescription
tokenAaddressOne of the two tokens in the desired pool
tokenBaddressThe other of the two tokens in the desired pool
feeuint24The desired fee for the pool

Return Values:#

NameTypeDescription
pooladdressThe address of the newly created pool

setOwner#

function setOwner(
address _owner
) external

Updates the owner of the factory

Must be called by the current owner

Parameters:#

NameTypeDescription
_owneraddressThe new owner of the factory

enableFeeAmount#

function enableFeeAmount(
uint24 fee,
int24 tickSpacing
) public

Enables a fee amount with the given tickSpacing

Fee amounts may never be removed once enabled

Parameters:#

NameTypeDescription
feeuint24The fee amount to enable, denominated in hundredths of a bip (i.e. 1e-6)
tickSpacingint24The spacing between ticks to be enforced for all pools created with the given fee amount