钱包交易所开发运营版丨钱包交易所系统开发案例项目/方案规则/详情模式/源码功能

简介: require(liquidity>0,'UniswapV2:INSUFFICIENT_LIQUIDITY_MINTED');

 
require(liquidity>0,'UniswapV2:INSUFFICIENT_LIQUIDITY_MINTED');

  _mint(to,liquidity);

  _update(balance0,balance1,_reserve0,_reserve1);

  if(feeOn)kLast=uint(reserve0).mul(reserve1);//reserve0 and reserve1 are up-to-date

  emit Mint(msg.sender,amount0,amount1);

  }

  //this low-level function should be called from a contract which performs important safety checks

  function burn(address to)external lock returns(uint amount0,uint amount1){

  (uint112 _reserve0,uint112 _reserve1,)=getReserves();//gas savings

  address _token0=token0;//gas savings

  address _token1=token1;//gas savings

  uint balance0=IERC20(_token0).balanceOf(address(this));

  uint balance1=IERC20(_token1).balanceOf(address(this));

  uint liquidity=balanceOf[address(this)];

  bool feeOn=_mintFee(_reserve0,_reserve1);

  uint _totalSupply=totalSupply;//gas savings,must be defined here since totalSupply can update in _mintFee

  //计算返回的amount0/1

  amount0=liquidity.mul(balance0)/_totalSupply;//using balances ensures pro-rata distribution

  amount1=liquidity.mul(balance1)/_totalSupply;//using balances ensures pro-rata distribution

  require(amount0>0&&amount1>0,'UniswapV2:INSUFFICIENT_LIQUIDITY_BURNED');

  _burn(address(this),liquidity);

  //_token0/1给to转amount0/1

  _safeTransfer(_token0,to,amount0);

  _safeTransfer(_token1,to,amount1);

  balance0=IERC20(_token0).balanceOf(address(this));

  balance1=IERC20(_token1).balanceOf(address(this));

  _update(balance0,balance1,_reserve0,_reserve1);

  if(feeOn)kLast=uint(reserve0).mul(reserve1);//reserve0 and reserve1 are up-to-date

  emit Burn(msg.sender,amount0,amount1,to);

  }

相关文章
|
6月前
|
安全 JavaScript 前端开发
质押理财dapp系统开发功能详细/步骤需求/方案项目/源码指南
The development of a pledge wealth management DApp system involves knowledge in various aspects such as blockchain technology, smart contracts, front-end development, and security. The following are the detailed steps for developing a pledge wealth management DApp system
|
6月前
|
安全 API 网络安全
数字货币交易所系统开发详细功能/需求项目/教程步骤/指南逻辑
Developing a digital currency exchange system is a complex project that requires multiple steps to complete. The following are the general steps for developing a digital currency exchange system
|
存储 监控 安全
合约交易所开发详情丨合约交易所系统开发项目/成熟案例/方案逻辑/规则玩法/稳定版/源码部署
合约交易所系统开发是一个复杂的项目,它涉及多个方面,包括系统设计、规则制定、开发实现、部署和稳定运行等
|
存储 算法 安全
去中心化交易所系统开发案例|模式详情|方案指南
我们常说的出块,就是指数据存储在各个块上,各个块用链的方式组合在一起形成数据结构
|
安全 区块链
钱包交易所开发技术方案丨钱包交易所系统开发(开发案例)/详细项目/源码部署
钱包交易所开发技术方案丨钱包交易所系统开发(开发案例)/详细项目/源码部署
|
安全 区块链
区块链交易所开发运营版丨区块链交易所系统开发规则详细/项目案例/设计功能/需求逻辑/源码部署
Blockchain exchange refers to an online platform built on blockchain technology for trading and managing digital assets, such as cryptocurrencies (such as Bitcoin, Ethereum, etc.) and other digital assets or tokens. Blockchain exchanges allow users to buy, sell, store, and manage digital assets.
|
算法 JavaScript 前端开发
秒合约交易所系统开发技术|现成案例|详情规则
区块链技术的最初迭代在某种程度上可与网站第一次进化相媲美。
|
区块链
数字货币永续合约系统开发|测试版|逻辑规则|案例详情
永续合约采用了期货合约的特点,尤其是无需交割实际商品。同时,模仿了现货市场的行为,以缩小期货价格与标记价格之间的差距。与传统的期货合约相比,这是一个很大的进步。
|
TensorFlow API 算法框架/工具
合约跟单(对接API火币/币安/OK交易所)策略系统开发详情方案/成熟技术/案例项目/源码功能
  量化交易就是以数学公式和统计数据等为基础来建立数学模型,通过数学模型来进行交易。
|
存储 前端开发 JavaScript
区块链交易所系统开发(海外版)丨交易所系统开发详细规则/方案介绍/项目逻辑/源码平台
  区块链是一种基于分布式账本技术的去中心化数据库系统。它通过一系列的区块(blocks)来记录和存储交易和数据,形成一个连续的、不可篡改的链式结构。