1
0
mirror of https://github.com/taigrr/wtf synced 2026-04-01 03:08:50 -07:00

Update dependencies

This commit is contained in:
Chris Cummer
2018-08-19 14:33:19 -07:00
parent 7936b5f261
commit 099fa58b39
308 changed files with 35205 additions and 1075 deletions

43
vendor/github.com/alecthomas/chroma/iterator.go generated vendored Normal file
View File

@@ -0,0 +1,43 @@
package chroma
// An Iterator across tokens.
//
// nil will be returned at the end of the Token stream.
//
// If an error occurs within an Iterator, it may propagate this in a panic. Formatters should recover.
type Iterator func() *Token
// Tokens consumes all tokens from the iterator and returns them as a slice.
func (i Iterator) Tokens() []*Token {
out := []*Token{}
for t := i(); t != nil; t = i() {
out = append(out, t)
}
return out
}
// Concaterator concatenates tokens from a series of iterators.
func Concaterator(iterators ...Iterator) Iterator {
return func() *Token {
for len(iterators) > 0 {
t := iterators[0]()
if t != nil {
return t
}
iterators = iterators[1:]
}
return nil
}
}
// Literator converts a sequence of literal Tokens into an Iterator.
func Literator(tokens ...*Token) Iterator {
return func() (out *Token) {
if len(tokens) == 0 {
return nil
}
token := tokens[0]
tokens = tokens[1:]
return token
}
}