type BackOffContext … type backOffContext … // WithContext returns a BackOffContext with context ctx // // ctx must not be nil func WithContext(b BackOff, ctx context.Context) BackOffContext { … } func getContext(b BackOff) context.Context { … } func (b *backOffContext) Context() context.Context { … } func (b *backOffContext) NextBackOff() time.Duration { … }