diff options
author | Qais Patankar <qaisjp@gmail.com> | 2020-03-15 22:43:46 +0000 |
---|---|---|
committer | Wim <wim@42.be> | 2020-03-22 00:02:48 +0100 |
commit | 76e5fe5a87d7e60919075f96eee599f3c6255a9f (patch) | |
tree | af3181ad6aadaea02069473a3718a827be888426 /vendor/github.com/matterbridge/msgraph.go/jsonx/README.md | |
parent | 802c80f40c709ba4967de317e40a8d6abe57f6be (diff) | |
download | matterbridge-msglm-76e5fe5a87d7e60919075f96eee599f3c6255a9f.tar.gz matterbridge-msglm-76e5fe5a87d7e60919075f96eee599f3c6255a9f.tar.bz2 matterbridge-msglm-76e5fe5a87d7e60919075f96eee599f3c6255a9f.zip |
Update vendor yaegashi/msgraph.go to v0.1.2 (2)
Diffstat (limited to 'vendor/github.com/matterbridge/msgraph.go/jsonx/README.md')
-rw-r--r-- | vendor/github.com/matterbridge/msgraph.go/jsonx/README.md | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/vendor/github.com/matterbridge/msgraph.go/jsonx/README.md b/vendor/github.com/matterbridge/msgraph.go/jsonx/README.md deleted file mode 100644 index 949df339..00000000 --- a/vendor/github.com/matterbridge/msgraph.go/jsonx/README.md +++ /dev/null @@ -1,55 +0,0 @@ -# jsonx - -It's modified version of [encoding/json](https://golang.org/pkg/encoding/json/) -which enables extra map field (with `jsonx:"true"` tag) to catch all other fields not declared in the struct. - -`jsonx` is a code name for internal use -and not related to [JSONx](https://tools.ietf.org/html/draft-rsalz-jsonx-00). - -Example ([Run on playgroud](https://play.golang.org/p/TZi0JeHYG69)) -```go -package main - -import ( - "encoding/json" - "fmt" - - "github.com/matterbridge/msgraph.go/jsonx" -) - -type Extra struct { - X string - Y int - Extra map[string]interface{} `json:"-" jsonx:"true"` -} - -func main() { - var x1, x2 Extra - b := []byte(`{"X":"123","Y":123,"A":"123","B":123}`) - fmt.Printf("\nUnmarshal input: %s\n", string(b)) - json.Unmarshal(b, &x1) - fmt.Printf(" json.Unmarshal: %#v\n", x1) - jsonx.Unmarshal(b, &x2) - fmt.Printf("jsonx.Unmarshal: %#v\n", x2) - - x := Extra{X: "456", Y: 456, Extra: map[string]interface{}{"A": "456", "B": 456}} - fmt.Printf("\nMarshal input: %#v\n", x) - b1, _ := json.Marshal(x) - fmt.Printf(" json.Marshal: %s\n", string(b1)) - b2, _ := jsonx.Marshal(x) - fmt.Printf("jsonx.Marshal: %s\n", string(b2)) -} -``` - -Result - -```text -Unmarshal input: {"X":"123","Y":123,"A":"123","B":123} - json.Unmarshal: main.Extra{X:"123", Y:123, Extra:map[string]interface {}(nil)} -jsonx.Unmarshal: main.Extra{X:"123", Y:123, Extra:map[string]interface {}{"A":"123", "B":123}} - -Marshal input: main.Extra{X:"456", Y:456, Extra:map[string]interface {}{"A":"456", "B":456}} - json.Marshal: {"X":"456","Y":456} -jsonx.Marshal: {"X":"456","Y":456,"A":"456","B":456} -``` - |