1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- discard """
- output: '''
- proc Base
- proc Child
- method Base
- yield Base
- yield Child
- 12
- 1
- '''
- """
- import typetraits
- type
- Base = object of RootObj
- Child = object of Base
- proc pr(T: type[Base]) = echo "proc " & T.name
- method me(T: type[Base]) = echo "method " & T.name
- iterator it(T: type[Base]): auto = yield "yield " & T.name
- Base.pr
- Child.pr
- Base.me
- when false:
- Child.me #<- bug #2710
- for s in Base.it: echo s
- for s in Child.it: echo s #<- bug #2662
- # bug #11747
- type
- MyType = object
- a: int32
- b: int32
- c: int32
- MyRefType = ref MyType
- echo sizeof(default(MyRefType)[])
- type
- Foo[T] = object
- val: T
- var x: Foo[int].val
- inc(x)
- echo x
|