(emitter *yaml_emitter_t, value []byte, allow_breaks bool)
| 1607 | } |
| 1608 | |
| 1609 | func yaml_emitter_write_plain_scalar(emitter *yaml_emitter_t, value []byte, allow_breaks bool) bool { |
| 1610 | if len(value) > 0 && !emitter.whitespace { |
| 1611 | if !put(emitter, ' ') { |
| 1612 | return false |
| 1613 | } |
| 1614 | } |
| 1615 | |
| 1616 | spaces := false |
| 1617 | breaks := false |
| 1618 | for i := 0; i < len(value); { |
| 1619 | if is_space(value, i) { |
| 1620 | if allow_breaks && !spaces && emitter.column > emitter.best_width && !is_space(value, i+1) { |
| 1621 | if !yaml_emitter_write_indent(emitter) { |
| 1622 | return false |
| 1623 | } |
| 1624 | i += width(value[i]) |
| 1625 | } else { |
| 1626 | if !write(emitter, value, &i) { |
| 1627 | return false |
| 1628 | } |
| 1629 | } |
| 1630 | spaces = true |
| 1631 | } else if is_break(value, i) { |
| 1632 | if !breaks && value[i] == '\n' { |
| 1633 | if !put_break(emitter) { |
| 1634 | return false |
| 1635 | } |
| 1636 | } |
| 1637 | if !write_break(emitter, value, &i) { |
| 1638 | return false |
| 1639 | } |
| 1640 | //emitter.indention = true |
| 1641 | breaks = true |
| 1642 | } else { |
| 1643 | if breaks { |
| 1644 | if !yaml_emitter_write_indent(emitter) { |
| 1645 | return false |
| 1646 | } |
| 1647 | } |
| 1648 | if !write(emitter, value, &i) { |
| 1649 | return false |
| 1650 | } |
| 1651 | emitter.indention = false |
| 1652 | spaces = false |
| 1653 | breaks = false |
| 1654 | } |
| 1655 | } |
| 1656 | |
| 1657 | if len(value) > 0 { |
| 1658 | emitter.whitespace = false |
| 1659 | } |
| 1660 | emitter.indention = false |
| 1661 | if emitter.root_context { |
| 1662 | emitter.open_ended = true |
| 1663 | } |
| 1664 | |
| 1665 | return true |
| 1666 | } |
no test coverage detected