forked from forgejo/forgejo
Remove hg dep
This commit is contained in:
parent
f8977f4847
commit
25d6ae69d1
36 changed files with 119822 additions and 8 deletions
19
modules/mahonia/fallback.go
Normal file
19
modules/mahonia/fallback.go
Normal file
|
@ -0,0 +1,19 @@
|
|||
package mahonia
|
||||
|
||||
// FallbackDecoder combines a series of Decoders into one.
|
||||
// If the first Decoder returns a status of INVALID_CHAR, the others are tried as well.
|
||||
//
|
||||
// Note: if the text to be decoded ends with a sequence of bytes that is not a valid character in the first charset,
|
||||
// but it could be the beginning of a valid character, the FallbackDecoder will give a status of NO_ROOM instead of
|
||||
// falling back to the other Decoders.
|
||||
func FallbackDecoder(decoders ...Decoder) Decoder {
|
||||
return func(p []byte) (c rune, size int, status Status) {
|
||||
for _, d := range decoders {
|
||||
c, size, status = d(p)
|
||||
if status != INVALID_CHAR {
|
||||
return
|
||||
}
|
||||
}
|
||||
return 0, 1, INVALID_CHAR
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue