123456789101112131415161718192021222324252627282930 |
- discard """
- output: '''
- (ObjectTy (Empty) (Sym "Model") (RecList (Sym "name") (Sym "password")))
- (BracketExpr (Sym "typeDesc") (Sym "User"))
- '''
- """
- import strutils, macros
- type
- Model = object of RootObj
- User = object of Model
- name : string
- password : string
- macro testUser: string =
- result = newLit(User.getType.lispRepr)
- macro testGeneric(T: typedesc[Model]): string=
- result = newLit(T.getType.lispRepr)
- echo testUser
- echo User.testGeneric
- macro assertVoid(e: typed): untyped =
- assert(getTypeInst(e).typeKind == ntyVoid)
- proc voidProc() = discard
- assertVoid voidProc()
|