summary refs log tree commit diff stats
path: root/lib/core/macros.nim
diff options
context:
space:
mode:
authorAndreas Rumpf <rumpf_a@web.de>2016-05-28 17:14:52 +0200
committerAndreas Rumpf <rumpf_a@web.de>2016-05-28 17:14:52 +0200
commitd3fe4a2db15355f5830395a6f68ff8ec1c8a7a88 (patch)
tree4145531b00b51a9c121934b5d44c3e8569927491 /lib/core/macros.nim
parent0b84ee167b766ef3ecb2ba6374e32725ea1b2794 (diff)
parent0356f53b5619782c650f56a6842cbaf91a82137d (diff)
downloadNim-d3fe4a2db15355f5830395a6f68ff8ec1c8a7a88.tar.gz
Merge pull request #4113 from jcosborn/gettypeinst
getTypeInst
Diffstat (limited to 'lib/core/macros.nim')
-rw-r--r--lib/core/macros.nim12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/core/macros.nim b/lib/core/macros.nim
index 2e3596d0f..bfda6b938 100644
--- a/lib/core/macros.nim
+++ b/lib/core/macros.nim
@@ -197,6 +197,18 @@ proc typeKind*(n: NimNode): NimTypeKind {.magic: "NGetType", noSideEffect.}
   ## Returns the type kind of the node 'n' that should represent a type, that
   ## means the node should have been obtained via `getType`.
 
+proc getTypeInst*(n: NimNode): NimNode {.magic: "NGetType", noSideEffect.}
+  ## Like getType except it includes generic parameters for a specific instance
+
+proc getTypeInst*(n: typedesc): NimNode {.magic: "NGetType", noSideEffect.}
+  ## Like getType except it includes generic parameters for a specific instance
+
+proc getTypeImpl*(n: NimNode): NimNode {.magic: "NGetType", noSideEffect.}
+  ## Like getType except it includes generic parameters for the implementation
+
+proc getTypeImpl*(n: typedesc): NimNode {.magic: "NGetType", noSideEffect.}
+  ## Like getType except it includes generic parameters for the implementation
+
 proc strVal*(n: NimNode): string  {.magic: "NStrVal", noSideEffect.}
 
 proc `intVal=`*(n: NimNode, val: BiggestInt) {.magic: "NSetIntVal", noSideEffect.}