code: func (l *openMetricsLexer) next() byte {
  	l.i++
  	if l.i >= len(l.b) {
  		l.err = io.EOF
  		return byte(tEOF)
  	}
  	// Lex struggles with null bytes. If we are in a label value or help string, where
  	// they are allowed, consume them here immediately.
  	for l.b[l.i] == 0 && (l.state == sLValue || l.state == sMeta2 || l.state == sComment) {
  		l.i++
  		if l.i >= len(l.b) {
  			l.err = io.EOF
  			return byte(tEOF)
  		}
  	}
  	return l.b[l.i]
  }
docs: // next advances the openMetricsLexer to the next character.