コード例 #1
0
ファイル: encoding.go プロジェクト: MZDN/qpid-proton
// decode from bytes. Return bytes decoded and errEOS if we run out of data.
func (pd pnDecoder) decode(bytes []byte) (n int, err error) {
	C.pn_data_clear(pd.data)
	if len(bytes) == 0 {
		return 0, errEOS
	}
	cBuf := (*C.char)(unsafe.Pointer(&bytes[0]))
	result := int(C.pn_data_decode(pd.data, cBuf, C.size_t(len(bytes))))
	if result < 0 {
		return 0, errorCode(result)
	} else {
		return result, nil
	}
}
コード例 #2
0
ファイル: marshal.go プロジェクト: ChugR/qpid-proton
func clearMarshal(v interface{}, data *C.pn_data_t) {
	C.pn_data_clear(data)
	marshal(v, data)
}
コード例 #3
0
ファイル: marshal.go プロジェクト: ChugR/qpid-proton
func replace(data *C.pn_data_t, v interface{}) {
	C.pn_data_clear(data)
	marshal(v, data)
}
コード例 #4
0
ファイル: wrappers.go プロジェクト: orpiske/qpid-proton
func (d Data) Clear()                  { C.pn_data_clear(d.pn) }