You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: contracts/utils/README.adoc
+6Lines changed: 6 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -25,6 +25,7 @@ Miscellaneous contracts and libraries containing utility functions you can use t
25
25
* {DoubleEndedQueue}: An implementation of a https://en.wikipedia.org/wiki/Double-ended_queue[double ended queue] whose values can be removed added or remove from both sides. Useful for FIFO and LIFO structures.
26
26
* {CircularBuffer}: A data structure to store the last N values pushed to it.
27
27
* {Checkpoints}: A data structure to store values mapped to an strictly increasing key. Can be used for storing and accessing values over time.
28
+
* {Heap}: A library that implements a https://en.wikipedia.org/wiki/Binary_heap[binary heap] in storage.
28
29
* {MerkleTree}: A library with https://wikipedia.org/wiki/Merkle_Tree[Merkle Tree] data structures and helper functions.
29
30
* {Create2}: Wrapper around the https://blog.openzeppelin.com/getting-the-most-out-of-create2/[`CREATE2` EVM opcode] for safe use without having to deal with low-level assembly.
30
31
* {Address}: Collection of functions for overloading Solidity's https://docs.soliditylang.org/en/latest/types.html#address[`address`] type.
@@ -38,6 +39,7 @@ Miscellaneous contracts and libraries containing utility functions you can use t
38
39
* {Context}: An utility for abstracting the sender and calldata in the current execution context.
39
40
* {Packing}: A library for packing and unpacking multiple values into bytes32
40
41
* {Panic}: A library to revert with https://docs.soliditylang.org/en/v0.8.20/control-structures.html#panic-via-assert-and-error-via-require[Solidity panic codes].
42
+
* {Comparators}: A library that contains comparator functions to use with with the {Heap} library.
41
43
42
44
[NOTE]
43
45
====
@@ -102,6 +104,8 @@ Ethereum contracts have no native concept of an interface, so applications must
102
104
103
105
{{Checkpoints}}
104
106
107
+
{{Heap}}
108
+
105
109
{{MerkleTree}}
106
110
107
111
== Libraries
@@ -129,3 +133,5 @@ Ethereum contracts have no native concept of an interface, so applications must
0 commit comments