feat: 迁移数字、时间操作
This commit is contained in:
86
op_number/number.go
Normal file
86
op_number/number.go
Normal file
@ -0,0 +1,86 @@
|
||||
// Package op_number ...
|
||||
//
|
||||
// Description : op_number ...
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 2025-10-14 10:14
|
||||
package op_number
|
||||
|
||||
import (
|
||||
"git.zhangdeman.cn/zhangdeman/op_type"
|
||||
"git.zhangdeman.cn/zhangdeman/wrapper/convert"
|
||||
"git.zhangdeman.cn/zhangdeman/wrapper/define"
|
||||
)
|
||||
|
||||
// ToNumber ...
|
||||
func ToNumber[InputType op_type.BaseType, ResultType op_type.Number](in InputType) define.NumberResult[ResultType] {
|
||||
var (
|
||||
res ResultType
|
||||
err error
|
||||
)
|
||||
if err = convert.ConvertAssign(&res, in); err != nil {
|
||||
return define.NumberResult[ResultType]{
|
||||
Err: err,
|
||||
Value: res,
|
||||
}
|
||||
}
|
||||
return define.NumberResult[ResultType]{
|
||||
Err: nil,
|
||||
Value: res,
|
||||
}
|
||||
}
|
||||
|
||||
// ToNumberPtr 数字指针
|
||||
func ToNumberPtr[InputType op_type.BaseType, ResultType op_type.Number](in InputType) define.NumberPtrResult[ResultType] {
|
||||
var (
|
||||
res define.NumberResult[ResultType]
|
||||
)
|
||||
res = ToNumber[InputType, ResultType](in)
|
||||
if nil != res.Err {
|
||||
return define.NumberPtrResult[ResultType]{
|
||||
Err: res.Err,
|
||||
Value: nil,
|
||||
}
|
||||
}
|
||||
return define.NumberPtrResult[ResultType]{
|
||||
Err: nil,
|
||||
Value: &res.Value,
|
||||
}
|
||||
}
|
||||
|
||||
// ToString 转换为字符串
|
||||
func ToString[InputType op_type.Number](in InputType) define.BaseValueResult[string] {
|
||||
var (
|
||||
err error
|
||||
res string
|
||||
)
|
||||
if err = convert.ConvertAssign(&res, in); err != nil {
|
||||
return define.BaseValueResult[string]{
|
||||
Value: res,
|
||||
Err: err,
|
||||
}
|
||||
}
|
||||
return define.BaseValueResult[string]{
|
||||
Value: res,
|
||||
Err: nil,
|
||||
}
|
||||
}
|
||||
|
||||
// ToStringPtr 字符串指针
|
||||
func ToStringPtr[InputType op_type.Number](in InputType) define.BaseValuePtrResult[string] {
|
||||
var (
|
||||
res define.BaseValueResult[string]
|
||||
)
|
||||
res = ToString[InputType](in)
|
||||
if nil != res.Err {
|
||||
return define.BaseValuePtrResult[string]{
|
||||
Err: res.Err,
|
||||
Value: nil,
|
||||
}
|
||||
}
|
||||
return define.BaseValuePtrResult[string]{
|
||||
Err: nil,
|
||||
Value: &res.Value,
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user