package pgproto3
import (
)
type CopyData struct {
Data []byte
}
func (*CopyData) () {}
func (*CopyData) () {}
func ( *CopyData) ( []byte) error {
.Data =
return nil
}
func ( *CopyData) ( []byte) ([]byte, error) {
, := beginMessage(, 'd')
= append(, .Data...)
return finishMessage(, )
}
func ( CopyData) () ([]byte, error) {
return json.Marshal(struct {
string
string
}{
: "CopyData",
: hex.EncodeToString(.Data),
})
}
func ( *CopyData) ( []byte) error {
if string() == "null" {
return nil
}
var struct {
string
}
if := json.Unmarshal(, &); != nil {
return
}
if . == "" {
.Data = []byte{}
return nil
}
, := hex.DecodeString(.)
if != nil {
return
}
.Data =
return nil
}