Add comments explaining odd looking i<0..data[i].

This commit is contained in:
Charles Blake
2015-02-16 07:48:31 -05:00
parent db257669c3
commit 629decd170

View File

@@ -235,7 +235,7 @@ template maybeRehashPutImpl() {.dirty.} =
if mustRehash(len(t.data), t.counter):
enlarge(t)
index = rawGetKnownHC(t, key, hc)
index = -1 - index
index = -1 - index # important to transform for mgetOrPutImpl
rawInsert(t, t.data, key, val, hc, index)
inc(t.counter)
@@ -248,8 +248,8 @@ template putImpl() {.dirty.} =
template mgetOrPutImpl() {.dirty.} =
var hc: THash
var index = rawGet(t, key, hc)
if index < 0: maybeRehashPutImpl() # not present: insert
result = t.data[index].val # either way return modifiable val
if index < 0: maybeRehashPutImpl() # not present: insert (flipping index)
result = t.data[index].val # either way return modifiable val
template hasKeyOrPutImpl() {.dirty.} =
var hc: THash