# Functions
GetCausePermanentError returns cause of a permanent error.
Permanent makes the given error a permanent failure that stops the Retry loop immediately.
Retry the given operation until it succeeds, has a permanent failure or times out.
RetryWithContext retries the given operation until it succeeds, has a permanent failure or times out.
WithTimeoutContext retries the given operation with exponential backoff until it succeeds.
WithTimeoutContextAndInterval acts the same as WithTimeoutContext but with constant backoff.
# Type aliases
Func is a function to be performed with retry logic.