27 lines
		
	
	
		
			668 B
		
	
	
	
		
			Go
		
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			668 B
		
	
	
	
		
			Go
		
	
	
| package yaml
 | |
| 
 | |
| // Set the writer error and return false.
 | |
| func yaml_emitter_set_writer_error(emitter *yaml_emitter_t, problem string) bool {
 | |
| 	emitter.error = yaml_WRITER_ERROR
 | |
| 	emitter.problem = problem
 | |
| 	return false
 | |
| }
 | |
| 
 | |
| // Flush the output buffer.
 | |
| func yaml_emitter_flush(emitter *yaml_emitter_t) bool {
 | |
| 	if emitter.write_handler == nil {
 | |
| 		panic("write handler not set")
 | |
| 	}
 | |
| 
 | |
| 	// Check if the buffer is empty.
 | |
| 	if emitter.buffer_pos == 0 {
 | |
| 		return true
 | |
| 	}
 | |
| 
 | |
| 	if err := emitter.write_handler(emitter, emitter.buffer[:emitter.buffer_pos]); err != nil {
 | |
| 		return yaml_emitter_set_writer_error(emitter, "write error: "+err.Error())
 | |
| 	}
 | |
| 	emitter.buffer_pos = 0
 | |
| 	return true
 | |
| }
 |