go encoding 源码

2022-07-15 浏览 (806)

golang encoding 代码

文件路径:/src/encoding/encoding.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
}

相关信息

go 源码目录

相关文章

go go_android_exec 源码

go argposition_test 源码

go badsym_test 源码

go errors_test 源码

go ptr_test 源码

go err1 源码

go err2 源码

go err4 源码

go issue11097a 源码

go issue11097b 源码

^