Add bytes32 to uint enumerable map (#3416)

This commit is contained in:
Artur
2022-05-23 09:02:27 +01:00
committed by GitHub
parent b61faf8368
commit de74c8c62c
4 changed files with 157 additions and 6 deletions

View File

@ -174,3 +174,46 @@ contract UintToUintMapMock {
return _map.get(key, errorMessage);
}
}
// Bytes32ToUintMap
contract Bytes32ToUintMapMock {
using EnumerableMap for EnumerableMap.Bytes32ToUintMap;
event OperationResult(bool result);
EnumerableMap.Bytes32ToUintMap private _map;
function contains(bytes32 key) public view returns (bool) {
return _map.contains(key);
}
function set(bytes32 key, uint256 value) public {
bool result = _map.set(key, value);
emit OperationResult(result);
}
function remove(bytes32 key) public {
bool result = _map.remove(key);
emit OperationResult(result);
}
function length() public view returns (uint256) {
return _map.length();
}
function at(uint256 index) public view returns (bytes32 key, uint256 value) {
return _map.at(index);
}
function tryGet(bytes32 key) public view returns (bool, uint256) {
return _map.tryGet(key);
}
function get(bytes32 key) public view returns (uint256) {
return _map.get(key);
}
function getWithMessage(bytes32 key, string calldata errorMessage) public view returns (uint256) {
return _map.get(key, errorMessage);
}
}