Versions in this module Expand all Collapse all v1 v1.0.0 Sep 10, 2025 Changes in this version + type Constant struct + func NewConstant(d time.Duration, opts ...Option) *Constant + func (c *Constant) Next() (time.Duration, bool) + func (c *Constant) Reset() + type Decorrelated struct + func NewDecorrelated(initial time.Duration, factor float64, opts ...Option) *Decorrelated + func (dcr *Decorrelated) Next() (time.Duration, bool) + func (dcr *Decorrelated) Reset() + type EqualJitter struct + func (EqualJitter) Apply(d time.Duration, r *rand.Rand) time.Duration + type Exponential struct + func NewExponential(base time.Duration, factor float64, opts ...Option) *Exponential + func (e *Exponential) Next() (time.Duration, bool) + func (e *Exponential) Reset() + type FullJitter struct + func (FullJitter) Apply(d time.Duration, r *rand.Rand) time.Duration + type Jitter interface + Apply func(d time.Duration, r *rand.Rand) time.Duration + type NoneJitter struct + func (nj *NoneJitter) Apply(d time.Duration, _ *rand.Rand) time.Duration + type Option func(*options) + func WithJitter() Option + func WithJitterStrategy(j Jitter) Option + func WithMaxElapsed(d time.Duration) Option + func WithMaxInterval(d time.Duration) Option + func WithMaxRetries(v int) Option + func WithMinInterval(d time.Duration) Option + func WithRandSource(s rand.Source) Option + type Sequence interface + Next func() (time.Duration, bool) + Reset func()