Factory
Last modified:
Code
Address
For current CenturionDEX v2 factory deployments by network, see V2 Deployment Addresses. The contract source is built from @centurion-dex/v2-core.
Events
PairCreated
event PairCreated(address indexed token0, address indexed token1, address pair, uint);Emitted each time a pair is created via createPair.
token0is guaranteed to be strictly less thantoken1by sort order.- The final
uintlog value will be1for the first pair created,2for the second, etc. (see allPairs/getPair).
Read-Only Functions
getPair
function getPair(address tokenA, address tokenB) external view returns (address pair);Returns the address of the pair for tokenA and tokenB, if it has been created, else address(0) (0x0000000000000000000000000000000000000000).
tokenAandtokenBare interchangeable.- Pair addresses can also be calculated deterministically via the SDK.
allPairs
function allPairs(uint) external view returns (address pair);Returns the address of the nth pair (0-indexed) created through the factory, or address(0) (0x0000000000000000000000000000000000000000) if not enough pairs have been created yet.
- Pass
0for the address of the first pair created,1for the second, etc.
allPairsLength
function allPairsLength() external view returns (uint);Returns the total number of pairs created through the factory so far.
feeTo
function feeTo() external view returns (address);See Distributing fees.
feeToSetter
function feeToSetter() external view returns (address);The address allowed to change feeTo.
State-Changing Functions
createPair
function createPair(address tokenA, address tokenB) external returns (address pair);Creates a pair for tokenA and tokenB if one doesn't exist already.
tokenAandtokenBare interchangeable.- Emits PairCreated.
Interface
import '@centurion-dex/v2-core/contracts/interfaces/ICenturionV2Factory.sol';pragma solidity >=0.5.0;
interface ICenturionV2Factory {
event PairCreated(address indexed token0, address indexed token1, address pair, uint);
function getPair(address tokenA, address tokenB) external view returns (address pair);
function allPairs(uint) external view returns (address pair);
function allPairsLength() external view returns (uint);
function feeTo() external view returns (address);
function feeToSetter() external view returns (address);
function createPair(address tokenA, address tokenB) external returns (address pair);
}ABI
import ICenturionV2Factory from '@centurion-dex/v2-core/build/ICenturionV2Factory.json'https://unpkg.com/@centurion-dex/v2-core@1.0.0/build/ICenturionV2Factory.json