code: func (po *Po) saveBuffer() {
  	// With no context...
  	if po.ctxBuffer == "" {
  		po.translations[po.trBuffer.ID] = po.trBuffer
  	} else {
  		// With context...
  		if _, ok := po.contexts[po.ctxBuffer]; !ok {
  			po.contexts[po.ctxBuffer] = make(map[string]*Translation)
  		}
  		po.contexts[po.ctxBuffer][po.trBuffer.ID] = po.trBuffer
  
  		// Cleanup current context buffer if needed
  		if po.trBuffer.ID != "" {
  			po.ctxBuffer = ""
  		}
  	}
  
  	// Flush Translation buffer
  	po.trBuffer = NewTranslation()
  }
docs: // saveBuffer takes the context and Translation buffers
  // and saves it on the translations collection