Skip to content

Commit 5fc98d8

Browse files
committed
work nice, Please ???
1 parent 03cfaf8 commit 5fc98d8

File tree

3 files changed

+20
-85
lines changed

3 files changed

+20
-85
lines changed

contracts/SwapPair/RootSwapPairContract.sol

+3-4
Original file line numberDiff line numberDiff line change
@@ -50,17 +50,16 @@ contract RootSwapPairContract is
5050
//============Constructor===========
5151

5252
constructor(
53-
TvmCell spCode,
54-
uint32 spCodeVersion,
5553
uint256 minMsgValue,
5654
uint256 contractSP,
5755
address tip3Deployer_
5856
) public {
5957
tvm.accept();
6058
creationTimestamp = now;
6159
// Setting code
62-
swapPairCode = spCode;
63-
swapPairCodeVersion = spCodeVersion;
60+
TvmCell empty;
61+
swapPairCode = empty;
62+
swapPairCodeVersion = 0;
6463
// Setting payment options
6564
minMessageValue = minMsgValue > RootSwapPairConstants.sendToNewSwapPair ?
6665
minMsgValue :

contracts/SwapPair/SwapPairContract.sol

+16-80
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,6 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
291291
function _calculateProvidingLiquidityInfo(uint128 maxFirstTokenAmount, uint128 maxSecondTokenAmount)
292292
private
293293
view
294-
/*inline*/
295294
returns (uint128 provided1, uint128 provided2, uint256 _minted)
296295
{
297296
if ( !_checkIsLiquidityProvided() ) {
@@ -317,7 +316,6 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
317316
function _calculateWithdrawingLiquidityInfo(uint256 liquidityTokensAmount)
318317
private
319318
view
320-
/*inline*/
321319
returns (uint128 withdrawed1, uint128 withdrawed2, uint256 _burned)
322320
{
323321
if (liquidityTokensMinted <= 0 || liquidityTokensAmount <= 0)
@@ -331,7 +329,6 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
331329
function _calculateOneTokenProvidingAmount(address tokenRoot, uint128 tokenAmount)
332330
private
333331
view
334-
/*inline*/
335332
returns(uint128)
336333
{
337334
uint8 fromK = _getTokenPosition(tokenRoot);
@@ -346,7 +343,6 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
346343
function _getSwapInfo(address swappableTokenRoot, uint128 swappableTokenAmount)
347344
private
348345
view
349-
/*inline*/
350346
tokenExistsInPair(swappableTokenRoot)
351347
returns (_SwapInfoInternal swapInfo)
352348
{
@@ -438,10 +434,6 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
438434
) private pure {
439435
uint128 amount = needToProvideAmount - actualAmount;
440436
if (amount > 0) {
441-
// ITONTokenWallet(tokenWallet).transfer{
442-
// value: msg.value/8,
443-
// flag: 0
444-
// }(senderTokenWallet, amount, 0, senderAddress, false, payloadTB.toCell());
445437
_sendTokens(tokenWallet, senderTokenWallet, amount, senderAddress, false, payloadTB.toCell());
446438
}
447439
}
@@ -537,7 +529,6 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
537529
// TODO: рефакторинг: вынести создание payload в отдельный метод
538530
TvmCell payload = _createWithdrawResultPayload(w1, t1a, w2, t2a);
539531
ITONTokenWallet(w1).transfer{value: msg.value/3}(lpwi.tw1, t1a, 0, address(this), true, payload);
540-
// ITONTokenWallet(w2).transfer{flag: 64, value: 0}(lpwi.tw2, t2a, 0, address(this), true, payload);
541532
_sendTokens(w2, lpwi.tw2, t2a, address(this), true, payload);
542533
}
543534

@@ -551,13 +542,12 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
551542
payloadB.store(tokenWallet, amount);
552543
TvmCell payload = payloadB.toCell();
553544

554-
// ITONTokenWallet(w).transfer{flag: 64, value: 0}(tokenWallet, amount, 0, address(this), true, payload);
555545
_sendTokens(w, tokenWallet, amount, address(this), true, payload);
556546
}
557547

558548
function _fallbackWithdrawLP(
559549
address walletAddress, uint128 tokensAmount, bool mintRequired
560-
) private view /*inline*/ {
550+
) private view {
561551
if (mintRequired) {
562552
IRootTokenContract(lpTokenRootAddress).mint{
563553
value: 0,
@@ -566,15 +556,11 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
566556
} else {
567557
TvmBuilder payload;
568558
payload.store(sumIsTooLowForLPTokenWithdraw);
569-
// ITONTokenWallet(lpTokenWalletAddress).transfer{
570-
// value: 0,
571-
// flag: 64
572-
// }(walletAddress, tokensAmount, 0, address(this), true, payload.toCell());
573559
_sendTokens(lpTokenWalletAddress, walletAddress, tokensAmount, address(this), true, payload.toCell());
574560
}
575561
}
576562

577-
function _burnTransferredLPTokens(uint128 tokenAmount) private view /*inline*/ {
563+
function _burnTransferredLPTokens(uint128 tokenAmount) private view {
578564
TvmCell payload;
579565
IBurnableByOwnerTokenWallet(lpTokenWalletAddress).burnByOwner{
580566
value: msg.value/4
@@ -649,10 +635,6 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
649635
);
650636
}
651637
else {
652-
// ITONTokenWallet(msg.sender).transfer{
653-
// flag: 64,
654-
// value: 0
655-
// }(sender_wallet, amount, 0, sender_address, false, failTB.toCell());
656638
_sendTokens(msg.sender, sender_wallet, amount, sender_address, false, failTB.toCell());
657639
}
658640
}
@@ -672,11 +654,6 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
672654
uo.operationArgs, amount, sender_address, sender_wallet, false
673655
);
674656
} else {
675-
676-
// ITONTokenWallet(msg.sender).transfer{
677-
// flag: 64,
678-
// value: 0
679-
// }(sender_wallet, amount, 0, sender_address, false, failTB.toCell());
680657
_sendTokens(msg.sender, sender_wallet, amount, sender_address, false, failTB.toCell());
681658
}
682659
}
@@ -717,15 +694,6 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
717694

718695
//============External LP functions============
719696

720-
function _sendTokens(
721-
address walletToUse, address destinationAddress, uint128 amount, address gasBackAddress, bool notify, TvmCell payload
722-
) private pure {
723-
ITONTokenWallet(walletToUse).transfer{
724-
value: 0,
725-
flag: 64
726-
}(destinationAddress, amount, 0, gasBackAddress, notify, payload);
727-
}
728-
729697
function _externalSwap(
730698
TvmCell args, address tokenReceiver, address token_root, uint128 amount, address sender_wallet, address sender_address
731699
)
@@ -738,20 +706,12 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
738706

739707
if ( !isPayloadOk ){
740708
failTB.store(wrongPayloadFormatMessage);
741-
// ITONTokenWallet(tokenReceiver).transfer{
742-
// value: 0,
743-
// flag: 64
744-
// }(sender_wallet, amount, 0, sender_address, false, failTB.toCell());
745709
_sendTokens(tokenReceiver, sender_wallet, amount, sender_address, false, failTB.toCell());
746710

747711
return;
748712
}
749713
if ( !_checkIsLiquidityProvided() ){
750714
failTB.store(noLiquidityProvidedMessage);
751-
// ITONTokenWallet(tokenReceiver).transfer{
752-
// value: 0,
753-
// flag: 64
754-
// }(sender_wallet, amount, 0, sender_address, false, failTB.toCell());
755715
_sendTokens(tokenReceiver, sender_wallet, amount, sender_address, false, failTB.toCell());
756716

757717
return;
@@ -760,16 +720,8 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
760720
SwapInfo si = _swap(token_root, amount);
761721
if (si.targetTokenAmount != 0) {
762722
address tokenWallet = tokenReceiver == tokenWallets[T1] ? tokenWallets[T2] : tokenWallets[T1];
763-
// ITONTokenWallet(tokenWallet).transfer{
764-
// value: 0,
765-
// flag: 64
766-
// }(transferTokensTo, si.targetTokenAmount, 0, address.makeAddrStd(0, 0), true, _createSwapPayload(si));
767723
_sendTokens(tokenWallet, transferTokensTo, si.targetTokenAmount, sender_address, true, _createSwapPayload(si));
768724
} else {
769-
// ITONTokenWallet(tokenReceiver).transfer{
770-
// value: 0,
771-
// flag: 64
772-
// }(sender_wallet, amount, 0, address.makeAddrStd(0, 0), true, _createSwapFallbackPayload());
773725
_sendTokens(tokenReceiver, sender_wallet, amount, sender_address, true, _createSwapFallbackPayload());
774726
}
775727
}
@@ -793,10 +745,6 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
793745
if ( !isPayloadOk ) {
794746
failTB.store(wrongPayloadFormatMessage);
795747
_sendTokens(tokenReceiver, sender_wallet, amount, sender_address, false, failTB.toCell());
796-
// ITONTokenWallet(tokenReceiver).transfer{
797-
// flag: 64,
798-
// value: 0
799-
// }(sender_wallet, amount, 0, sender_wallet, false, failTB.toCell());
800748

801749
return;
802750
}
@@ -867,20 +815,12 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
867815

868816
if ( !isPayloadOk ){
869817
failTB.store(wrongPayloadFormatMessage);
870-
// ITONTokenWallet(tokenReceiver).transfer{
871-
// value: 0,
872-
// flag: 64
873-
// }(sender_wallet, amount, 0, sender_address, false, failTB.toCell());
874818
_sendTokens(tokenReceiver, sender_wallet, amount, sender_address, false, failTB.toCell());
875819

876820
return;
877821
}
878822
if ( !_checkIsLiquidityProvided() ){
879823
failTB.store(noLiquidityProvidedMessage);
880-
// ITONTokenWallet(tokenReceiver).transfer{
881-
// value: 0,
882-
// flag: 64
883-
// }(sender_wallet, amount, 0, sender_address, false, failTB.toCell());
884824
_sendTokens(tokenReceiver, sender_wallet, amount, sender_address, false, failTB.toCell());
885825

886826
return;
@@ -913,13 +853,6 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
913853
} else {
914854
TvmBuilder failTB;
915855
failTB.store(wrongPayloadFormatMessage);
916-
917-
// ITONTokenWallet(lpTokenWalletAddress).transfer{
918-
// flag: 64,
919-
// value: 0
920-
// }(
921-
// sender_wallet, amount, 0, sender_wallet, false, failTB.toCell()
922-
// );
923856
_sendTokens(lpTokenWalletAddress, sender_wallet, amount, sender_address, false, failTB.toCell());
924857
}
925858
return;
@@ -945,12 +878,6 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
945878
} else {
946879
TvmBuilder failTB;
947880
failTB.store(wrongPayloadFormatMessage);
948-
// ITONTokenWallet(lpTokenWalletAddress).transfer{
949-
// flag: 64,
950-
// value: 0
951-
// }(
952-
// sender_wallet, amount, 0, sender_wallet, false, failTB.toCell()
953-
// );
954881
_sendTokens(lpTokenWalletAddress, sender_wallet, amount, sender_address, false, failTB.toCell());
955882
}
956883
return;
@@ -1100,12 +1027,21 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
11001027
return newCodeVersion > swapPairCodeVersion;
11011028
}
11021029

1103-
function _initializeAfterCodeUpdate() /*inline*/ private {
1030+
function _initializeAfterCodeUpdate() private {
11041031
//code will be added when required
11051032
}
11061033

11071034
//============HELPERS============
11081035

1036+
function _sendTokens(
1037+
address walletToUse, address destinationAddress, uint128 amount, address gasBackAddress, bool notify, TvmCell payload
1038+
) private pure {
1039+
ITONTokenWallet(walletToUse).transfer{
1040+
value: 0,
1041+
flag: 64
1042+
}(destinationAddress, amount, 0, gasBackAddress, notify, payload);
1043+
}
1044+
11091045
function _createSwapPayload(SwapInfo si) private pure returns(TvmCell) {
11101046
TvmBuilder tb;
11111047
tb.store(si);
@@ -1127,7 +1063,7 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
11271063
function _constructSwapPairInfo()
11281064
private
11291065
view
1130-
/*inline*/
1066+
11311067
returns (SwapPairInfo)
11321068
{
11331069
SwapPairInfo spi = SwapPairInfo(
@@ -1153,11 +1089,11 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
11531089
return tokenPositions[_token];
11541090
}
11551091

1156-
function _checkIsLiquidityProvided() private view /*inline*/ returns (bool) {
1092+
function _checkIsLiquidityProvided() private view returns (bool) {
11571093
return lps[T1] > 0 && lps[T2] > 0;
11581094
}
11591095

1160-
function _sqrt(uint256 x) private pure /*inline*/ returns(uint256){
1096+
function _sqrt(uint256 x) private pure returns(uint256){
11611097
uint256 z = (x+1) / 2;
11621098
uint256 res = x;
11631099

@@ -1225,7 +1161,7 @@ contract SwapPairContract is ITokensReceivedCallback, ISwapPairInformation, IUpg
12251161

12261162
//============Too big for modifier too small for function============
12271163

1228-
function notZeroLiquidity(uint128 _amount1, uint128 _amount2) private pure /*inline*/ returns(bool) {
1164+
function notZeroLiquidity(uint128 _amount1, uint128 _amount2) private pure returns(bool) {
12291165
return _amount1 > 0 && _amount2 > 0;
12301166
}
12311167
}

contracts/SwapPair/helpers/TIP3TokenDeployer.sol

+1-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ contract TIP3TokenDeployer is ITIP3TokenDeployer {
4444
}
4545
}(rootPublicKey, rootOwnerAddress);
4646

47-
return {value: 0, flag: 128} tip3TokenAddress;
47+
return {value: 0, flag: 64} tip3TokenAddress;
4848
}
4949

5050
function getFutureTIP3Address(

0 commit comments

Comments
 (0)