# Functions
Do retries the given function until it succeeds or the retry limit is reached.
MarkRetryable marks error as retryable by wrapping it in RetryableError.
NewConstantBackoff returns a pointer to a new instance of ConstantBackoff struct, which implements Backoff interface.
NewExponentialBackoff returns a pointer to a new instance of ExponentialBackoff struct, which implements Backoff interface.
NewLinearBackoff returns a pointer to a new instance of ConstantBackoff struct, which implements Backoff interface.
WithBackoff returns an Option function that sets the backoff strategy for retry logic.
WithLogger specifies the logger to be used for logging within the retry logic.
WithMaxAttempts is an Option function that sets the maximum number of attempts for a given operation.
# Constants
ErrRetryLimitReached is an error indicating that the retry limit has been reached.
# Structs
ConstantBackoff implements Backoff interface where the backoff is constant.
ExponentialBackoff implements Backoff interface where the backoff grows exponentially based on retry count.
LinearBackoff implements Backoff where the backoff grows linearly based on retry count.
Options represents the configuration options for retry logic.
RetryableError represents an error that can be retried.
# Interfaces
Backoff represents backoff logic.
# Type aliases
Error represents package level errors.
Option is a function type that modifies the Options struct.
StaticBackoff represents a fixed duration as a backoff strategy.