Browse Source

add wire pkg with global codec

pull/1265/head
Ethan Buchman 6 years ago
parent
commit
085b4f5f2e
1 changed files with 46 additions and 0 deletions
  1. +46
    -0
      wire/wire.go

+ 46
- 0
wire/wire.go View File

@ -0,0 +1,46 @@
package wire
import (
"github.com/tendermint/go-crypto"
"github.com/tendermint/go-wire"
)
// Expose access to a global wire codec
// TODO: maybe introduce some Context object
// containing logger, config, codec that can
// be threaded through everything to avoid this global
var cdc *wire.Codec
func init() {
cdc = wire.NewCodec()
crypto.RegisterWire(cdc)
}
func MarshalBinary(o interface{}) ([]byte, error) {
return cdc.MarshalBinary(o)
}
func UnmarshalBinary(bz []byte, ptr interface{}) error {
return cdc.UnmarshalBinary(bz, ptr)
}
func MarshalJSON(o interface{}) ([]byte, error) {
return cdc.MarshalJSON(o)
}
func UnmarshalJSON(jsonBz []byte, ptr interface{}) error {
return cdc.UnmarshalJSON(jsonBz, ptr)
}
func RegisterInterface(ptr interface{}, opts *wire.InterfaceOptions) {
cdc.RegisterInterface(ptr, opts)
}
func RegisterConcrete(o interface{}, name string, opts *wire.ConcreteOptions) {
cdc.RegisterConcrete(o, name, opts)
}
//-------------------------------
const RFC3339Millis = wire.RFC3339Millis

Loading…
Cancel
Save