summary refs log tree commit diff stats
path: root/tests/tuples/tanontuples.nim
blob: f514670d3111ffc12531f19d7111cd66343c468b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
discard """
  output: '''61, 125
(Field0: 0) (Field0: 13)'''
"""

import macros

proc `^` (a, b: int): int =
  result = 1
  for i in 1..b: result = result * a

var m = (0, 5)
var n = (56, 3)

m = (n[0] + m[1], m[1] ^ n[1])

echo m[0], ", ", m[1]

# also test we can produce unary anon tuples in a macro:
macro mm(): untyped =
  result = newTree(nnkTupleConstr, newLit(13))

proc nowTuple(): (int,) =
  result = (0,)

echo nowTuple(), " ", mm()