diff options
Diffstat (limited to 'tests/accept/compile/tdumpast.nim')
-rwxr-xr-x | tests/accept/compile/tdumpast.nim | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/tests/accept/compile/tdumpast.nim b/tests/accept/compile/tdumpast.nim deleted file mode 100755 index fb31af0ec..000000000 --- a/tests/accept/compile/tdumpast.nim +++ /dev/null @@ -1,35 +0,0 @@ -# Dump the contents of a PNimrodNode - -import macros - -proc dumpit(n: PNimrodNode): string {.compileTime.} = - if n == nil: return "nil" - result = $n.kind - add(result, "(") - case n.kind - of nnkEmpty: nil # same as nil node in this representation - of nnkNilLit: add(result, "nil") - of nnkCharLit..nnkInt64Lit: add(result, $n.intVal) - of nnkFloatLit..nnkFloat64Lit: add(result, $n.floatVal) - of nnkStrLit..nnkTripleStrLit: add(result, $n.strVal) - of nnkIdent: add(result, $n.ident) - of nnkSym, nnkNone: assert false - else: - add(result, dumpit(n[0])) - for j in 1..n.len-1: - add(result, ", ") - add(result, dumpit(n[j])) - add(result, ")") - -macro dumpAST(n: stmt): stmt = - # dump AST as a side-effect and return the inner node - echo dumpit(n) - result = n[1] - -dumpAST: - proc add(x, y: int): int = - return x + y - - proc sub(x, y: int): int = return x - y - - |