Lovely Swap
Lovely Swap
  • Lovely Swap Introduction
    • Get Started
    • Security Check Audits
    • Roadmap
    • Click Here Quick Help
      • Troubleshooting Errors
      • General FAQ
      • What is an approval transaction?
      • Fixing stuck pending transactions on MetaMask
  • 🫰Key Capabilities
    • 🔁Swap
    • 🌊Pools
    • 🚜Yield Farming
    • 🏆Trading Competition
      • How to Create Trading Competition
      • How to Participate in Trading Competition
    • 💞LOVELY
    • 🖥️Lovely Swap Private RPC
  • Developer
    • Lovely Swap Contracts
      • Factory
      • Router
      • Farming
      • ILO
    • API
    • Lovely Swap Private RPC
  • Contributing
    • Developer
    • Community Moderator
    • Shiller
    • KOL
    • Content Writter
  • Contact Us
Powered by GitBook
On this page
  • Contract info
  • Read functions
  1. Developer
  2. Lovely Swap Contracts

Factory

PreviousLovely Swap ContractsNextRouter

Last updated 12 months ago

Lovely Swap is a highly customized version of Uniswap v2. It contains additional logic and constraints around validating and listing token pairs.

Read the . For more in-depth information on the core contract logic, read the .

Contract info

Contract name: LovelyFactory

View .

Chain
Address

BSC

0x7db16925214B2F5D65dB741D59208A1187B9961c

Base

0x7db16925214B2F5D65dB741D59208A1187B9961c

Polygon

0x177aeb3727c91c4796766336923c4da431c59637

X Layer

0x364ba5dfd5920bd4a82d2ae3fa392da187f7331e

Read functions

SetDefaultValidationAmount

event SetDefaultValidationAmount(uint amount)

Emitted when the defaultValidationAmount is updated.

SetMainToken

event SetMainToken(address token)

Emitted when the mainToken is set.

PairCreated

event PairCreated(address indexed token0, address indexed token1, address pair, uint);

Emitted each time a pair is created via createPair.

  • token0 is guaranteed to be strictly less than token1 by sort order.

  • The final uint log value will be 1 for the first pair created, 2 for the second, etc. (see allPairs/getPair).

Read-Only Functions

getTokenList

function getTokenList() external view returns (LOVELYTokenList)

Returns the on-chain token list reference.

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).

  • tokenA and tokenB are 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 0 for the address of the first pair created, 1 for 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 Protocol Charge Calculation.

feeToSetter

function feeToSetter() external view returns (address);

The address allowed to change feeTo.

State-Changing Functions

createValidatedPair

function createValidatedPair(
  address tokenA,
  address tokenB,  
  address tokenC, 
  uint validationAmount,
  uint fee    
) external returns (address pair)

Creates a validated token pair. Calls LOVELYTokenList to ensure tokens are valid and activated.

Enforces constraints around the main token if set and minimum validation amounts.

setDefaultValidationAmount

function setDefaultValidationAmount(uint amount) external

Sets the default validation amount required to list new pairs.

setMainToken

function setMainToken(address token) external

Sets the main DEX token. New pairs must contain this token.

Uniswap v2 documentation
Uniswap v2 Core whitepaper
Lovely Swap Factory.sol on GitHub