Add proc [](n: NimNode, s: HSlice[T, U]): seq[NimNode] to macros (#7735)

fixes #7670.
This commit is contained in:
Lolo Iccl 2018-11-10 22:10:50 +09:00 • committed by Andreas Rumpf
commit 37d88e5168
2 changed files with 50 additions and 0 deletions

38
tests/macros/tslice.nim Normal file
View file

@ -0,0 +1,38 @@
import macros
macro test(): untyped =
result = nnkStmtList.newTree()
let n = nnkStmtList.newTree(
newIdentNode("one"),
newIdentNode("two"),
newIdentNode("three"),
newIdentNode("four"),
newIdentNode("five"),
newIdentNode("six")
)
var i = 1
for x in n[1 .. ^2]:
assert x == n[i]
i.inc
assert i == 5
i = 3
for x in n[3..^1]:
assert x == n[i]
i.inc
assert i == 6
i = 0
for x in n[0..3]:
assert x == n[i]
i.inc
assert i == 4
i = 0
for x in n[0..5]:
assert x == n[i]
i.inc
assert i == 6
test()