mirror of git://gcc.gnu.org/git/gcc.git
				
				
				
			
		
			
				
	
	
		
			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
 | 
						|
}
 |