Source File
composite_fields.go
Belonging Package
github.com/jackc/pgtype
package pgtype
import
type CompositeFields []interface{}
func ( CompositeFields) ( *ConnInfo, []byte) error {
if len() == 0 {
return fmt.Errorf("cannot decode into empty CompositeFields")
}
if == nil {
return fmt.Errorf("cannot decode unexpected null into CompositeFields")
}
:= NewCompositeBinaryScanner(, )
for , := range {
.ScanValue()
}
if .Err() != nil {
return .Err()
}
return nil
}
func ( CompositeFields) ( *ConnInfo, []byte) error {
if len() == 0 {
return fmt.Errorf("cannot decode into empty CompositeFields")
}
if == nil {
return fmt.Errorf("cannot decode unexpected null into CompositeFields")
}
:= NewCompositeTextScanner(, )
for , := range {
.ScanValue()
}
if .Err() != nil {
return .Err()
}
return nil
}
func ( CompositeFields) ( *ConnInfo, []byte) ([]byte, error) {
:= NewCompositeTextBuilder(, )
for , := range {
if , := .(TextEncoder); {
.AppendEncoder()
} else {
.AppendValue()
}
}
return .Finish()
}
func ( CompositeFields) ( *ConnInfo, []byte) ([]byte, error) {
:= NewCompositeBinaryBuilder(, )
for , := range {
, := .DataTypeForValue()
if ! {
return nil, fmt.Errorf("Unknown OID for %#v", )
}
if , := .(BinaryEncoder); {
.AppendEncoder(.OID, )
} else {
:= .Value.Set()
if != nil {
return nil,
}
if , := .Value.(BinaryEncoder); {
.AppendEncoder(.OID, )
} else {
return nil, fmt.Errorf("Cannot encode binary format for %v", )
}
}
}
return .Finish()
![]() |
The pages are generated with Golds v0.3.2-preview. (GOOS=darwin GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds. |