MCPcopy
hub / github.com/go-yaml/yaml / yaml_emitter_emit_flow_sequence_item

Function yaml_emitter_emit_flow_sequence_item

emitterc.go:532–612  ·  emitterc.go::yaml_emitter_emit_flow_sequence_item

Expect a flow item node.

(emitter *yaml_emitter_t, event *yaml_event_t, first, trail bool)

Source from the content-addressed store, hash-verified

530
531// Expect a flow item node.
532func yaml_emitter_emit_flow_sequence_item(emitter *yaml_emitter_t, event *yaml_event_t, first, trail bool) bool {
533 if first {
534 if !yaml_emitter_write_indicator(emitter, []byte{'['}, true, true, false) {
535 return false
536 }
537 if !yaml_emitter_increase_indent(emitter, true, false) {
538 return false
539 }
540 emitter.flow_level++
541 }
542
543 if event.typ == yaml_SEQUENCE_END_EVENT {
544 if emitter.canonical && !first && !trail {
545 if !yaml_emitter_write_indicator(emitter, []byte{','}, false, false, false) {
546 return false
547 }
548 }
549 emitter.flow_level--
550 emitter.indent = emitter.indents[len(emitter.indents)-1]
551 emitter.indents = emitter.indents[:len(emitter.indents)-1]
552 if emitter.column == 0 || emitter.canonical && !first {
553 if !yaml_emitter_write_indent(emitter) {
554 return false
555 }
556 }
557 if !yaml_emitter_write_indicator(emitter, []byte{']'}, false, false, false) {
558 return false
559 }
560 if !yaml_emitter_process_line_comment(emitter) {
561 return false
562 }
563 if !yaml_emitter_process_foot_comment(emitter) {
564 return false
565 }
566 emitter.state = emitter.states[len(emitter.states)-1]
567 emitter.states = emitter.states[:len(emitter.states)-1]
568
569 return true
570 }
571
572 if !first && !trail {
573 if !yaml_emitter_write_indicator(emitter, []byte{','}, false, false, false) {
574 return false
575 }
576 }
577
578 if !yaml_emitter_process_head_comment(emitter) {
579 return false
580 }
581 if emitter.column == 0 {
582 if !yaml_emitter_write_indent(emitter) {
583 return false
584 }
585 }
586
587 if emitter.canonical || emitter.column > emitter.best_width {
588 if !yaml_emitter_write_indent(emitter) {
589 return false

Callers 1

Tested by

no test coverage detected