23 lines
462 B
Nim
23 lines
462 B
Nim
|
|
import
|
|
preserves
|
|
|
|
type
|
|
WebSocket* {.preservesRecord: "ws".} = object
|
|
`url`*: string
|
|
|
|
Stdio* {.preservesRecord: "stdio".} = object
|
|
|
|
Unix* {.preservesRecord: "unix".} = object
|
|
`path`*: string
|
|
|
|
Tcp* {.preservesRecord: "tcp".} = object
|
|
`host`*: string
|
|
`port`*: BiggestInt
|
|
|
|
proc `$`*(x: WebSocket | Stdio | Unix | Tcp): string =
|
|
`$`(toPreserves(x))
|
|
|
|
proc encode*(x: WebSocket | Stdio | Unix | Tcp): seq[byte] =
|
|
encode(toPreserves(x))
|