// Package wrapper ... // // Description : wrapper ... // // Author : go_developer@163.com<白茶清欢> // // Date : 2023-05-05 14:20 package wrapper import ( "fmt" "math" ) // Uint ... // // Author : go_developer@163.com<白茶清欢> // // Date : 14:20 2023/5/5 type Uint uint64 // ToUint8 ... // // Author : go_developer@163.com<白茶清欢> // // Date : 14:21 2023/5/5 func (ui Uint) ToUint8() Uint8Result { res := Uint8Result{ Value: 0, Err: nil, } if ui > math.MaxUint8 || ui < 0 { res.Err = fmt.Errorf("uint8 should between 0 and %v", uint8(math.MaxUint8)) return res } res.Value = uint8(ui) return res } // ToUint16 ... // // Author : go_developer@163.com<白茶清欢> // // Date : 14:25 2023/5/5 func (ui Uint) ToUint16() Uint16Result { res := Uint16Result{ Value: 0, Err: nil, } if ui > math.MaxUint16 || ui < 0 { res.Err = fmt.Errorf("uint16 should between 0 and %v", uint16(math.MaxUint16)) return res } res.Value = uint16(ui) return res } // ToUint32 ... // // Author : go_developer@163.com<白茶清欢> // // Date : 14:25 2023/5/5 func (ui Uint) ToUint32() Uint32Result { res := Uint32Result{ Value: 0, Err: nil, } if ui > math.MaxUint32 || ui < 0 { res.Err = fmt.Errorf("uint32 should between 0 and %v", uint32(math.MaxUint32)) return res } res.Value = uint32(ui) return res } // ToUint64 ... // // Author : go_developer@163.com<白茶清欢> // // Date : 14:30 2023/5/5 func (ui Uint) ToUint64() Uint64Result { res := Uint64Result{ Value: 0, Err: nil, } if ui > math.MaxUint64 || ui < 0 { res.Err = fmt.Errorf("uint64 should between 0 and %v", uint64(math.MaxUint64)) } res.Value = uint64(ui) return res } // ToUint ... // // Author : go_developer@163.com<白茶清欢> // // Date : 14:31 2023/5/5 func (ui Uint) ToUint() UintResult { res := UintResult{ Value: 0, Err: nil, } if ui > math.MaxUint || ui < 0 { res.Err = fmt.Errorf("uint should between 0 and %v", uint(math.MaxUint)) return res } res.Value = uint(ui) return res } // ToString ... // // Author : go_developer@163.com<白茶清欢> // // Date : 14:32 2023/5/5 func (ui Uint) ToString() StringResult { uint64Val := ui.ToUint64() if nil != uint64Val.Err { return StringResult{ Value: "", Err: uint64Val.Err, } } return StringResult{ Value: fmt.Sprintf("%v", uint64Val), Err: nil, } }