timeutils

package
v0.0.0-...-8ff3c68 Latest Latest
Warning

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

Go to latest
Published: Aug 20, 2023 License: AGPL-3.0 Imports: 4 Imported by: 0

Documentation

Overview

Package idutils provides a set of helper functions to convert ids.

Functions in big_endian_converter.go help converting uint64 ids to TraceID and SpanID using big endian, and vice versa.

Index

Constants

This section is empty.

Variables

View Source
var Now = time.Now

Allows tests to override with deterministic value

Functions

func GetLocation

func GetLocation(location *string, layout *string) (*time.Location, error)

func ParseGotime

func ParseGotime(layout string, value any, location *time.Location) (time.Time, error)

func ParseStrptime

func ParseStrptime(layout string, value any, location *time.Location) (time.Time, error)

func SetTimestampYear

func SetTimestampYear(t time.Time) time.Time

SetTimestampYear sets the year of a timestamp to the current year. This is needed because year is missing from some time formats, such as rfc3164.

Types

type PolicyTicker

type PolicyTicker struct {
	Ticker     *time.Ticker
	OnTickFunc func()
	StopCh     chan struct{}
}

Implements TTicker and abstracts underlying time ticker's functionality to make usage simpler.

func (*PolicyTicker) OnTick

func (pt *PolicyTicker) OnTick()

func (*PolicyTicker) Start

func (pt *PolicyTicker) Start(d time.Duration)

func (*PolicyTicker) Stop

func (pt *PolicyTicker) Stop()

type TTicker

type TTicker interface {
	// start sets the frequency of the Ticker and starts the periodic calls to OnTick.
	Start(d time.Duration)
	// OnTick is called when the Ticker fires.
	OnTick()
	// Stop firing the Ticker.
	Stop()
}

TTicker interface allows easier testing of Ticker related functionality

Jump to

Keyboard shortcuts

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