IC: integrity checking (#17695)
* IC: integrity checking: the plumbing code * progress * progress + bugfix (yes, the code already found a bug) * implemented integrity checking
This commit is contained in:
parent
ceadf54d76
commit
4780b08b9d
8 changed files with 166 additions and 5 deletions
|
|
@ -36,6 +36,10 @@ const
|
|||
|
||||
template idToIdx(x: LitId): int = x.int - idStart
|
||||
|
||||
proc hasLitId*[T](t: BiTable[T]; x: LitId): bool =
|
||||
let idx = idToIdx(x)
|
||||
result = idx >= 0 and idx < t.vals.len
|
||||
|
||||
proc enlarge[T](t: var BiTable[T]) =
|
||||
var n: seq[LitId]
|
||||
newSeq(n, len(t.keys) * 2)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue