MCPcopy Create free account
hub / github.com/aws/smithy-go / encodeZeroValue

Method encodeZeroValue

document/cbor/encode.go:76–95  ·  view source on GitHub ↗
(rv reflect.Value)

Source from the content-addressed store, hash-verified

74}
75
76func (e *encoder) encodeZeroValue(rv reflect.Value) (cbor.Value, error) {
77 switch rv.Kind() {
78 case reflect.Array:
79 return cbor.List{}, nil
80 case reflect.String:
81 return cbor.String(""), nil
82 case reflect.Bool:
83 return cbor.Bool(false), nil
84 case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
85 return cbor.EncodeFixedUint(0), nil
86 case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr:
87 return cbor.EncodeFixedUint(0), nil
88 case reflect.Float32, reflect.Float64:
89 return cbor.Float64(0), nil
90 case reflect.Interface, reflect.Ptr, reflect.Map, reflect.Slice:
91 return &cbor.Nil{}, nil
92 default:
93 return nil, &document.InvalidMarshalError{Message: fmt.Sprintf("unknown value type: %s", rv.String())}
94 }
95}
96
97func (e *encoder) encodeStruct(rv reflect.Value) (cbor.Value, error) {
98 if rv.CanInterface() && document.IsNoSerde(rv.Interface()) {

Callers 1

encodeMethod · 0.95

Calls 5

StringTypeAlias · 0.92
BoolTypeAlias · 0.92
EncodeFixedUintTypeAlias · 0.92
Float64TypeAlias · 0.92
StringMethod · 0.65

Tested by

no test coverage detected