function ethToToken(uint256 _minTokens, address recipient) private { // Отримуємо кількість токенів на контракті uint256 tokenReserve = getReserve(); // Обраховуємо кількість токенів, які отримає користувач в обмін на ETH(для цього викликається функція getAmount) uint256 tokensBought = getAmount(msg.value, address(this).balance - msg.value, tokenReserve); // Перевірка на прослизання(slippage) require(tokensBought >= _minTokens, "not enough amount to output"); // Переводимо токени на адрес користувача IERC20(tokenAddress).transfer(recipient, tokensBought); }
0.7.1