Add pgtype GenericText and GenericBinary

Rows.Values uses this for unknown types.
non-blocking
Jack Christensen 2017-03-11 20:28:14 -06:00
parent a79b498533
commit 45b33519d7
2 changed files with 58 additions and 0 deletions

29
generic_binary.go Normal file
View File

@ -0,0 +1,29 @@
package pgtype
import (
"io"
)
// GenericBinary is a placeholder for binary format values that no other type exists
// to handle.
type GenericBinary Bytea
func (dst *GenericBinary) Set(src interface{}) error {
return (*Bytea)(dst).Set(src)
}
func (dst *GenericBinary) Get() interface{} {
return (*Bytea)(dst).Get()
}
func (src *GenericBinary) AssignTo(dst interface{}) error {
return (*Bytea)(src).AssignTo(dst)
}
func (dst *GenericBinary) DecodeBinary(src []byte) error {
return (*Bytea)(dst).DecodeBinary(src)
}
func (src GenericBinary) EncodeBinary(w io.Writer) (bool, error) {
return (Bytea)(src).EncodeBinary(w)
}

29
generic_text.go Normal file
View File

@ -0,0 +1,29 @@
package pgtype
import (
"io"
)
// GenericText is a placeholder for text format values that no other type exists
// to handle.
type GenericText Text
func (dst *GenericText) Set(src interface{}) error {
return (*Text)(dst).Set(src)
}
func (dst *GenericText) Get() interface{} {
return (*Text)(dst).Get()
}
func (src *GenericText) AssignTo(dst interface{}) error {
return (*Text)(src).AssignTo(dst)
}
func (dst *GenericText) DecodeText(src []byte) error {
return (*Text)(dst).DecodeText(src)
}
func (src GenericText) EncodeText(w io.Writer) (bool, error) {
return (Text)(src).EncodeText(w)
}