Import path:
gitlab.soludian.com/soludian/fountain/libs/base/num_util
num_util
import "gitlab.soludian.com/soludian/fountain/libs/base/num_util"Package num_util provide math(int, number) util functions. eg: convert, math calc, random
Index
- func CompFloat[T com_def.Float](first, second T, op string) (ok bool)
- func CompInt[T com_def.Xint](first, second T, op string) (ok bool)
- func CompInt64(first, second int64, op string) bool
- func CompValue[T com_def.XintOrFloat](first, second T, op string) (ok bool)
- func Compare(first, second any, op string) bool
- func DataSize(size uint64) string
- func ElapsedTime(startTime time.Time) string
- func Float(in any) (float64, error)
- func FloatOr(in any, defVal float64) float64
- func FloatOrDefault(in any, defVal float64) float64
- func FloatOrErr(in any) (float64, error)
- func FloatOrPanic(in any) float64
- func GenerateMessageID() int64
- func GreaterOr[T com_def.XintOrFloat](val, min, defVal T) T
- func GteOr[T com_def.XintOrFloat](val, min, defVal T) T
- func HowLongAgo(sec int64) string
- func InRange[T com_def.IntOrFloat](val, min, max T) bool
- func InUintRange[T com_def.Uint](val, min, max T) bool
- func Int(in any) (int, error)
- func Int64(in any) (int64, error)
- func Int64Or(in any, defVal int64) int64
- func Int64OrDefault(in any, defVal int64) int64
- func Int64OrErr(in any) (int64, error)
- func IntOr(in any, defVal int) int
- func IntOrDefault(in any, defVal int) int
- func IntOrErr(in any) (iVal int, err error)
- func IntOrPanic(in any) int
- func IsNumeric(c byte) bool
- func LessOr[T com_def.XintOrFloat](val, max, devVal T) T
- func LteOr[T com_def.XintOrFloat](val, max, devVal T) T
- func Max[T com_def.XintOrFloat](x, y T) T
- func MaxFloat(x, y float64) float64
- func MaxI64(x, y int64) int64
- func MaxInt(x, y int) int
- func Min[T com_def.XintOrFloat](x, y T) T
- func MustFloat(in any) float64
- func MustInt(in any) int
- func MustInt64(in any) int64
- func MustString(val any) string
- func MustUint(in any) uint64
- func OrElse[T com_def.XintOrFloat](val, defVal T) T
- func OutRange[T com_def.IntOrFloat](val, min, max T) bool
- func Percent(val, total int) float64
- func QuietFloat(in any) float64
- func QuietInt(in any) int
- func QuietInt64(in any) int64
- func QuietString(val any) string
- func QuietUint(in any) uint64
- func SafeFloat(in any) float64
- func SafeInt(in any) int
- func SafeInt64(in any) int64
- func SafeString(val any) string
- func SafeUint(in any) uint64
- func StrInt(s string) int
- func StrIntOr(s string, defVal int) int
- func String(val any) string
- func StringOr(val any, defVal string) string
- func StringOrDefault(val any, defVal string) string
- func StringOrErr(val any) (string, error)
- func StringOrPanic(val any) string
- func SwapMax[T com_def.XintOrFloat](x, y T) (T, T)
- func SwapMaxI64(x, y int64) (int64, int64)
- func SwapMaxInt(x, y int) (int, int)
- func SwapMin[T com_def.XintOrFloat](x, y T) (T, T)
- func ToFloat(in any) (f64 float64, err error)
- func ToFloatWithFunc(in any, usrFn ToFloatFunc) (f64 float64, err error)
- func ToInt(in any) (iVal int, err error)
- func ToInt64(in any) (i64 int64, err error)
- func ToInt64WithFunc(in any, usrFn ToInt64Func) (i64 int64, err error)
- func ToIntWithFunc(in any, usrFn ToIntFunc) (iVal int, err error)
- func ToString(val any) (string, error)
- func ToStringWithFunc(in any, usrFn com_def.ToStringFunc) (str string, err error)
- func ToUint(in any) (u64 uint64, err error)
- func ToUintWithFunc(in any, usrFn ToUintFunc) (u64 uint64, err error)
- func TryToString(val any, defaultAsErr bool) (str string, err error)
- func Uint(in any) (uint64, error)
- func UintOr(in any, defVal uint64) uint64
- func UintOrDefault(in any, defVal uint64) uint64
- func UintOrErr(in any) (uint64, error)
- func ZeroOr[T com_def.XintOrFloat](val, defVal T) T
- type ToFloatFunc
- type ToInt64Func
- type ToIntFunc
- type ToUintFunc
func CompFloat
func CompFloat[T com_def.Float](first, second T, op string) (ok bool)CompFloat compare float64,float32 value. returns `first op(=,!=,<,<=,>,>=) second`
func CompInt
func CompInt[T com_def.Xint](first, second T, op string) (ok bool)CompInt compare all intX,uintX type value. returns `first op(=,!=,<,<=,>,>=) second`
func CompInt64
func CompInt64(first, second int64, op string) boolCompInt64 compare int64 value. returns `first op(=,!=,<,<=,>,>=) second`
func CompValue
func CompValue[T com_def.XintOrFloat](first, second T, op string) (ok bool)CompValue compare intX,uintX,floatX value. returns `first op(=,!=,<,<=,>,>=) second`
func Compare
func Compare(first, second any, op string) boolCompare any intX,floatX value by given op. returns `first op(=,!=,<,<=,>,>=) second`
Usage:
num_util.Compare(2, 3, ">") // false
num_util.Compare(2, 1.3, ">") // true
num_util.Compare(2.2, 1.3, ">") // true
num_util.Compare(2.1, 2, ">") // truefunc DataSize
func DataSize(size uint64) stringDataSize format bytes number friendly. eg: 1024 => 1KB, 1024*1024 => 1MB
Usage:
file, err := os.Open(path)
fl, err := file.Stat()
fmtSize := DataSize(fl.Size())func ElapsedTime
func ElapsedTime(startTime time.Time) stringElapsedTime tính toán thời gian trôi qua thời gian chạy đơn vị ms (mili giây)
Deprecated: use time_util.ElapsedTime()
func Float
func Float(in any) (float64, error)Float convert value to float64, return error on failed
func FloatOr
func FloatOr(in any, defVal float64) float64FloatOr convert value to float64, will return default value on error
func FloatOrDefault
func FloatOrDefault(in any, defVal float64) float64FloatOrDefault convert value to float64, will return default value on error
func FloatOrErr
func FloatOrErr(in any) (float64, error)FloatOrErr convert value to float64, return error on failed
func FloatOrPanic
func FloatOrPanic(in any) float64FloatOrPanic convert value to float64, will panic on error
func GenerateMessageID
func GenerateMessageID() int64GenerateMessageID func
func GreaterOr
func GreaterOr[T com_def.XintOrFloat](val, min, defVal T) TGreaterOr return val on val > max, else return default value.
Example:
GreaterOr(23, 0, 2) // 23
GreaterOr(0, 0, 2) // 2func GteOr
func GteOr[T com_def.XintOrFloat](val, min, defVal T) TGteOr return val on val >= max, else return default value.
Example:
GteOr(23, 0, 2) // 23
GteOr(0, 0, 2) // 0func HowLongAgo
func HowLongAgo(sec int64) stringHowLongAgo format a seconds, get how lang ago. eg: 1 day, 1 week
func InRange
func InRange[T com_def.IntOrFloat](val, min, max T) boolInRange check if val in int/float range [min, max]
func InUintRange
func InUintRange[T com_def.Uint](val, min, max T) boolInUintRange check if val in unit range [min, max]
func Int
func Int(in any) (int, error)Int convert value to int
func Int64
func Int64(in any) (int64, error)Int64 convert value to int64, return error on failed
func Int64Or
func Int64Or(in any, defVal int64) int64Int64Or convert value to int64, return default val on failed
func Int64OrDefault
func Int64OrDefault(in any, defVal int64) int64Int64OrDefault convert value to int64, return default val on failed
func Int64OrErr
func Int64OrErr(in any) (int64, error)Int64OrErr convert value to int64, return error on failed
func IntOr
func IntOr(in any, defVal int) intIntOr convert value to int, return defaultVal on failed
func IntOrDefault
func IntOrDefault(in any, defVal int) intIntOrDefault convert value to int, return defaultVal on failed
func IntOrErr
func IntOrErr(in any) (iVal int, err error)IntOrErr convert value to int, return error on failed
func IntOrPanic
func IntOrPanic(in any) intIntOrPanic convert value to int, will panic on error
func IsNumeric
func IsNumeric(c byte) boolIsNumeric returns true if the given character is a numeric, otherwise false.
func LessOr
func LessOr[T com_def.XintOrFloat](val, max, devVal T) TLessOr return val on val < max, else return default value.
Example:
LessOr(11, 10, 1) // 1
LessOr(2, 10, 1) // 2
LessOr(10, 10, 1) // 1func LteOr
func LteOr[T com_def.XintOrFloat](val, max, devVal T) TLteOr return val on val <= max, else return default value.
Example:
LteOr(11, 10, 1) // 11
LteOr(2, 10, 1) // 2
LteOr(10, 10, 1) // 10func Max
func Max[T com_def.XintOrFloat](x, y T) TMax compare two value and return max value
func MaxFloat
func MaxFloat(x, y float64) float64MaxFloat compare and return max value
func MaxI64
func MaxI64(x, y int64) int64MaxI64 compare and return max value
func MaxInt
func MaxInt(x, y int) intMaxInt compare and return max value
func Min
func Min[T com_def.XintOrFloat](x, y T) TMin compare two value and return max value
func MustFloat
func MustFloat(in any) float64MustFloat convert value to float64, will panic on error
func MustInt
func MustInt(in any) intMustInt convert value to int, will panic on error
func MustInt64
func MustInt64(in any) int64MustInt64 convert value to int64, will panic on error
func MustString
func MustString(val any) stringMustString convert intX/floatX value to string, will panic on error
func MustUint
func MustUint(in any) uint64MustUint convert any to uint, will panic on error
func OrElse
func OrElse[T com_def.XintOrFloat](val, defVal T) TOrElse return default value on val is zero, else return val
func OutRange
func OutRange[T com_def.IntOrFloat](val, min, max T) boolOutRange check if val not in int/float range [min, max]
func Percent
func Percent(val, total int) float64Percent returns a values percent of the total
func QuietFloat
func QuietFloat(in any) float64QuietFloat convert value to float64, will ignore error. alias of SafeFloat
func QuietInt
func QuietInt(in any) intQuietInt convert value to int, will ignore error
func QuietInt64
func QuietInt64(in any) int64QuietInt64 convert value to int64, will ignore error
func QuietString
func QuietString(val any) stringQuietString convert intX/floatX value to string, other type convert by fmt.Sprint
func QuietUint
func QuietUint(in any) uint64QuietUint convert any to uint, will ignore error
func SafeFloat
func SafeFloat(in any) float64SafeFloat convert value to float64, will ignore error
func SafeInt
func SafeInt(in any) intSafeInt convert value to int, will ignore error
func SafeInt64
func SafeInt64(in any) int64SafeInt64 convert value to int64, will ignore error
func SafeString
func SafeString(val any) stringSafeString convert intX/floatX value to string, other type convert by fmt.Sprint
func SafeUint
func SafeUint(in any) uint64SafeUint convert any to uint, will ignore error
func StrInt
func StrInt(s string) intStrInt convert.
func StrIntOr
func StrIntOr(s string, defVal int) intStrIntOr convert string to int, return default val on failed
func String
func String(val any) stringString convert intX/floatX value to string, other type convert by fmt.Sprint
func StringOr
func StringOr(val any, defVal string) stringStringOr convert intX/floatX value to string, will return default value on error
func StringOrDefault
func StringOrDefault(val any, defVal string) stringStringOrDefault convert intX/floatX value to string, will return default value on error
func StringOrErr
func StringOrErr(val any) (string, error)StringOrErr convert intX/floatX value to string, return error on failed
func StringOrPanic
func StringOrPanic(val any) stringStringOrPanic convert intX/floatX value to string, will panic on error
func SwapMax
func SwapMax[T com_def.XintOrFloat](x, y T) (T, T)SwapMax compare and always return [max, min] value
func SwapMaxI64
func SwapMaxI64(x, y int64) (int64, int64)SwapMaxI64 compare and return max, min value
func SwapMaxInt
func SwapMaxInt(x, y int) (int, int)SwapMaxInt compare and return max, min value
func SwapMin
func SwapMin[T com_def.XintOrFloat](x, y T) (T, T)SwapMin compare and always return [min, max] value
func ToFloat
func ToFloat(in any) (f64 float64, err error)ToFloat convert value to float64, return error on failed
func ToFloatWithFunc
func ToFloatWithFunc(in any, usrFn ToFloatFunc) (f64 float64, err error)ToFloatWithFunc convert value to float64, will call usrFn if value type not supported.
func ToInt
func ToInt(in any) (iVal int, err error)ToInt convert value to int, return error on failed
func ToInt64
func ToInt64(in any) (i64 int64, err error)ToInt64 convert value to int64, return error on failed
func ToInt64WithFunc
func ToInt64WithFunc(in any, usrFn ToInt64Func) (i64 int64, err error)ToInt64WithFunc convert value to int64, will call usrFn on value type not supported.
func ToIntWithFunc
func ToIntWithFunc(in any, usrFn ToIntFunc) (iVal int, err error)ToIntWithFunc convert value to int, will call usrFn on value type not supported.
func ToString
func ToString(val any) (string, error)ToString convert intX/floatX value to string, return error on failed
func ToStringWithFunc
func ToStringWithFunc(in any, usrFn com_def.ToStringFunc) (str string, err error)ToStringWithFunc try convert intX/floatX value to string, will call usrFn if value type not supported.
if defaultAsErr is False, will use fmt.Sprint convert other type
func ToUint
func ToUint(in any) (u64 uint64, err error)ToUint convert value to uint, return error on failed
func ToUintWithFunc
func ToUintWithFunc(in any, usrFn ToUintFunc) (u64 uint64, err error)ToUintWithFunc convert value to uint, will call usrFn on value type not supported.
func TryToString
func TryToString(val any, defaultAsErr bool) (str string, err error)TryToString try convert intX/floatX value to string
if defaultAsErr is False, will use fmt.Sprint convert other type
func Uint
func Uint(in any) (uint64, error)Uint convert any to uint, return error on failed
func UintOr
func UintOr(in any, defVal uint64) uint64UintOr convert any to uint, return default val on failed
func UintOrDefault
func UintOrDefault(in any, defVal uint64) uint64UintOrDefault convert any to uint, return default val on failed
func UintOrErr
func UintOrErr(in any) (uint64, error)UintOrErr convert value to uint, return error on failed
func ZeroOr
func ZeroOr[T com_def.XintOrFloat](val, defVal T) TZeroOr return default value on val is zero, else return val
type ToFloatFunc
type ToFloatFunc func(any) (float64, error)type ToInt64Func
type ToInt64Func func(any) (int64, error)type ToIntFunc
type ToIntFunc func(any) (int, error)type ToUintFunc
type ToUintFunc func(any) (uint64, error)Generated by gomarkdoc