syndicate_utils/src/schema/assertions.nim

32 lines
810 B
Nim
Raw Normal View History

2024-01-09 18:49:54 +00:00
import
preserves
type
2024-02-08 18:13:09 +00:00
XsltItems* = seq[XsltItem]
2024-01-14 10:52:17 +00:00
Pulse* {.preservesRecord: "pulse".} = object
2024-02-05 22:48:21 +00:00
`periodSec`*: float
2024-01-14 10:52:17 +00:00
`proxy`* {.preservesEmbedded.}: Value
2024-02-08 18:13:09 +00:00
XsltItem* = string
2024-01-20 13:28:36 +00:00
XmlTranslation* {.preservesRecord: "xml-translation".} = object
`xml`*: string
`pr`*: Value
2024-01-09 18:49:54 +00:00
FileSystemUsage* {.preservesRecord: "file-system-usage".} = object
`path`*: string
`size`*: BiggestInt
2024-02-08 18:13:09 +00:00
XsltTransform* {.preservesRecord: "xslt-transform".} = object
`stylesheet`*: string
`input`*: string
`output`*: Value
2024-02-08 18:13:09 +00:00
proc `$`*(x: XsltItems | Pulse | XsltItem | XmlTranslation | FileSystemUsage |
XsltTransform): string =
2024-01-09 18:49:54 +00:00
`$`(toPreserves(x))
2024-02-08 18:13:09 +00:00
proc encode*(x: XsltItems | Pulse | XsltItem | XmlTranslation | FileSystemUsage |
XsltTransform): seq[byte] =
2024-01-09 18:49:54 +00:00
encode(toPreserves(x))