# Functions
AddJitter adds an amount of jitter between 0 and the given jitter to the given duration.
ComputeIPV4GatewayNetmask computes the subnet gateway and netmask for the gateway given the ipv4 cidr block for the ENI Gateways are provided in VPC subnets at base +1 (NOTE: from the base of the subnet, not the VPC base) https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html#vpc-sizing-ipv4.
NewRetriable creates a simple Retriable object.
NewRetriableError creates a simple RetriableError object.
NewSimpleBackoff creates a Backoff which ranges from min to max increasing by multiple each time.
ParseIPV4GatewayNetmask parses the cidr block to return the subnet gateway ip and the netmask.
RetryWithBackoff takes a Backoff and a function to call that returns an error If the error is nil then the function will no longer be called If the error is Retriable then that will be used to determine if it should be retried.
RetryWithBackoffCtx takes a context, a Backoff, and a function to call that returns an error If the context is done, nil will be returned If the error is nil then the function will no longer be called If the error is Retriable then that will be used to determine if it should be retried.
ZeroOrNil checks if the passed in interface is empty.
# Structs
DefaultRetriable is a simple struct that implements the Retriable.
DefaultRetriableError is a simple struct that implements the RetriableError.
ParseIPV4GatewayNetmaskError is used to indicate any error with parsing the IPV4 address and the netmask of the ENI.
SimpleBackoff implements a simple mechanism for backoff.
# Interfaces
Backoff defines the interface for a backoff.
Retriable definies the interface for retriable object.
RetriableError definies the interface for retriable error.