readComment reads a comment (until `-->`).
()
| 490 | |
| 491 | // readComment reads a comment (until `-->`). |
| 492 | func (d *Decoder) readComment() ([]byte, bool) { |
| 493 | if !d.checkAndDiscardPrefix(commentStart) { |
| 494 | if d.err == nil { |
| 495 | d.setSyntaxErrorf("invalid sequence <!- not part of <!--") |
| 496 | } |
| 497 | return nil, false |
| 498 | } |
| 499 | |
| 500 | d.buf.Reset() |
| 501 | |
| 502 | for { |
| 503 | if !d.mustReadUntil('>') { |
| 504 | return nil, false |
| 505 | } |
| 506 | |
| 507 | if d.buf.HasSuffix(commentEnd) { |
| 508 | break |
| 509 | } |
| 510 | } |
| 511 | |
| 512 | // Trim the trailing '-->' |
| 513 | d.buf.Remove(len(commentEnd)) |
| 514 | |
| 515 | return d.buf.Bytes(), true |
| 516 | } |
| 517 | |
| 518 | // readCData reads a CDATA section (until `]]>`). |
| 519 | func (d *Decoder) readCData() ([]byte, bool) { |
no test coverage detected