mirror of
https://github.com/nim-lang/Nim.git
synced 2026-01-07 13:33:22 +00:00
Merge pull request #296 from gradha/pr_makes_toseq_public
Moves toSeq template to public sequtils module.
This commit is contained in:
@@ -63,3 +63,9 @@ template filterIt*(seq1, pred: expr): expr {.immediate, dirty.} =
|
||||
if pred: result.add(it)
|
||||
result
|
||||
|
||||
template toSeq*(iter: expr): expr {.immediate.} =
|
||||
## Transforms any iterator into a sequence.
|
||||
var result {.gensym.}: seq[type(iter)] = @[]
|
||||
for x in iter: add(result, x)
|
||||
result
|
||||
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
discard """
|
||||
output: "23456"
|
||||
output: "2345623456"
|
||||
"""
|
||||
|
||||
template toSeq*(iter: expr): expr {.immediate.} =
|
||||
var result: seq[type(iter)] = @[]
|
||||
for x in iter: add(result, x)
|
||||
result
|
||||
|
||||
import sequtils
|
||||
|
||||
for x in toSeq(countup(2, 6)):
|
||||
stdout.write(x)
|
||||
for x in items(toSeq(countup(2, 6))):
|
||||
stdout.write(x)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user