diff options
-rw-r--r-- | lib/pure/collections/sets.nim | 4 | ||||
-rw-r--r-- | tests/stdlib/tsets.nim | 6 |
2 files changed, 7 insertions, 3 deletions
diff --git a/lib/pure/collections/sets.nim b/lib/pure/collections/sets.nim index 12fa2625b..ad3fe7218 100644 --- a/lib/pure/collections/sets.nim +++ b/lib/pure/collections/sets.nim @@ -242,6 +242,6 @@ proc `<=`*[A](s, t: TSet[A]): bool = proc `==`*[A](s, t: TSet[A]): bool = s.counter == t.counter and s <= t -proc map*[A, B](data: TSet[A], op: proc (x: A): B {.closure.}): TSet[A] = +proc map*[A, B](data: TSet[A], op: proc (x: A): B {.closure.}): TSet[B] = result = initSet[B]() - for i in data: result.incl(op(i)) + for item in data: result.incl(op(item)) diff --git a/tests/stdlib/tsets.nim b/tests/stdlib/tsets.nim index a30373d37..656c5b3f2 100644 --- a/tests/stdlib/tsets.nim +++ b/tests/stdlib/tsets.nim @@ -1,13 +1,17 @@ discard """ - output: '''true''' + output: '''true +true''' """ import sets var a = initSet[int]() b = initSet[int]() + c = initSet[string]() for i in 0..5: a.incl(i) for i in 1..6: b.incl(i) +for i in 0..5: c.incl($i) echo map(a, proc(x: int): int = x + 1) == b +echo map(a, proc(x: int): string = $x) == c |