syndicate-nim/src/syndicate/protocols/worker.nim

15 lines
300 B
Nim

import
std/typetraits, preserves
type
Instance*[Cap] {.preservesRecord: "Instance".} = object
`name`*: string
`argument`*: Preserve[Cap]
proc `$`*[Cap](x: Instance[Cap]): string =
`$`(toPreserve(x, Cap))
proc encode*[Cap](x: Instance[Cap]): seq[byte] =
encode(toPreserve(x, Cap))