mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-29 09:24:36 +00:00
22 lines
408 B
Nim
22 lines
408 B
Nim
discard """
|
|
output: "1"
|
|
"""
|
|
|
|
type
|
|
TMyTuple = tuple[a, b: int]
|
|
|
|
proc indexOf*(t: typedesc, name: string): int =
|
|
## takes a tuple and looks for the field by name.
|
|
## returs index of that field.
|
|
var
|
|
d: t
|
|
i = 0
|
|
for n, x in fieldPairs(d):
|
|
if n == name: return i
|
|
i.inc
|
|
raise newException(EInvalidValue, "No field " & name & " in type " &
|
|
astToStr(t))
|
|
|
|
echo TMyTuple.indexOf("b")
|
|
|