mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-29 10:57:44 +09:00 
			
		
		
		
	Update src-d/go-git to v4.13.0 (#7688)
* update gopkg.in/src-d/go-git.v4 v4.13.0 * mod tidy * vendor
This commit is contained in:
		
				
					committed by
					
						 techknowlogick
						techknowlogick
					
				
			
			
				
	
			
			
			
						parent
						
							bb875e98a1
						
					
				
				
					commit
					a9b4c8171f
				
			
							
								
								
									
										1
									
								
								vendor/github.com/pelletier/go-buffruneio/.gitignore
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								vendor/github.com/pelletier/go-buffruneio/.gitignore
									
									
									
										generated
									
									
										vendored
									
									
								
							| @@ -1 +0,0 @@ | ||||
| *.test | ||||
							
								
								
									
										7
									
								
								vendor/github.com/pelletier/go-buffruneio/.travis.yml
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										7
									
								
								vendor/github.com/pelletier/go-buffruneio/.travis.yml
									
									
									
										generated
									
									
										vendored
									
									
								
							| @@ -1,7 +0,0 @@ | ||||
| language: go | ||||
| sudo: false | ||||
| go: | ||||
|     - 1.3.3 | ||||
|     - 1.4.3 | ||||
|     - 1.5.3 | ||||
|     - tip | ||||
							
								
								
									
										62
									
								
								vendor/github.com/pelletier/go-buffruneio/README.md
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										62
									
								
								vendor/github.com/pelletier/go-buffruneio/README.md
									
									
									
										generated
									
									
										vendored
									
									
								
							| @@ -1,62 +0,0 @@ | ||||
| # buffruneio | ||||
|  | ||||
| [](https://travis-ci.org/pelletier/go-buffruneio) | ||||
| [](https://godoc.org/github.com/pelletier/go-buffruneio) | ||||
|  | ||||
| Buffruneio is a wrapper around bufio to provide buffered runes access with | ||||
| unlimited unreads. | ||||
|  | ||||
| ```go | ||||
| import "github.com/pelletier/go-buffruneio" | ||||
| ``` | ||||
|  | ||||
| ## Examples | ||||
|  | ||||
| ```go | ||||
| import ( | ||||
|     "fmt" | ||||
|     "github.com/pelletier/go-buffruneio" | ||||
|     "strings" | ||||
| ) | ||||
|  | ||||
| reader := buffruneio.NewReader(strings.NewReader("abcd")) | ||||
| fmt.Println(reader.ReadRune()) // 'a' | ||||
| fmt.Println(reader.ReadRune()) // 'b' | ||||
| fmt.Println(reader.ReadRune()) // 'c' | ||||
| reader.UnreadRune() | ||||
| reader.UnreadRune() | ||||
| fmt.Println(reader.ReadRune()) // 'b' | ||||
| fmt.Println(reader.ReadRune()) // 'c' | ||||
| ``` | ||||
|  | ||||
| ## Documentation | ||||
|  | ||||
| The documentation and additional examples are available at | ||||
| [godoc.org](http://godoc.org/github.com/pelletier/go-buffruneio). | ||||
|  | ||||
| ## Contribute | ||||
|  | ||||
| Feel free to report bugs and patches using GitHub's pull requests system on | ||||
| [pelletier/go-toml](https://github.com/pelletier/go-buffruneio). Any feedback is | ||||
| much appreciated! | ||||
|  | ||||
| ## LICENSE | ||||
|  | ||||
| Copyright (c) 2016 Thomas Pelletier | ||||
|  | ||||
| Permission is hereby granted, free of charge, to any person obtaining a copy of | ||||
| this software and associated documentation files (the "Software"), to deal in | ||||
| the Software without restriction, including without limitation the rights to | ||||
| use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of | ||||
| the Software, and to permit persons to whom the Software is furnished to do so, | ||||
| subject to the following conditions: | ||||
|  | ||||
| The above copyright notice and this permission notice shall be included in all | ||||
| copies or substantial portions of the Software. | ||||
|  | ||||
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
| IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS | ||||
| FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR | ||||
| COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER | ||||
| IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||||
| CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||||
							
								
								
									
										117
									
								
								vendor/github.com/pelletier/go-buffruneio/buffruneio.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										117
									
								
								vendor/github.com/pelletier/go-buffruneio/buffruneio.go
									
									
									
										generated
									
									
										vendored
									
									
								
							| @@ -1,117 +0,0 @@ | ||||
| // Package buffruneio is a wrapper around bufio to provide buffered runes access with unlimited unreads. | ||||
| package buffruneio | ||||
|  | ||||
| import ( | ||||
| 	"bufio" | ||||
| 	"container/list" | ||||
| 	"errors" | ||||
| 	"io" | ||||
| ) | ||||
|  | ||||
| // Rune to indicate end of file. | ||||
| const ( | ||||
| 	EOF = -(iota + 1) | ||||
| ) | ||||
|  | ||||
| // ErrNoRuneToUnread is returned by UnreadRune() when the read index is already at the beginning of the buffer. | ||||
| var ErrNoRuneToUnread = errors.New("no rune to unwind") | ||||
|  | ||||
| // Reader implements runes buffering for an io.Reader object. | ||||
| type Reader struct { | ||||
| 	buffer  *list.List | ||||
| 	current *list.Element | ||||
| 	input   *bufio.Reader | ||||
| } | ||||
|  | ||||
| // NewReader returns a new Reader. | ||||
| func NewReader(rd io.Reader) *Reader { | ||||
| 	return &Reader{ | ||||
| 		buffer: list.New(), | ||||
| 		input:  bufio.NewReader(rd), | ||||
| 	} | ||||
| } | ||||
|  | ||||
| type runeWithSize struct { | ||||
| 	r    rune | ||||
| 	size int | ||||
| } | ||||
|  | ||||
| func (rd *Reader) feedBuffer() error { | ||||
| 	r, size, err := rd.input.ReadRune() | ||||
|  | ||||
| 	if err != nil { | ||||
| 		if err != io.EOF { | ||||
| 			return err | ||||
| 		} | ||||
| 		r = EOF | ||||
| 	} | ||||
|  | ||||
| 	newRuneWithSize := runeWithSize{r, size} | ||||
|  | ||||
| 	rd.buffer.PushBack(newRuneWithSize) | ||||
| 	if rd.current == nil { | ||||
| 		rd.current = rd.buffer.Back() | ||||
| 	} | ||||
| 	return nil | ||||
| } | ||||
|  | ||||
| // ReadRune reads the next rune from buffer, or from the underlying reader if needed. | ||||
| func (rd *Reader) ReadRune() (rune, int, error) { | ||||
| 	if rd.current == rd.buffer.Back() || rd.current == nil { | ||||
| 		err := rd.feedBuffer() | ||||
| 		if err != nil { | ||||
| 			return EOF, 0, err | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	runeWithSize := rd.current.Value.(runeWithSize) | ||||
| 	rd.current = rd.current.Next() | ||||
| 	return runeWithSize.r, runeWithSize.size, nil | ||||
| } | ||||
|  | ||||
| // UnreadRune pushes back the previously read rune in the buffer, extending it if needed. | ||||
| func (rd *Reader) UnreadRune() error { | ||||
| 	if rd.current == rd.buffer.Front() { | ||||
| 		return ErrNoRuneToUnread | ||||
| 	} | ||||
| 	if rd.current == nil { | ||||
| 		rd.current = rd.buffer.Back() | ||||
| 	} else { | ||||
| 		rd.current = rd.current.Prev() | ||||
| 	} | ||||
| 	return nil | ||||
| } | ||||
|  | ||||
| // Forget removes runes stored before the current stream position index. | ||||
| func (rd *Reader) Forget() { | ||||
| 	if rd.current == nil { | ||||
| 		rd.current = rd.buffer.Back() | ||||
| 	} | ||||
| 	for ; rd.current != rd.buffer.Front(); rd.buffer.Remove(rd.current.Prev()) { | ||||
| 	} | ||||
| } | ||||
|  | ||||
| // PeekRune returns at most the next n runes, reading from the uderlying source if | ||||
| // needed. Does not move the current index. It includes EOF if reached. | ||||
| func (rd *Reader) PeekRunes(n int) []rune { | ||||
| 	res := make([]rune, 0, n) | ||||
| 	cursor := rd.current | ||||
| 	for i := 0; i < n; i++ { | ||||
| 		if cursor == nil { | ||||
| 			err := rd.feedBuffer() | ||||
| 			if err != nil { | ||||
| 				return res | ||||
| 			} | ||||
| 			cursor = rd.buffer.Back() | ||||
| 		} | ||||
| 		if cursor != nil { | ||||
| 			r := cursor.Value.(runeWithSize).r | ||||
| 			res = append(res, r) | ||||
| 			if r == EOF { | ||||
| 				return res | ||||
| 			} | ||||
| 			cursor = cursor.Next() | ||||
| 		} | ||||
| 	} | ||||
| 	return res | ||||
| } | ||||
		Reference in New Issue
	
	Block a user