From 188ce5f3ee5c83d749918f9f286537d65a513c53 Mon Sep 17 00:00:00 2001 From: Arne Döring Date: Wed, 18 Sep 2019 20:02:30 +0200 Subject: add nodeId proc to macros (#11456) * add nodeId proc to macros * add doc comment. * fix typo --- lib/core/macros.nim | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'lib') diff --git a/lib/core/macros.nim b/lib/core/macros.nim index b0414153e..73f5790fa 100644 --- a/lib/core/macros.nim +++ b/lib/core/macros.nim @@ -1426,6 +1426,12 @@ proc boolVal*(n: NimNode): bool {.compileTime, noSideEffect.} = if n.kind == nnkIntLit: n.intVal != 0 else: n == bindSym"true" # hacky solution for now +when defined(nimMacrosGetNodeId): + proc nodeID*(n: NimNode): int {.magic: NodeId.} + ## Returns the id of ``n``, when the compiler has been compiled + ## with the flag ``-d:useNodeids``, otherwise returns ``-1``. This + ## proc is for the purpose to debug the compiler only. + macro expandMacros*(body: typed): untyped = ## Expands one level of macro - useful for debugging. ## Can be used to inspect what happens when a macro call is expanded, -- cgit 1.4.1-2-gfad0