terraform-provider-google/vendor/github.com/vmihailenco/msgpack
2018-12-26 10:59:22 -08:00
..
codes Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
.travis.yml Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
appengine.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
CHANGELOG.md Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
decode_map.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
decode_number.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
decode_query.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
decode_slice.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
decode_string.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
decode_value.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
decode.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
encode_map.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
encode_number.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
encode_slice.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
encode_value.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
encode.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
ext.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
LICENSE Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
Makefile Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
msgpack.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
README.md Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
tag.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
time.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00
types.go Update hashicorp/terraform to 0.12-alpha4. (#2744) 2018-12-26 10:59:22 -08:00

MessagePack encoding for Golang

Build Status GoDoc

Supports:

API docs: https://godoc.org/github.com/vmihailenco/msgpack. Examples: https://godoc.org/github.com/vmihailenco/msgpack#pkg-examples.

Installation

Install:

go get -u github.com/vmihailenco/msgpack

Quickstart

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
}

Benchmark

BenchmarkStructVmihailencoMsgpack-4   	  200000	     12814 ns/op	    2128 B/op	      26 allocs/op
BenchmarkStructUgorjiGoMsgpack-4      	  100000	     17678 ns/op	    3616 B/op	      70 allocs/op
BenchmarkStructUgorjiGoCodec-4        	  100000	     19053 ns/op	    7346 B/op	      23 allocs/op
BenchmarkStructJSON-4                 	   20000	     69438 ns/op	    7864 B/op	      26 allocs/op
BenchmarkStructGOB-4                  	   10000	    104331 ns/op	   14664 B/op	     278 allocs/op

Howto

Please go through examples to get an idea how to use this package.

See also