EnumerableSet: Remove Boundary Check in _at (#2606)
* remove boundary check * fix tests for EnumerableSet "index out of bound" * Changelog Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
This commit is contained in:
@ -2,6 +2,7 @@
|
||||
|
||||
## Unreleased
|
||||
* Enumerables: Improve gas cost of removal in `EnumerableSet` and `EnumerableMap`.
|
||||
* Enumerables: Improve gas cost of lookup in `EnumerableSet` and `EnumerableMap`.
|
||||
|
||||
## Unreleased
|
||||
|
||||
|
||||
@ -127,7 +127,6 @@ library EnumerableSet {
|
||||
* - `index` must be strictly less than {length}.
|
||||
*/
|
||||
function _at(Set storage set, uint256 index) private view returns (bytes32) {
|
||||
require(set._values.length > index, "EnumerableSet: index out of bounds");
|
||||
return set._values[index];
|
||||
}
|
||||
|
||||
|
||||
@ -51,7 +51,7 @@ function shouldBehaveLikeSet (valueA, valueB, valueC) {
|
||||
|
||||
describe('at', function () {
|
||||
it('reverts when retrieving non-existent elements', async function () {
|
||||
await expectRevert(this.set.at(0), 'EnumerableSet: index out of bounds');
|
||||
await expectRevert.unspecified(this.set.at(0));
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user