mirror of
				https://github.com/superseriousbusiness/gotosocial.git
				synced 2025-11-03 18:42:25 -06:00 
			
		
		
		
	* start moving to bun * changing more stuff * more * and yet more * tests passing * seems stable now * more big changes * small fix * little fixes
		
			
				
	
	
		
			43 lines
		
	
	
	
		
			741 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
	
		
			741 B
		
	
	
	
		
			Go
		
	
	
	
	
	
package bunjson
 | 
						|
 | 
						|
import (
 | 
						|
	"io"
 | 
						|
)
 | 
						|
 | 
						|
var provider Provider = StdProvider{}
 | 
						|
 | 
						|
func SetProvider(p Provider) {
 | 
						|
	provider = p
 | 
						|
}
 | 
						|
 | 
						|
type Provider interface {
 | 
						|
	Marshal(v interface{}) ([]byte, error)
 | 
						|
	Unmarshal(data []byte, v interface{}) error
 | 
						|
	NewEncoder(w io.Writer) Encoder
 | 
						|
	NewDecoder(r io.Reader) Decoder
 | 
						|
}
 | 
						|
 | 
						|
type Decoder interface {
 | 
						|
	Decode(v interface{}) error
 | 
						|
	UseNumber()
 | 
						|
}
 | 
						|
 | 
						|
type Encoder interface {
 | 
						|
	Encode(v interface{}) error
 | 
						|
}
 | 
						|
 | 
						|
func Marshal(v interface{}) ([]byte, error) {
 | 
						|
	return provider.Marshal(v)
 | 
						|
}
 | 
						|
 | 
						|
func Unmarshal(data []byte, v interface{}) error {
 | 
						|
	return provider.Unmarshal(data, v)
 | 
						|
}
 | 
						|
 | 
						|
func NewEncoder(w io.Writer) Encoder {
 | 
						|
	return provider.NewEncoder(w)
 | 
						|
}
 | 
						|
 | 
						|
func NewDecoder(r io.Reader) Decoder {
 | 
						|
	return provider.NewDecoder(r)
 | 
						|
}
 |