diff options
author | Andreas Rumpf <rumpf_a@web.de> | 2015-10-06 14:15:50 +0200 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2015-10-06 14:15:50 +0200 |
commit | 8f9438d29a5e8d6cf1dbfbe19d97347f310f35be (patch) | |
tree | c8e5d39034e552973bbff025fe38a1bcd14e0542 | |
parent | 0a8a2070d01489d036ececa78c87ef94325d3e9d (diff) | |
parent | 73821ad1c4b2f64a2885c60c3bc43e74cae5ee1d (diff) | |
download | Nim-8f9438d29a5e8d6cf1dbfbe19d97347f310f35be.tar.gz |
Merge pull request #3421 from jlp765/strtab1
fix #3416 strtabs clear() and []=
-rw-r--r-- | lib/pure/strtabs.nim | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/pure/strtabs.nim b/lib/pure/strtabs.nim index 86f81aa43..1ce9067a7 100644 --- a/lib/pure/strtabs.nim +++ b/lib/pure/strtabs.nim @@ -173,6 +173,9 @@ proc clear*(s: StringTableRef, mode: StringTableMode) = s.mode = mode s.counter = 0 s.data.setLen(startSize) + for i in 0..<s.data.len: + if not isNil(s.data[i].key): + s.data[i].key = nil proc newStringTable*(keyValuePairs: varargs[string], mode: StringTableMode): StringTableRef {. @@ -248,3 +251,6 @@ when isMainModule: x.mget("11") = "23" assert x["11"] == "23" + x.clear(modeCaseInsensitive) + x["11"] = "22" + assert x["11"] == "22" |