mirror of
https://github.com/nim-lang/Nim.git
synced 2026-01-05 04:27:44 +00:00
18 lines
233 B
Nim
18 lines
233 B
Nim
import macros
|
|
|
|
macro symFromDesc(T: typedesc): untyped =
|
|
let typ = getType(T)
|
|
typ[1]
|
|
|
|
template produceType(T: typedesc): untyped =
|
|
type
|
|
XT = object
|
|
x: symFromDesc(T)
|
|
|
|
XT
|
|
|
|
type
|
|
X[T] = produceType(T)
|
|
|
|
var x: X[int]
|