func hyperkvlex1()

in parser.go [240:273]


func hyperkvlex1(lex hyperkvLexer, lval *hyperkvSymType) (char, token int) {
	token = 0
	char = lex.Lex(lval)
	if char <= 0 {
		token = int(hyperkvTok1[0])
		goto out
	}
	if char < len(hyperkvTok1) {
		token = int(hyperkvTok1[char])
		goto out
	}
	if char >= hyperkvPrivate {
		if char < hyperkvPrivate+len(hyperkvTok2) {
			token = int(hyperkvTok2[char-hyperkvPrivate])
			goto out
		}
	}
	for i := 0; i < len(hyperkvTok3); i += 2 {
		token = int(hyperkvTok3[i+0])
		if token == char {
			token = int(hyperkvTok3[i+1])
			goto out
		}
	}

out:
	if token == 0 {
		token = int(hyperkvTok2[1]) /* unknown char */
	}
	if hyperkvDebug >= 3 {
		__yyfmt__.Printf("lex %s(%d)\n", hyperkvTokname(token), uint(char))
	}
	return char, token
}