summary refs log tree commit diff stats
path: root/compiler
diff options
context:
space:
mode:
authorzah <zahary@gmail.com>2013-09-03 09:05:12 -0700
committerzah <zahary@gmail.com>2013-09-03 09:05:12 -0700
commit6fa72c5d9d9662e6657ddf5c670dc56dc2748ecc (patch)
tree47dc84b8f5d02ee1a32b887f943982975add79bd /compiler
parent6a04757e6d14b5b59004ef03539dba4453352fe5 (diff)
parent73aba23a49c3fd6b14cc7b2688224d8ac68a1acf (diff)
downloadNim-6fa72c5d9d9662e6657ddf5c670dc56dc2748ecc.tar.gz
Merge pull request #586 from mflamer/master
Add arity typetrait
Diffstat (limited to 'compiler')
-rw-r--r--compiler/evals.nim4
1 files changed, 4 insertions, 0 deletions
diff --git a/compiler/evals.nim b/compiler/evals.nim
index be6f625ec..f8336fce7 100644
--- a/compiler/evals.nim
+++ b/compiler/evals.nim
@@ -914,6 +914,10 @@ proc evalTypeTrait*(trait, operand: PNode, context: PSym): PNode =
     result = newStrNode(nkStrLit, typ.typeToString(preferName))
     result.typ = newType(tyString, context)
     result.info = trait.info
+  of "arity":    
+    result = newIntNode(nkIntLit, typ.n.len-1)
+    result.typ = newType(tyInt, context)
+    result.info = trait.info
   else:
     internalAssert false