From 867b38496b234df22ab34ef15344f848278b096d Mon Sep 17 00:00:00 2001 From: apense Date: Tue, 9 Jun 2015 16:24:13 -0400 Subject: [PATCH] Moved negative indexing operator here Only used here (not in standard library) --- compiler/ast.nim | 3 +++ 1 file changed, 3 insertions(+) diff --git a/compiler/ast.nim b/compiler/ast.nim index dc190fd7f..f48003797 100644 --- a/compiler/ast.nim +++ b/compiler/ast.nim @@ -948,6 +948,9 @@ proc add*(father, son: PNode) = proc `[]`*(n: PNode, i: int): PNode {.inline.} = result = n.sons[i] +template `-|`*(b, s: expr): expr = + (if b >= 0: b else: s.len + b) + # son access operators with support for negative indices template `{}`*(n: PNode, i: int): expr = n[i -| n] template `{}=`*(n: PNode, i: int, s: PNode): stmt =