1
0
mirror of https://github.com/alecthomas/chroma.git synced 2025-02-15 13:33:12 +02:00

Allow skipping group's emitter, via passing nil as emitter

This commit is contained in:
Siavash Askari Nasr 2021-06-07 14:36:51 +04:30 committed by Alec Thomas
parent 4b989ea3b2
commit 22cbca546a

View File

@ -43,7 +43,9 @@ func ByGroups(emitters ...Emitter) Emitter {
// panic(errors.Errorf("number of groups %q does not match number of emitters %v", groups, emitters))
} else {
for i, group := range groups[1:] {
iterators = append(iterators, emitters[i].Emit([]string{group}, state))
if emitters[i] != nil {
iterators = append(iterators, emitters[i].Emit([]string{group}, state))
}
}
}
return Concaterator(iterators...)
@ -109,7 +111,7 @@ func UsingByGroup(sublexerGetFunc func(string) Lexer, sublexerNameGroup, codeGro
if err != nil {
panic(err)
}
} else {
} else if emitters[i] != nil {
iterators[i] = emitters[i].Emit([]string{group}, state)
}
}