Documentation ¶
Index ¶
- Constants
- func FNV32(s string) uint32
- func FilterSimpleArgs(args []interface{}) (simpleArgs []interface{})
- func GetEnvVarBool(n string) (bool, bool)
- func GetEnvVarDuration(n string) (time.Duration, bool)
- func GetEnvVarInt(n string) (int, bool)
- func IsPaperTrade() bool
- func MaskKey(key string) string
- func MillisecondsJitter(d time.Duration, jitterInMilliseconds int) time.Duration
- func NewValidLimiter(r rate.Limit, b int) (*rate.Limiter, error)
- func Retry(ctx context.Context, attempts int, duration time.Duration, ...) (err error)
- func SafeMkdirAll(p string) error
- func SetEnvVarBool(n string, v *bool) bool
- func ShouldDelay(l *rate.Limiter, minInterval time.Duration) time.Duration
- func StringSliceContains(slice []string, needle string) bool
- func StringSplitByLength(s string, length int) (result []string)
- func TryLock(lock *sync.RWMutex) bool
- func TryRLock(lock *sync.RWMutex) bool
- func UnixMilli() int64
- func WriteJsonFile(p string, obj interface{}) error
- type Reonce
- type Response
- type RetryPredicator
- type TimeProfile
- type VolatileMemory
Constants ¶
View Source
const (
InfiniteRetry = 0
)
View Source
const Pointer = reflect.Pointer
Variables ¶
This section is empty.
Functions ¶
func FilterSimpleArgs ¶
func FilterSimpleArgs(args []interface{}) (simpleArgs []interface{})
FilterSimpleArgs filters out the simple type arguments int, string, bool, and []byte
func GetEnvVarBool ¶
func GetEnvVarInt ¶
func IsPaperTrade ¶
func IsPaperTrade() bool
func MillisecondsJitter ¶
func Retry ¶
func Retry(ctx context.Context, attempts int, duration time.Duration, fnToRetry func() error, errHandler func(error), predicators ...RetryPredicator) (err error)
Retry retrys the passed function for "attempts" times, if passed function return error. Setting attempts to zero means keep retrying.
func SafeMkdirAll ¶
func SetEnvVarBool ¶
func StringSliceContains ¶
func StringSplitByLength ¶
func WriteJsonFile ¶
Types ¶
type Response ¶
Response is wrapper for standard http.Response and provides more methods.
func NewResponse ¶
NewResponse is a wrapper of the http.Response instance, it reads the response body and close the file.
func (*Response) DecodeJSON ¶
type RetryPredicator ¶
type TimeProfile ¶
func StartTimeProfile ¶
func StartTimeProfile(args ...string) TimeProfile
func (*TimeProfile) Stop ¶
func (p *TimeProfile) Stop() time.Duration
func (*TimeProfile) StopAndLog ¶
func (p *TimeProfile) StopAndLog(f logFunction)
func (*TimeProfile) TilNow ¶
func (p *TimeProfile) TilNow() time.Duration
type VolatileMemory ¶
type VolatileMemory struct {
// contains filtered or unexported fields
}
func NewDetectorCache ¶
func NewDetectorCache() *VolatileMemory
func (*VolatileMemory) IsObjectFresh ¶
func (i *VolatileMemory) IsObjectFresh(obj interface{}, ttl time.Duration) bool
func (*VolatileMemory) IsTextFresh ¶
func (i *VolatileMemory) IsTextFresh(text string, ttl time.Duration) bool
Source Files ¶
Click to show internal directories.
Click to hide internal directories.