aboutsummaryrefslogtreecommitdiff
path: root/src/set.hff
diff options
context:
space:
mode:
Diffstat (limited to 'src/set.hff')
-rw-r--r--src/set.hff8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/set.hff b/src/set.hff
index 955eac3..28e67be 100644
--- a/src/set.hff
+++ b/src/set.hff
@@ -1,6 +1,10 @@
import "vec.hff";
import "all.hff";
+// KTraits:
+// :hash(K) u32
+// :eq(T, T) bool
+// :dup(T) T
struct Set<T, Traits> {
buf Vec<T>,
set **const T,
@@ -27,7 +31,7 @@ struct Set<T, Traits> {
)
}
- let i0 = Traits:hash(x) & (self.N - 1);
+ let i0 u32 = Traits:hash(x) & (self.N - 1);
let i int = i0;
do {
if self.set[i] == #null {
@@ -43,7 +47,7 @@ struct Set<T, Traits> {
}
fn contains(self *Set, x T) bool {
- let i0 = Traits:hash(x) & (self.N - 1);
+ let i0 u32 = Traits:hash(x) & (self.N - 1);
let i int = i0;
do {
if self.set[i] == #null {