名称 最后更新
..
msgpcode 正在载入提交数据...
.golangci.yml 正在载入提交数据...
.prettierrc 正在载入提交数据...
.travis.yml 正在载入提交数据...
CHANGELOG.md 正在载入提交数据...
LICENSE 正在载入提交数据...
Makefile 正在载入提交数据...
README.md 正在载入提交数据...
decode.go 正在载入提交数据...
decode_map.go 正在载入提交数据...
decode_number.go 正在载入提交数据...
decode_query.go 正在载入提交数据...
decode_slice.go 正在载入提交数据...
decode_string.go 正在载入提交数据...
decode_value.go 正在载入提交数据...
encode.go 正在载入提交数据...
encode_map.go 正在载入提交数据...
encode_number.go 正在载入提交数据...
encode_slice.go 正在载入提交数据...
encode_value.go 正在载入提交数据...
ext.go 正在载入提交数据...
go.mod 正在载入提交数据...
intern.go 正在载入提交数据...
msgpack.go 正在载入提交数据...
renovate.json 正在载入提交数据...
safe.go 正在载入提交数据...
time.go 正在载入提交数据...
types.go 正在载入提交数据...
unsafe.go 正在载入提交数据...

MessagePack encoding for Golang

Build Status PkgGoDev Documentation Chat

:heart: Uptrace.dev - distributed traces, logs, and errors in one place

Features

Installation

msgpack supports 2 last Go versions and requires support for Go modules. So make sure to initialize a Go module:

go mod init github.com/my/repo

And then install msgpack/v5 (note v5 in the import; omitting it is a popular mistake):

go get github.com/vmihailenco/msgpack/v5

Quickstart

import "github.com/vmihailenco/msgpack/v5"

func ExampleMarshal() {
    type Item struct {
        Foo string
    }

    b, err := msgpack.Marshal(&Item{Foo: "bar"})
    if err != nil {
        panic(err)
    }

    var item Item
    err = msgpack.Unmarshal(b, &item)
    if err != nil {
        panic(err)
    }
    fmt.Println(item.Foo)
    // Output: bar
}

See also