33 lines
871 B
Nim
33 lines
871 B
Nim
|
|
import
|
|
preserves, std/tables
|
|
|
|
type
|
|
JsonTranslatorConnected* {.preservesRecord: "connected".} = object
|
|
`path`*: string
|
|
|
|
JsonSocketTranslatorArguments* {.preservesDictionary.} = object
|
|
`dataspace`* {.preservesEmbedded.}: EmbeddedRef
|
|
`socket`*: string
|
|
|
|
WebhooksArgumentsField0* {.preservesDictionary.} = object
|
|
`endpoints`*: Table[seq[string], EmbeddedRef]
|
|
`listen`*: Tcp
|
|
|
|
WebhooksArguments* {.preservesRecord: "webhooks".} = object
|
|
`field0`*: WebhooksArgumentsField0
|
|
|
|
Tcp* {.preservesRecord: "tcp".} = object
|
|
`host`*: string
|
|
`port`*: BiggestInt
|
|
|
|
proc `$`*(x: JsonTranslatorConnected | JsonSocketTranslatorArguments |
|
|
WebhooksArguments |
|
|
Tcp): string =
|
|
`$`(toPreserves(x))
|
|
|
|
proc encode*(x: JsonTranslatorConnected | JsonSocketTranslatorArguments |
|
|
WebhooksArguments |
|
|
Tcp): seq[byte] =
|
|
encode(toPreserves(x))
|