diff options
Diffstat (limited to 'tests/accept/compile')
-rwxr-xr-x | tests/accept/compile/tdumpast.nim | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/tests/accept/compile/tdumpast.nim b/tests/accept/compile/tdumpast.nim index fb31af0ec..a56438773 100755 --- a/tests/accept/compile/tdumpast.nim +++ b/tests/accept/compile/tdumpast.nim @@ -1,29 +1,12 @@ # 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) + echo n.prettyPrint + echo n.toYaml + result = n[1] dumpAST: |