From 12dd7fb4a62771974e8fc675b4bf7ac3d590f7fa Mon Sep 17 00:00:00 2001 From: "duanyi.aster" Date: Thu, 8 Jul 2021 19:01:54 +0800 Subject: [PATCH] doc: print syntax error --- README.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/README.md b/README.md index b305ec6..ffb931c 100644 --- a/README.md +++ b/README.md @@ -130,6 +130,31 @@ fn := root.Float64() fm := root.Interface().(float64) // jn == jm ``` +### Print Syntax Error +```go +import "github.com/bytedance/sonic/decoder" + +var data interface{} +dc := decoder.NewDecoder("[[[}]]") +if err := dc.Decode(&data); err != nil { + if e, ok := err.(decoder.SyntaxError); ok { + + /*Syntax error at index 3: invalid char + + [[[}]] + ...^.. + */ + print(e.Description()) + + /*"Syntax error at index 3: invalid char\n\n\t[[[}]]\n\t...^..\n"*/ + println(fmt.Sprintf("%q", self.Description())) + } + + /*Decode: Syntax error at index 3: invalid char*/ + t.Fatalf("Decode: %v", err) +} +``` + ## Tips ### Pretouch