code: func NewDataWriter(w io.Writer) (*Data, error) {
  	d := newData()
  	d.w = w
  	d.cbs.write = C.gpgme_data_write_cb_t(C.gogpgme_writefunc)
  	cbc := callbackAdd(d)
  	d.cbc = cbc
  	return d, handleError(C.gogpgme_data_new_from_cbs(&d.dh, &d.cbs, C.uintptr_t(cbc)))
  }
docs: // NewDataWriter returns a new callback based data buffer