code: func (h *RequestHeader) VisitAll(f func(key, value []byte)) {
  	h.parseRawHeaders()
  	host := h.Host()
  	if len(host) > 0 {
  		f(strHost, host)
  	}
  	if len(h.contentLengthBytes) > 0 {
  		f(strContentLength, h.contentLengthBytes)
  	}
  	contentType := h.ContentType()
  	if len(contentType) > 0 {
  		f(strContentType, contentType)
  	}
  	userAgent := h.UserAgent()
  	if len(userAgent) > 0 {
  		f(strUserAgent, userAgent)
  	}
  
  	h.collectCookies()
  	if len(h.cookies) > 0 {
  		h.bufKV.value = appendRequestCookieBytes(h.bufKV.value[:0], h.cookies)
  		f(strCookie, h.bufKV.value)
  	}
  	visitArgs(h.h, f)
  	if h.ConnectionClose() {
  		f(strConnection, strClose)
  	}
  }
docs: // VisitAll calls f for each header.
  //
  // f must not retain references to key and/or value after returning.
  // Copy key and/or value contents before returning if you need retaining them.
  //
  // To get the headers in order they were received use VisitAllInOrder.