mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-05-08 04:20:59 -05:00
switch to go vendoring
This commit is contained in:
+62
@@ -0,0 +1,62 @@
|
||||
# MessagePack for Golang
|
||||
|
||||
[](https://pkg.go.dev/github.com/shamaton/msgpack)
|
||||

|
||||
[](https://goreportcard.com/report/github.com/shamaton/msgpack)
|
||||
[](https://codecov.io/gh/shamaton/msgpack)
|
||||
[](https://app.fossa.com/projects/git%2Bgithub.com%2Fshamaton%2Fmsgpack?ref=badge_shield)
|
||||
|
||||
## 📣 Notice
|
||||
If your application serializes only primitive types, array, map and struct, code generation is also recommended.
|
||||
You can get the fastest performance with [msgpackgen](https://github.com/shamaton/msgpackgen).
|
||||
|
||||
## Features
|
||||
* Supported types : primitive / array / slice / struct / map / interface{} and time.Time
|
||||
* Renaming fields via `msgpack:"field_name"`
|
||||
* Omitting fields via `msgpack:"-"`
|
||||
* Supports extend encoder / decoder
|
||||
* Can also Encoding / Decoding struct as array
|
||||
|
||||
This package requires more than version **1.13**
|
||||
|
||||
## Installation
|
||||
|
||||
Current version is **msgpack/v2**.
|
||||
```sh
|
||||
go get -u github.com/shamaton/msgpack/v2
|
||||
```
|
||||
|
||||
## Quick Start
|
||||
```go
|
||||
package main
|
||||
|
||||
import (
|
||||
"github.com/shamaton/msgpack/v2"
|
||||
)
|
||||
|
||||
func main() {
|
||||
type Struct struct {
|
||||
String string
|
||||
}
|
||||
v := Struct{String: "msgpack"}
|
||||
|
||||
d, err := msgpack.Marshal(v)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
r := Struct{}
|
||||
err = msgpack.Unmarshal(d, &r)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Benchmark
|
||||
This result made from [shamaton/msgpack_bench](https://github.com/shamaton/msgpack_bench)
|
||||
|
||||

|
||||
|
||||
## License
|
||||
|
||||
This library is under the MIT License.
|
||||
Reference in New Issue
Block a user