12345678910111213141516171819202122232425262728 |
- discard """
- output: "[p = nil]"
- targets: "c cpp"
- """
- import atomics
- type
- Pledge* {.exportc.} = object
- p: PledgePtr
- PledgeKind {.exportc.} = enum
- Single
- Iteration
- PledgePtr {.exportc.} = ptr object
- case kind: PledgeKind
- of Single:
- impl: PledgeImpl
- of Iteration:
- discard
- PledgeImpl {.exportc.} = object
- fulfilled: Atomic[bool]
- var x: Pledge
- echo x.repr
|