mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	* Issue search support elasticsearch * Fix lint * Add indexer name on app.ini * add a warnning on SearchIssuesByKeyword * improve code
		
			
				
	
	
		
			39 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Go
		
	
	
	
		
			Vendored
		
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Go
		
	
	
	
		
			Vendored
		
	
	
	
// Copyright 2012-present Oliver Eilhard. All rights reserved.
 | 
						|
// Use of this source code is governed by a MIT-license.
 | 
						|
// See http://olivere.mit-license.org/license.txt for details.
 | 
						|
 | 
						|
package elastic
 | 
						|
 | 
						|
import (
 | 
						|
	"bytes"
 | 
						|
	"encoding/json"
 | 
						|
)
 | 
						|
 | 
						|
// Decoder is used to decode responses from Elasticsearch.
 | 
						|
// Users of elastic can implement their own marshaler for advanced purposes
 | 
						|
// and set them per Client (see SetDecoder). If none is specified,
 | 
						|
// DefaultDecoder is used.
 | 
						|
type Decoder interface {
 | 
						|
	Decode(data []byte, v interface{}) error
 | 
						|
}
 | 
						|
 | 
						|
// DefaultDecoder uses json.Unmarshal from the Go standard library
 | 
						|
// to decode JSON data.
 | 
						|
type DefaultDecoder struct{}
 | 
						|
 | 
						|
// Decode decodes with json.Unmarshal from the Go standard library.
 | 
						|
func (u *DefaultDecoder) Decode(data []byte, v interface{}) error {
 | 
						|
	return json.Unmarshal(data, v)
 | 
						|
}
 | 
						|
 | 
						|
// NumberDecoder uses json.NewDecoder, with UseNumber() enabled, from
 | 
						|
// the Go standard library to decode JSON data.
 | 
						|
type NumberDecoder struct{}
 | 
						|
 | 
						|
// Decode decodes with json.Unmarshal from the Go standard library.
 | 
						|
func (u *NumberDecoder) Decode(data []byte, v interface{}) error {
 | 
						|
	dec := json.NewDecoder(bytes.NewReader(data))
 | 
						|
	dec.UseNumber()
 | 
						|
	return dec.Decode(v)
 | 
						|
}
 |