tools

package
v1.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 8, 2022 License: GPL-3.0 Imports: 18 Imported by: 5

Documentation

Index

Constants

View Source
const (
	B  Byte = 1
	KB      = 1024 * B
	MB      = 1024 * KB
	GB      = 1024 * MB
	TB      = 1024 * GB
)
View Source
const (
	SecondsPerDay  = 24 * 60 * 60
	SecondsForever = SecondsPerDay * 365 * 10 //10年(int32~(2020+17))
)

Variables

View Source
var (
	TimeZero       = Unix(0, 0)
	TimeOffset     int64
	TimeOffsetPath = "./.timeoffset"
)

Functions

func BeginningOfTheDay

func BeginningOfTheDay(t time.Time) time.Time

func Date

func Date(year int, month time.Month, day, hour, min, sec, nsec int) time.Time

func DiffDay

func DiffDay(t1, t2 time.Time) int32

func Distance

func Distance(p0, p1 Vec3f) float64

func EndingOfTheDay

func EndingOfTheDay(t time.Time) time.Time

func GenRSAKey added in v1.2.20

func GenRSAKey() error

func GetNextHour

func GetNextHour() time.Time

func GetNextMinute

func GetNextMinute() time.Time

func GetNextTime

func GetNextTime(hour, minute int) time.Time

func GetTimeWithoutHours

func GetTimeWithoutHours(t time.Time) time.Time

func IsInvalidTime

func IsInvalidTime(data time.Time) bool

func IsSameDay

func IsSameDay(time1 time.Time, time2 time.Time) bool

func Magnitude

func Magnitude(v Vec3f) float64

func Max added in v1.2.16

func Max(x, y int) int

func Maxi32 added in v1.1.13

func Maxi32(x, y int32) int32

func Maxi64 added in v1.1.13

func Maxi64(x, y int64) int64

func MidOfTheDay

func MidOfTheDay(t time.Time) time.Time

func Milliseconds

func Milliseconds() int64

func Min added in v1.2.16

func Min(x, y int) int

func Mini64 added in v1.1.13

func Mini64(x, y int64) int64

func ModifyTimeOffset added in v1.1.4

func ModifyTimeOffset(add int64)

func MondayBeginWeek

func MondayBeginWeek() int64

func NextIntervalTime

func NextIntervalTime(t1 time.Time, intervalSeconds int) time.Time

以当天开始时间为初始值 间隔 intervalSeconds触发一次,返回下次触发的时间

func NextMondayBeginWeek

func NextMondayBeginWeek() int64

func Now

func Now() time.Time

func NowTime added in v1.1.13

func NowTime() int64

func Probability

func Probability(ratio int) bool

简单的概率ratio 1-100

func Probability10000

func Probability10000(ratio int) bool

简单的概率ratio 1-10000

func RSAPrivateDecrypt added in v1.2.20

func RSAPrivateDecrypt(key, ciphertext []byte) ([]byte, error)

RSAPrivateDecrypt 私钥解密

func RSAPublicKeyEncrypt added in v1.2.20

func RSAPublicKeyEncrypt(key, data []byte) ([]byte, error)

RSAPublicKeyEncrypt 公钥加密

func Randx_y

func Randx_y(x, y int) int

左闭右开 [x,y)

func Seconds

func Seconds() int64

func SqrDistance

func SqrDistance(p0, p1 Vec3f) float64

func SqrMagnitude

func SqrMagnitude(v Vec3f) float64

func TimeFormat

func TimeFormat(data time.Time) string

func TimeParse

func TimeParse(data string) time.Time

func TimeParseFormat

func TimeParseFormat(layout, value string) (time.Time, error)

func Try

func Try(fn func(), catch ...func(ex interface{}))

func UUID

func UUID() string

func Unix

func Unix(sec int64, nsec int64) time.Time

func Valid

func Valid(v Vec3f) bool

func WeightSelect added in v1.2.21

func WeightSelect(len int, weightFn func(index int) int) int

func XUID added in v1.2.13

func XUID() string

Types

type Byte added in v1.2.21

type Byte = uint64

type EnumIdx added in v1.2.0

type EnumIdx struct {
	PackageName string
	Enum2Name   map[int32]string
	// contains filtered or unexported fields
}

type GetProtoByName added in v1.2.0

type GetProtoByName func(name string) (interface{}, bool)

type ProtoIndex added in v1.2.0

type ProtoIndex struct {
	// contains filtered or unexported fields
}

func NewProtoIndex added in v1.2.0

func NewProtoIndex(f GetProtoByName, enum EnumIdx) *ProtoIndex

func (*ProtoIndex) FindMsgByName added in v1.2.0

func (s *ProtoIndex) FindMsgByName(msgName string) (proto.Message, bool)

func (*ProtoIndex) MsgIdToName added in v1.2.0

func (s *ProtoIndex) MsgIdToName(msgId int32) (msgName string, ok bool)

func (*ProtoIndex) MsgName added in v1.2.0

func (s *ProtoIndex) MsgName(msg proto.Message) string

func (*ProtoIndex) MsgNameToId added in v1.2.0

func (s *ProtoIndex) MsgNameToId(msgName string) (msgId int32, ok bool)

func (*ProtoIndex) UnmarshalPbMsg added in v1.2.0

func (s *ProtoIndex) UnmarshalPbMsg(msgId int32, data []byte) proto.Message

type Vec3f

type Vec3f struct {
	X float64 `json:"x"`
	Y float64 `json:"y"`
	Z float64 `json:"z"`
}

func Add

func Add(l, r Vec3f) Vec3f

func Div

func Div(v Vec3f, d float64) Vec3f

func Invalid

func Invalid() Vec3f

func Mul

func Mul(v Vec3f, d float64) Vec3f

func Sub

func Sub(l, r Vec3f) Vec3f

func (*Vec3f) Add

func (s *Vec3f) Add(v Vec3f)

func (*Vec3f) String

func (s *Vec3f) String() string

func (*Vec3f) Sub

func (s *Vec3f) Sub(v Vec3f)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL