332bcb5f4d
Refactor EnumerableSet.behavior.js for reuse in the community repo ( #5441 )
2025-01-20 18:03:16 +01:00
f96237308f
Update forge and change visibility in fuzz tests ( #5103 )
...
Co-authored-by: cairo <cairoeth@protonmail.com >
2024-10-28 23:33:25 +07:00
530179a71f
Disallow empty CircularBuffer setup ( #5214 )
2024-09-19 11:20:04 -06:00
3cfebcb5c4
Refactor Heap.sol to remove index and lookup ( #5190 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2024-09-19 14:29:39 +02:00
6e224307b4
Fix typographical errors ( #5194 )
2024-09-13 19:26:46 +02:00
231fae33f0
Add Binary heap structure ( #5084 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
Co-authored-by: cairo <cairoeth@protonmail.com >
2024-07-23 11:31:26 -06:00
c80b675b8d
Add CircularBuffer data structure ( #4913 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-04-26 10:28:59 -06:00
92ff025622
Add a MerkleTree builder ( #3617 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2024-03-07 16:27:38 +01:00
f8b1ddf591
Add variants of Array.sort for address[] and bytes32[] ( #4883 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2024-02-12 16:34:07 +00:00
0a757ec463
Add sort in memory to Arrays library ( #4846 )
...
Co-authored-by: RenanSouza2 <renan.rodrigues.souza1@gmail.com >
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2024-02-06 20:49:12 +00:00
036c3cbef2
Replace custom errors with native panic codes in DoubleEndedQueue ( #4872 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-02-06 21:02:01 +01:00
192e873fcb
Add Math.modExp and a Panic library ( #3298 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-02-02 18:40:00 +01:00
61117c4db8
Bound lookup in arrays with duplicate ( #4842 )
...
Co-authored-by: RenanSouza2 <renan.rodrigues.souza1@gmail.com >
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-01-29 20:44:33 +01:00
a5c4cd8182
Add new EnumerableMap types ( #4843 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2024-01-22 19:25:01 +00:00
04cb014144
Make tests style more uniform ( #4812 )
2024-01-02 10:31:33 -06:00
a72c9561b9
Finalize test migration: remove legacy dependencies and test helpers ( #4797 )
2023-12-26 23:46:06 +01:00
015ef69287
Refactor time helper and remove custom error helper. ( #4803 )
...
Co-authored-by: ernestognw <ernestognw@gmail.com >
2023-12-22 19:50:25 +00:00
c411700572
Refactor EnumerableSet generation and tests ( #4762 )
2023-11-28 17:51:58 -06:00
e0ac73cd6e
Refactor enumerableMap generate and tests ( #4760 )
2023-11-28 17:41:10 -06:00
0950532d9a
Migrate utils-structs tests to ethersjs ( #4748 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: ernestognw <ernestognw@gmail.com >
2023-11-23 05:38:20 +00:00
87f7a2cd42
Refactor Time library to use valueBefore/valueAfter ( #4555 )
...
Co-authored-by: Francisco <fg@frang.io >
2023-09-05 23:19:21 -03:00
cd67894914
Use Trace208 in Votes to support ERC6372 clocks ( #4539 )
...
Co-authored-by: Francisco <fg@frang.io >
2023-08-30 17:25:17 +00:00
00cbf5a236
Update pragma to 0.8.20 ( #4489 )
...
Co-authored-by: Francisco Giordano <fg@frang.io >
Co-authored-by: ernestognw <ernestognw@gmail.com >
2023-07-31 17:25:45 -03:00
874c2d3c02
Use explicit imports ( #4399 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: ernestognw <ernestognw@gmail.com >
2023-06-29 20:12:26 +00:00
2477534260
Change behavior of ceilDiv(0, 0) and improve test coverage ( #4348 )
2023-06-14 17:21:42 -03:00
b425a72240
Replace revert strings with custom errors ( #4261 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: Francisco <fg@frang.io >
2023-06-12 23:41:52 +00:00
7bb5592ad5
Bump minimum pragma version to 0.8.19 ( #4288 )
2023-05-29 21:37:37 +02:00
4448c13c3c
Move the Checkpoints library to utils/structs ( #4275 )
2023-05-26 16:19:27 -03:00
0f10efe232
Remove code in preparation for v5.0 ( #4258 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
Co-authored-by: Francisco <fg@frang.io >
2023-05-19 22:48:05 +02:00
51294b7480
Make transpilation setup local to this repo ( #4041 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2023-05-09 15:52:23 -03:00
a28aafdc85
Use Prettier for JS files ( #3913 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
2023-01-04 15:03:40 +01:00
88754d0b36
Add keys() accessor to EnumerableMaps ( #3920 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2023-01-03 22:25:37 +01:00
c1d9da4052
Use hardhat-exposed to reduce the need for mocks ( #3666 )
...
Co-authored-by: Francisco <fg@frang.io >
2023-01-03 14:38:13 +00:00
2336bd3e8e
Simplify ESLint config ( #3903 )
2022-12-29 17:08:12 -03:00
de74c8c62c
Add bytes32 to uint enumerable map ( #3416 )
2022-05-23 08:02:27 +00:00
c4f76cfa15
Add uint to uint enumerable map ( #3338 )
2022-05-20 13:31:53 +00:00
668a648bc6
Add utilities for CrossChain messaging ( #3183 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2022-03-30 11:41:04 -03:00
faf5820f03
Fix many spelling errors ( #3274 )
2022-03-22 18:16:20 -03:00
b13bdb0249
Add bytes32 to bytes32 enumerable map ( #3192 )
...
* feat(enumerablemap): add bytes32 to bytes32 map
* chore(changelog): edit CHANGELOG
* feat(enumerable map): edit struct visibility
2022-03-22 16:36:29 +01:00
aace774961
Add a double ended queue ( #3153 )
...
* add vector, lifo and fifo structures
* fix lint
* need more memory for coverage
* remove Vector wrappers and gas optimization
* refactor Vector testing
* revert package.json changes
* rename to DoubleEndedQueue
* rename and refactor
* refactor tests and expand coverage
* test for custom errors
* add changelog entry
* add docs
* add sample code and note about storage vs. memory
* add available since
* lint
* use underscore for struct members
* add struct documentation
* remove SafeCast in length
* rename i -> index and improve docs
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2022-02-16 09:32:16 +01:00
ca755ce799
Add AddressToUintMap ( #3150 )
...
* add AddressToUintMap
* Update contracts/utils/structs/EnumerableMap.sol
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
* address comments
* lint code
* merge mocks into a single file
* add PR link to changelog entry
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
2022-02-01 17:37:32 +01:00
f88e555234
Add values() functions to EnumerableSets ( #2768 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2021-07-16 12:06:47 -03:00
f7da53cebd
Add a BitMap struct ( #2710 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2021-06-11 15:24:00 -03:00
165e6f1948
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 >
2021-04-20 19:51:26 +00:00
24a0bc23cf
Reorganize the repo structure ( #2503 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2021-02-22 16:44:16 +00:00