diff options
Diffstat (limited to 'compiler/ast.nim')
-rw-r--r-- | compiler/ast.nim | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/ast.nim b/compiler/ast.nim index de4ab5b77..f8e8f1d3b 100644 --- a/compiler/ast.nim +++ b/compiler/ast.nim @@ -221,6 +221,8 @@ type nkBreakState, # special break statement for easier code generation nkFuncDef, # a func nkTupleConstr # a tuple constructor + nkModuleRef # for .rod file support: A (moduleId, itemId) pair + nkReplayAction # for .rod file support: A replay action TNodeKinds* = set[TNodeKind] @@ -1139,6 +1141,9 @@ proc add*(father, son: Indexable) = if isNil(father.sons): father.sons = @[] father.sons.add(son) +proc addAllowNil*(father, son: Indexable) {.inline.} = + father.sons.add(son) + template `[]`*(n: Indexable, i: int): Indexable = n.sons[i] template `[]=`*(n: Indexable, i: int; x: Indexable) = n.sons[i] = x |