I would like to know if it is possible to get the type (int32 / float64 / string) from a value in Nim at runtime?
I thought this would be possible with the "typeinfo" library but I can't figure it out!
EDIT: Got an answer and made this real quick:
import typetraits
type
MyObject = object
a, b: int
s: string
let obj = MyObject(a: 3, b: 4, s: "abc")
proc dump_var[T: object](x: T) =
echo x.type.name, " ("
for n, v in fieldPairs(x):
echo(" ", n, ": ", v.type.name, " = ", v)
echo ")"
dump_var obj
Output:
MyObject (
a: int = 3
b: int = 4
s: string = abc
)