mirror of
https://github.com/AthanorLabs/atomic-swap.git
synced 2026-01-09 14:18:03 -05:00
30 lines
721 B
Solidity
30 lines
721 B
Solidity
// SPDX-License-Identifier: LGPLv3
|
|
|
|
pragma solidity ^0.8.5;
|
|
|
|
import "hardhat/console.sol";
|
|
|
|
contract TestUtils {
|
|
|
|
function uint2hexstr(uint256 i) public pure returns (string memory) {
|
|
if (i == 0) return "0";
|
|
uint256 j = i;
|
|
uint256 length;
|
|
while (j != 0) {
|
|
length++;
|
|
j = j >> 4;
|
|
}
|
|
uint256 mask = 15;
|
|
bytes memory bstr = new bytes(length);
|
|
uint256 k = length;
|
|
while (i != 0) {
|
|
uint256 curr = (i & mask);
|
|
bstr[--k] = curr > 9
|
|
? bytes1(uint8(55 + curr))
|
|
: bytes1(uint8(48 + curr)); // 55 = 65 - 10
|
|
i = i >> 4;
|
|
}
|
|
return string(bstr);
|
|
}
|
|
}
|