15 lines
329 B
Nim
15 lines
329 B
Nim
|
|
import
|
|
preserves, dataspacePatterns
|
|
|
|
type
|
|
Observe*[Cap] {.acyclic, preservesRecord: "Observe".} = ref object
|
|
`pattern`*: dataspacePatterns.Pattern[Cap]
|
|
`observer`*: Cap
|
|
|
|
proc `$`*[Cap](x: Observe[Cap]): string =
|
|
`$`(toPreserve(x, Cap))
|
|
|
|
proc encode*[Cap](x: Observe[Cap]): seq[byte] =
|
|
encode(toPreserve(x, Cap))
|