mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 21:28:11 +09:00 
			
		
		
		
	[Vendor] update go-swagger v0.21.0 -> v0.25.0 (#12670)
* Update go-swagger * vendor
This commit is contained in:
		
							
								
								
									
										97
									
								
								vendor/github.com/pelletier/go-toml/lexer.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										97
									
								
								vendor/github.com/pelletier/go-toml/lexer.go
									
									
									
										generated
									
									
										vendored
									
									
								
							| @@ -26,7 +26,7 @@ type tomlLexer struct { | ||||
| 	currentTokenStart int | ||||
| 	currentTokenStop  int | ||||
| 	tokens            []token | ||||
| 	depth             int | ||||
| 	brackets          []rune | ||||
| 	line              int | ||||
| 	col               int | ||||
| 	endbufferLine     int | ||||
| @@ -123,6 +123,8 @@ func (l *tomlLexer) lexVoid() tomlLexStateFn { | ||||
| 	for { | ||||
| 		next := l.peek() | ||||
| 		switch next { | ||||
| 		case '}': // after '{' | ||||
| 			return l.lexRightCurlyBrace | ||||
| 		case '[': | ||||
| 			return l.lexTableKey | ||||
| 		case '#': | ||||
| @@ -140,10 +142,6 @@ func (l *tomlLexer) lexVoid() tomlLexStateFn { | ||||
| 			l.skip() | ||||
| 		} | ||||
|  | ||||
| 		if l.depth > 0 { | ||||
| 			return l.lexRvalue | ||||
| 		} | ||||
|  | ||||
| 		if isKeyStartChar(next) { | ||||
| 			return l.lexKey | ||||
| 		} | ||||
| @@ -167,10 +165,8 @@ func (l *tomlLexer) lexRvalue() tomlLexStateFn { | ||||
| 		case '=': | ||||
| 			return l.lexEqual | ||||
| 		case '[': | ||||
| 			l.depth++ | ||||
| 			return l.lexLeftBracket | ||||
| 		case ']': | ||||
| 			l.depth-- | ||||
| 			return l.lexRightBracket | ||||
| 		case '{': | ||||
| 			return l.lexLeftCurlyBrace | ||||
| @@ -188,12 +184,10 @@ func (l *tomlLexer) lexRvalue() tomlLexStateFn { | ||||
| 			fallthrough | ||||
| 		case '\n': | ||||
| 			l.skip() | ||||
| 			if l.depth == 0 { | ||||
| 				return l.lexVoid | ||||
| 			if len(l.brackets) > 0 && l.brackets[len(l.brackets)-1] == '[' { | ||||
| 				return l.lexRvalue | ||||
| 			} | ||||
| 			return l.lexRvalue | ||||
| 		case '_': | ||||
| 			return l.errorf("cannot start number with underscore") | ||||
| 			return l.lexVoid | ||||
| 		} | ||||
|  | ||||
| 		if l.follow("true") { | ||||
| @@ -223,9 +217,12 @@ func (l *tomlLexer) lexRvalue() tomlLexStateFn { | ||||
| 		} | ||||
|  | ||||
| 		possibleDate := l.peekString(35) | ||||
| 		dateMatch := dateRegexp.FindString(possibleDate) | ||||
| 		if dateMatch != "" { | ||||
| 			l.fastForward(len(dateMatch)) | ||||
| 		dateSubmatches := dateRegexp.FindStringSubmatch(possibleDate) | ||||
| 		if dateSubmatches != nil && dateSubmatches[0] != "" { | ||||
| 			l.fastForward(len(dateSubmatches[0])) | ||||
| 			if dateSubmatches[2] == "" { // no timezone information => local date | ||||
| 				return l.lexLocalDate | ||||
| 			} | ||||
| 			return l.lexDate | ||||
| 		} | ||||
|  | ||||
| @@ -233,10 +230,6 @@ func (l *tomlLexer) lexRvalue() tomlLexStateFn { | ||||
| 			return l.lexNumber | ||||
| 		} | ||||
|  | ||||
| 		if isAlphanumeric(next) { | ||||
| 			return l.lexKey | ||||
| 		} | ||||
|  | ||||
| 		return l.errorf("no value can start with %c", next) | ||||
| 	} | ||||
|  | ||||
| @@ -247,12 +240,17 @@ func (l *tomlLexer) lexRvalue() tomlLexStateFn { | ||||
| func (l *tomlLexer) lexLeftCurlyBrace() tomlLexStateFn { | ||||
| 	l.next() | ||||
| 	l.emit(tokenLeftCurlyBrace) | ||||
| 	return l.lexRvalue | ||||
| 	l.brackets = append(l.brackets, '{') | ||||
| 	return l.lexVoid | ||||
| } | ||||
|  | ||||
| func (l *tomlLexer) lexRightCurlyBrace() tomlLexStateFn { | ||||
| 	l.next() | ||||
| 	l.emit(tokenRightCurlyBrace) | ||||
| 	if len(l.brackets) == 0 || l.brackets[len(l.brackets)-1] != '{' { | ||||
| 		return l.errorf("cannot have '}' here") | ||||
| 	} | ||||
| 	l.brackets = l.brackets[:len(l.brackets)-1] | ||||
| 	return l.lexRvalue | ||||
| } | ||||
|  | ||||
| @@ -261,6 +259,11 @@ func (l *tomlLexer) lexDate() tomlLexStateFn { | ||||
| 	return l.lexRvalue | ||||
| } | ||||
|  | ||||
| func (l *tomlLexer) lexLocalDate() tomlLexStateFn { | ||||
| 	l.emit(tokenLocalDate) | ||||
| 	return l.lexRvalue | ||||
| } | ||||
|  | ||||
| func (l *tomlLexer) lexTrue() tomlLexStateFn { | ||||
| 	l.fastForward(4) | ||||
| 	l.emit(tokenTrue) | ||||
| @@ -294,6 +297,9 @@ func (l *tomlLexer) lexEqual() tomlLexStateFn { | ||||
| func (l *tomlLexer) lexComma() tomlLexStateFn { | ||||
| 	l.next() | ||||
| 	l.emit(tokenComma) | ||||
| 	if len(l.brackets) > 0 && l.brackets[len(l.brackets)-1] == '{' { | ||||
| 		return l.lexVoid | ||||
| 	} | ||||
| 	return l.lexRvalue | ||||
| } | ||||
|  | ||||
| @@ -324,7 +330,26 @@ func (l *tomlLexer) lexKey() tomlLexStateFn { | ||||
| 		} else if r == '\n' { | ||||
| 			return l.errorf("keys cannot contain new lines") | ||||
| 		} else if isSpace(r) { | ||||
| 			break | ||||
| 			str := " " | ||||
| 			// skip trailing whitespace | ||||
| 			l.next() | ||||
| 			for r = l.peek(); isSpace(r); r = l.peek() { | ||||
| 				str += string(r) | ||||
| 				l.next() | ||||
| 			} | ||||
| 			// break loop if not a dot | ||||
| 			if r != '.' { | ||||
| 				break | ||||
| 			} | ||||
| 			str += "." | ||||
| 			// skip trailing whitespace after dot | ||||
| 			l.next() | ||||
| 			for r = l.peek(); isSpace(r); r = l.peek() { | ||||
| 				str += string(r) | ||||
| 				l.next() | ||||
| 			} | ||||
| 			growingString += str | ||||
| 			continue | ||||
| 		} else if r == '.' { | ||||
| 			// skip | ||||
| 		} else if !isValidBareChar(r) { | ||||
| @@ -353,6 +378,7 @@ func (l *tomlLexer) lexComment(previousState tomlLexStateFn) tomlLexStateFn { | ||||
| func (l *tomlLexer) lexLeftBracket() tomlLexStateFn { | ||||
| 	l.next() | ||||
| 	l.emit(tokenLeftBracket) | ||||
| 	l.brackets = append(l.brackets, '[') | ||||
| 	return l.lexRvalue | ||||
| } | ||||
|  | ||||
| @@ -504,7 +530,7 @@ func (l *tomlLexer) lexStringAsString(terminator string, discardLeadingNewLine, | ||||
| 		} else { | ||||
| 			r := l.peek() | ||||
|  | ||||
| 			if 0x00 <= r && r <= 0x1F && !(acceptNewLines && (r == '\n' || r == '\r')) { | ||||
| 			if 0x00 <= r && r <= 0x1F && r != '\t' && !(acceptNewLines && (r == '\n' || r == '\r')) { | ||||
| 				return "", fmt.Errorf("unescaped control character %U", r) | ||||
| 			} | ||||
| 			l.next() | ||||
| @@ -535,7 +561,6 @@ func (l *tomlLexer) lexString() tomlLexStateFn { | ||||
| 	} | ||||
|  | ||||
| 	str, err := l.lexStringAsString(terminator, discardLeadingNewLine, acceptNewLines) | ||||
|  | ||||
| 	if err != nil { | ||||
| 		return l.errorf(err.Error()) | ||||
| 	} | ||||
| @@ -607,6 +632,10 @@ func (l *tomlLexer) lexInsideTableKey() tomlLexStateFn { | ||||
| func (l *tomlLexer) lexRightBracket() tomlLexStateFn { | ||||
| 	l.next() | ||||
| 	l.emit(tokenRightBracket) | ||||
| 	if len(l.brackets) == 0 || l.brackets[len(l.brackets)-1] != '[' { | ||||
| 		return l.errorf("cannot have ']' here") | ||||
| 	} | ||||
| 	l.brackets = l.brackets[:len(l.brackets)-1] | ||||
| 	return l.lexRvalue | ||||
| } | ||||
|  | ||||
| @@ -733,7 +762,27 @@ func (l *tomlLexer) run() { | ||||
| } | ||||
|  | ||||
| func init() { | ||||
| 	dateRegexp = regexp.MustCompile(`^\d{1,4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,9})?(Z|[+-]\d{2}:\d{2})`) | ||||
| 	// Regexp for all date/time formats supported by TOML. | ||||
| 	// Group 1: nano precision | ||||
| 	// Group 2: timezone | ||||
| 	// | ||||
| 	// /!\ also matches the empty string | ||||
| 	// | ||||
| 	// Example matches: | ||||
| 	//1979-05-27T07:32:00Z | ||||
| 	//1979-05-27T00:32:00-07:00 | ||||
| 	//1979-05-27T00:32:00.999999-07:00 | ||||
| 	//1979-05-27 07:32:00Z | ||||
| 	//1979-05-27 00:32:00-07:00 | ||||
| 	//1979-05-27 00:32:00.999999-07:00 | ||||
| 	//1979-05-27T07:32:00 | ||||
| 	//1979-05-27T00:32:00.999999 | ||||
| 	//1979-05-27 07:32:00 | ||||
| 	//1979-05-27 00:32:00.999999 | ||||
| 	//1979-05-27 | ||||
| 	//07:32:00 | ||||
| 	//00:32:00.999999 | ||||
| 	dateRegexp = regexp.MustCompile(`^(?:\d{1,4}-\d{2}-\d{2})?(?:[T ]?\d{2}:\d{2}:\d{2}(\.\d{1,9})?(Z|[+-]\d{2}:\d{2})?)?`) | ||||
| } | ||||
|  | ||||
| // Entry point | ||||
|   | ||||
		Reference in New Issue
	
	Block a user