code: func (p *Parser) Document(r io.Reader) (*Word, error) {
  	p.reset()
  	p.f = &File{}
  	p.src = r
  	p.rune()
  	p.quote = hdocBody
  	p.hdocStop = []byte("MVDAN_CC_SH_SYNTAX_EOF")
  	p.parsingDoc = true
  	p.next()
  	w := p.getWord()
  	return w, p.err
  }
docs: // Document parses a single here-document word. That is, it parses the input as
  // if they were lines following a <<EOF redirection.
  //
  // In practice, this is the same as parsing the input as if it were within
  // double quotes, but without having to escape all double quote characters.
  // Similarly, the here-document word parsed here cannot be ended by any
  // delimiter other than reaching the end of the input.