typeutil

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Mar 9, 2022 License: Apache-2.0 Imports: 6 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ZeroTime = time.Time{}

ZeroTime is a zero time.

Functions

func BoolToInt

func BoolToInt(b bool) int

BoolToInt converts bool to int.

func BoolToUint64

func BoolToUint64(b bool) uint64

BoolToUint64 converts bool to uint64.

func BytesToUint64

func BytesToUint64(b []byte) (uint64, error)

BytesToUint64 converts a byte slice to uint64.

func MaxUint64

func MaxUint64(a, b uint64) uint64

MaxUint64 returns the max value between two variables whose type are uint64.

func MinDuration

func MinDuration(a, b time.Duration) time.Duration

MinDuration returns the min value between two variables whose type are time.Duration.

func MinUint64

func MinUint64(a, b uint64) uint64

MinUint64 returns the min value between two variables whose type are uint64.

func ParseTimestamp

func ParseTimestamp(data []byte) (time.Time, error)

ParseTimestamp returns a timestamp for a given byte slice.

func SubTimeByWallClock

func SubTimeByWallClock(after time.Time, before time.Time) time.Duration

SubTimeByWallClock returns the duration between two different timestamps.

func Uint64ToBytes

func Uint64ToBytes(v uint64) []byte

Uint64ToBytes converts uint64 to a byte slice.

Types

type ByteSize

type ByteSize uint64

ByteSize is a retype uint64 for TOML and JSON.

func (ByteSize) MarshalJSON

func (b ByteSize) MarshalJSON() ([]byte, error)

MarshalJSON returns the size as a JSON string.

func (*ByteSize) UnmarshalJSON

func (b *ByteSize) UnmarshalJSON(text []byte) error

UnmarshalJSON parses a JSON string into the byte size.

func (*ByteSize) UnmarshalText

func (b *ByteSize) UnmarshalText(text []byte) error

UnmarshalText parses a Toml string into the byte size.

type Duration

type Duration struct {
	time.Duration
}

Duration is a wrapper of time.Duration for TOML and JSON.

func NewDuration

func NewDuration(duration time.Duration) Duration

NewDuration creates a Duration from time.Duration.

func (*Duration) MarshalJSON

func (d *Duration) MarshalJSON() ([]byte, error)

MarshalJSON returns the duration as a JSON string.

func (Duration) MarshalText

func (d Duration) MarshalText() ([]byte, error)

MarshalText returns the duration as a JSON string.

func (*Duration) UnmarshalJSON

func (d *Duration) UnmarshalJSON(text []byte) error

UnmarshalJSON parses a JSON string into the duration.

func (*Duration) UnmarshalText

func (d *Duration) UnmarshalText(text []byte) error

UnmarshalText parses a TOML string into the duration.

type StringSlice

type StringSlice []string

StringSlice is more friendly to json encode/decode

func (StringSlice) MarshalJSON

func (s StringSlice) MarshalJSON() ([]byte, error)

MarshalJSON returns the size as a JSON string.

func (*StringSlice) UnmarshalJSON

func (s *StringSlice) UnmarshalJSON(text []byte) error

UnmarshalJSON parses a JSON string into the byte size.

Jump to

Keyboard shortcuts

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