blob: fed32a1f7363a3f529a75c89adab5c032c51cd6a (
plain) (
tree)
|
|
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
|