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

简介: 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);

  }

相关文章
|
7月前
|
安全 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
|
API 区块链 Python
对接API火币/币安/OK/欧易交易所系统开发详细功能/案例设计/策略项目/源码功能
合约量化系统是一种自动化交易工具,它通过计算机程序实现交易决策和执行。
|
存储 监控 安全
合约交易所开发详情丨合约交易所系统开发项目/成熟案例/方案逻辑/规则玩法/稳定版/源码部署
合约交易所系统开发是一个复杂的项目,它涉及多个方面,包括系统设计、规则制定、开发实现、部署和稳定运行等
|
机器人 API
(对接API火币/币安/OK/欧易交易所)合约跟单成熟技术及方案/开发稳定版/详细案例/源码功能
  现货合约量化交易所机器人系统是指通过计算机程序实现自动化交易的系统,它可以根据事先设定的交易策略和规则进行自动交易。
|
TensorFlow API 区块链
合约跟单开发案例丨合约跟单对接API火币/币安/OK交易所系统开发逻辑方案/成熟技术/项目案例/源码平台
dapp定制开发技术主要包括以太坊智能合约定制开发,包括智能合约语言Solidity开发,以太坊智能合约框架Truffle开发,Web3.js开发,以太坊区块链浏览器Mist开发等。这些技术可以帮助开发者快速构建出功能强大、可靠性高的dapp。
|
存储 算法 安全
去中心化交易所系统开发案例|模式详情|方案指南
我们常说的出块,就是指数据存储在各个块上,各个块用链的方式组合在一起形成数据结构
|
安全 区块链
钱包交易所开发技术方案丨钱包交易所系统开发(开发案例)/详细项目/源码部署
钱包交易所开发技术方案丨钱包交易所系统开发(开发案例)/详细项目/源码部署
|
存储 关系型数据库 MySQL
(demo)交易所App开发功能|交易所系统开发源码规则解析
(demo)交易所App开发功能|交易所系统开发源码规则解析
|
算法 JavaScript 前端开发
秒合约交易所系统开发技术|现成案例|详情规则
区块链技术的最初迭代在某种程度上可与网站第一次进化相媲美。
|
区块链
数字货币永续合约系统开发|测试版|逻辑规则|案例详情
永续合约采用了期货合约的特点,尤其是无需交割实际商品。同时,模仿了现货市场的行为,以缩小期货价格与标记价格之间的差距。与传统的期货合约相比,这是一个很大的进步。