* ref \--- there is no such a thing. Reference always points at an entity of 
a specific type.
  * auto \--- it's not a type per se, it can just appear in several contexts a 
type may appear.
  * object \--- it's a kind of a type (as in: "this is an object type"), not 
type per se
  * any \--- well, there is Any in 
[typeinfo](https://nim-lang.org/docs/typeinfo.html), but I don't know if it's 
what you'd expect



What you can use:

  * any \--- as already mentioned
  * ptr \--- just raw pointer, you'd need some additional discriminant (or just 
know, e.x. by some pattern)
  * object variants --- similar to ptr+discriminant approach, but safer and 
handier (sadly, it has some disadvantages of its own, e.x. not being able to 
register a additional types in other files)


Reply via email to