summaryrefslogtreecommitdiff
path: root/internal/mkserialize/mkserialize.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/mkserialize/mkserialize.go')
-rw-r--r--internal/mkserialize/mkserialize.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/internal/mkserialize/mkserialize.go b/internal/mkserialize/mkserialize.go
index be1ba22..a3bd657 100644
--- a/internal/mkserialize/mkserialize.go
+++ b/internal/mkserialize/mkserialize.go
@@ -78,6 +78,18 @@ func structPragma(c *ast.Comment, sp *[]func(), expr string, de bool) {
fmt.Println("chk(w.Close()) }")
})
}
+ case "zstd":
+ if de {
+ fmt.Println("{ r, err := zstd.NewReader(byteReader{r}); chk(err)")
+ *sp = append(*sp, func() {
+ fmt.Println("chk(r.Close()) }")
+ })
+ } else {
+ fmt.Println("{ w := zstd.NewWriter(w)")
+ *sp = append(*sp, func() {
+ fmt.Println("chk(w.Close()) }")
+ })
+ }
case "lenhdr":
if arg != "8" && arg != "16" && arg != "32" {
error(c.Pos(), "usage: //mt:lenhdr (8|16|32)")