mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-01-06 05:01:10 -05:00
85 lines
2.1 KiB
Go
85 lines
2.1 KiB
Go
package gintersect
|
|
|
|
var (
|
|
samplesInitialized = false
|
|
|
|
testCharacters map[rune]Token
|
|
testCharactersPlus map[rune]Token
|
|
testCharactersStar map[rune]Token
|
|
|
|
testDot, testDotPlus, testDotStar Token
|
|
|
|
testLowerAlphaSet, testLowerAlphaSetPlus, lowerAplhaSetStar Token
|
|
testUpperAlphaSet, testUpperAlphaSetPlus, testUpperAlphaSetStar Token
|
|
testNumSet, testNumSetPlus, testNumSetStar Token
|
|
testSymbolSet, testSymbolSetPlus, testSymbolSetStar Token
|
|
|
|
testEmptySet Token
|
|
)
|
|
|
|
func initializeTestSamples() {
|
|
if samplesInitialized {
|
|
return
|
|
}
|
|
|
|
testCharacters, testCharactersPlus, testCharactersStar = make(map[rune]Token), make(map[rune]Token), make(map[rune]Token)
|
|
|
|
testDot, testDotPlus, testDotStar = NewDot(), NewDot(), NewDot()
|
|
testDotPlus.SetFlag(FlagPlus)
|
|
testDotStar.SetFlag(FlagStar)
|
|
|
|
var runes []rune
|
|
runes = makeRunes('a', 'z')
|
|
|
|
testLowerAlphaSet, testLowerAlphaSetPlus, lowerAplhaSetStar = NewSet(runes), NewSet(runes), NewSet(runes)
|
|
testLowerAlphaSetPlus.SetFlag(FlagPlus)
|
|
lowerAplhaSetStar.SetFlag(FlagStar)
|
|
|
|
runes = makeRunes('A', 'Z')
|
|
|
|
testUpperAlphaSet, testUpperAlphaSetPlus, testUpperAlphaSetStar = NewSet(runes), NewSet(runes), NewSet(runes)
|
|
testUpperAlphaSetPlus.SetFlag(FlagPlus)
|
|
testUpperAlphaSetStar.SetFlag(FlagStar)
|
|
|
|
runes = makeRunes('0', '9')
|
|
|
|
testNumSet, testNumSetPlus, testNumSetStar = NewSet(runes), NewSet(runes), NewSet(runes)
|
|
testNumSetPlus.SetFlag(FlagPlus)
|
|
testNumSetStar.SetFlag(FlagStar)
|
|
|
|
runes = makeRunes('!', '/')
|
|
|
|
testSymbolSet, testSymbolSetPlus, testSymbolSetStar = NewSet(runes), NewSet(runes), NewSet(runes)
|
|
testSymbolSetPlus.SetFlag(FlagPlus)
|
|
testSymbolSetStar.SetFlag(FlagStar)
|
|
|
|
testEmptySet = NewSet([]rune{})
|
|
|
|
samplesInitialized = true
|
|
}
|
|
|
|
func makeRunes(from rune, to rune) []rune {
|
|
runes := make([]rune, 0, 30)
|
|
for r := from; r <= to; r++ {
|
|
runes = append(runes, r)
|
|
addToCharacters(r)
|
|
}
|
|
|
|
return runes
|
|
}
|
|
|
|
func addToCharacters(r rune) {
|
|
var t Token
|
|
|
|
t = NewCharacter(r)
|
|
testCharacters[r] = t
|
|
|
|
t = NewCharacter(r)
|
|
t.SetFlag(FlagPlus)
|
|
testCharactersPlus[r] = t
|
|
|
|
t = NewCharacter(r)
|
|
t.SetFlag(FlagStar)
|
|
testCharactersStar[r] = t
|
|
}
|