1.新增yml文件支持

2.优化网络模块日志
3.新增类型转换函数
This commit is contained in:
duanhf2012
2024-10-09 17:38:44 +08:00
parent f600c2a573
commit c72f2e4582
14 changed files with 391 additions and 138 deletions

View File

@@ -2,10 +2,10 @@ package smath
import (
"github.com/duanhf2012/origin/v2/log"
"github.com/duanhf2012/origin/v2/util/typedef"
"github.com/duanhf2012/origin/v2/util/typ"
)
func Max[NumType typedef.Number](number1 NumType, number2 NumType) NumType {
func Max[NumType typ.Number](number1 NumType, number2 NumType) NumType {
if number1 > number2 {
return number1
}
@@ -13,7 +13,7 @@ func Max[NumType typedef.Number](number1 NumType, number2 NumType) NumType {
return number2
}
func Min[NumType typedef.Number](number1 NumType, number2 NumType) NumType {
func Min[NumType typ.Number](number1 NumType, number2 NumType) NumType {
if number1 < number2 {
return number1
}
@@ -21,7 +21,7 @@ func Min[NumType typedef.Number](number1 NumType, number2 NumType) NumType {
return number2
}
func Abs[NumType typedef.Signed|typedef.Float](Num NumType) NumType {
func Abs[NumType typ.Signed | typ.Float](Num NumType) NumType {
if Num < 0 {
return -1 * Num
}
@@ -29,7 +29,7 @@ func Abs[NumType typedef.Signed|typedef.Float](Num NumType) NumType {
return Num
}
func AddSafe[NumType typedef.Number](number1 NumType, number2 NumType) (NumType, bool) {
func AddSafe[NumType typ.Number](number1 NumType, number2 NumType) (NumType, bool) {
ret := number1 + number2
if number2 > 0 && ret < number1 {
log.Stack("Calculation overflow", log.Any("number1", number1), log.Any("number2", number2))
@@ -42,7 +42,7 @@ func AddSafe[NumType typedef.Number](number1 NumType, number2 NumType) (NumType,
return ret, true
}
func SubSafe[NumType typedef.Number](number1 NumType, number2 NumType) (NumType, bool) {
func SubSafe[NumType typ.Number](number1 NumType, number2 NumType) (NumType, bool) {
ret := number1 - number2
if number2 > 0 && ret > number1 {
log.Stack("Calculation overflow", log.Any("number1", number1), log.Any("number2", number2))
@@ -55,7 +55,7 @@ func SubSafe[NumType typedef.Number](number1 NumType, number2 NumType) (NumType,
return ret, true
}
func MulSafe[NumType typedef.Number](number1 NumType, number2 NumType) (NumType, bool) {
func MulSafe[NumType typ.Number](number1 NumType, number2 NumType) (NumType, bool) {
ret := number1 * number2
if number1 == 0 || number2 == 0 {
return ret, true
@@ -69,18 +69,17 @@ func MulSafe[NumType typedef.Number](number1 NumType, number2 NumType) (NumType,
return ret, true
}
func Add[NumType typedef.Number](number1 NumType, number2 NumType) NumType {
func Add[NumType typ.Number](number1 NumType, number2 NumType) NumType {
ret, _ := AddSafe(number1, number2)
return ret
}
func Sub[NumType typedef.Number](number1 NumType, number2 NumType) NumType {
func Sub[NumType typ.Number](number1 NumType, number2 NumType) NumType {
ret, _ := SubSafe(number1, number2)
return ret
}
func Mul[NumType typedef.Number](number1 NumType, number2 NumType) NumType {
func Mul[NumType typ.Number](number1 NumType, number2 NumType) NumType {
ret, _ := MulSafe(number1, number2)
return ret
}