summary refs log tree commit diff stats
path: root/tests/macros/tdumpastgen.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/macros/tdumpastgen.nim')
-rw-r--r--tests/macros/tdumpastgen.nim45
1 files changed, 45 insertions, 0 deletions
diff --git a/tests/macros/tdumpastgen.nim b/tests/macros/tdumpastgen.nim
new file mode 100644
index 000000000..0e0581f6a
--- /dev/null
+++ b/tests/macros/tdumpastgen.nim
@@ -0,0 +1,45 @@
+discard """
+nimout: '''nnkStmtList.newTree(
+  nnkVarSection.newTree(
+    nnkIdentDefs.newTree(
+      newIdentNode("x"),
+      newEmptyNode(),
+      nnkCall.newTree(
+        nnkDotExpr.newTree(
+          newIdentNode("baz"),
+          newIdentNode("create")
+        ),
+        newLit(56)
+      )
+    )
+  ),
+  nnkProcDef.newTree(
+    newIdentNode("foo"),
+    newEmptyNode(),
+    newEmptyNode(),
+    nnkFormalParams.newTree(
+      newEmptyNode()
+    ),
+    newEmptyNode(),
+    newEmptyNode(),
+    nnkStmtList.newTree(
+      newCommentStmtNode("This is a docstring"),
+      nnkCommand.newTree(
+        newIdentNode("echo"),
+        newLit("bar")
+      )
+    )
+  )
+)'''
+"""
+
+# disabled; can't work as the output is done by the compiler
+
+import macros
+
+dumpAstGen:
+  var x = baz.create(56)
+
+  proc foo() =
+    ## This is a docstring
+    echo "bar"