mirror of
https://github.com/golang/go
synced 2024-11-06 09:26:18 -07:00
519474451a
This is a subset of https://golang.org/cl/20022 with only the copyright header lines, so the next CL will be smaller and more reviewable. Go policy has been single space after periods in comments for some time. The copyright header template at: https://golang.org/doc/contribute.html#copyright also uses a single space. Make them all consistent. Change-Id: Icc26c6b8495c3820da6b171ca96a74701b4a01b0 Reviewed-on: https://go-review.googlesource.com/20111 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
49 lines
1.9 KiB
Go
49 lines
1.9 KiB
Go
// Copyright 2013 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
// Package encoding defines interfaces shared by other packages that
|
|
// convert data to and from byte-level and textual representations.
|
|
// Packages that check for these interfaces include encoding/gob,
|
|
// encoding/json, and encoding/xml. As a result, implementing an
|
|
// interface once can make a type useful in multiple encodings.
|
|
// Standard types that implement these interfaces include time.Time and net.IP.
|
|
// The interfaces come in pairs that produce and consume encoded data.
|
|
package encoding
|
|
|
|
// BinaryMarshaler is the interface implemented by an object that can
|
|
// marshal itself into a binary form.
|
|
//
|
|
// MarshalBinary encodes the receiver into a binary form and returns the result.
|
|
type BinaryMarshaler interface {
|
|
MarshalBinary() (data []byte, err error)
|
|
}
|
|
|
|
// BinaryUnmarshaler is the interface implemented by an object that can
|
|
// unmarshal a binary representation of itself.
|
|
//
|
|
// UnmarshalBinary must be able to decode the form generated by MarshalBinary.
|
|
// UnmarshalBinary must copy the data if it wishes to retain the data
|
|
// after returning.
|
|
type BinaryUnmarshaler interface {
|
|
UnmarshalBinary(data []byte) error
|
|
}
|
|
|
|
// TextMarshaler is the interface implemented by an object that can
|
|
// marshal itself into a textual form.
|
|
//
|
|
// MarshalText encodes the receiver into UTF-8-encoded text and returns the result.
|
|
type TextMarshaler interface {
|
|
MarshalText() (text []byte, err error)
|
|
}
|
|
|
|
// TextUnmarshaler is the interface implemented by an object that can
|
|
// unmarshal a textual representation of itself.
|
|
//
|
|
// UnmarshalText must be able to decode the form generated by MarshalText.
|
|
// UnmarshalText must copy the text if it wishes to retain the text
|
|
// after returning.
|
|
type TextUnmarshaler interface {
|
|
UnmarshalText(text []byte) error
|
|
}
|