code: func (l *lexer) acceptRun(valid string) bool {
  	pos := l.pos
  	for strings.IndexRune(valid, l.next()) >= 0 {
  	}
  	l.backup()
  	return l.pos > pos
  }
docs: // acceptRun consumes a run of runes from the valid set.