Documentation ¶
Index ¶
- func BigNumEqual(x, y *big.Int) bool
- func BytesToHashSlice(b []byte) []common.Hash
- func HashSliceToBytes(hashes []common.Hash) []byte
- func IncrOne(bytes []byte)
- func IsBlockForked(s, head *big.Int) bool
- func IsForkTransition(fork *uint64, parent *uint64, current uint64) bool
- func IsTimestampForked(s *uint64, head uint64) bool
- func NewUint64(val uint64) *uint64
- func TestSnowContext() *snow.Context
- func TimeToNewUint64(time time.Time) *uint64
- func Uint64PtrEqual(x, y *uint64) bool
- func Uint64ToTime(val *uint64) time.Time
- type AddressRange
- type BoundedWorkers
- type MeteredCache
- func (mc *MeteredCache) Del(k []byte)
- func (mc *MeteredCache) Get(dst, k []byte) []byte
- func (mc *MeteredCache) GetBig(dst, k []byte) []byte
- func (mc *MeteredCache) Has(k []byte) bool
- func (mc *MeteredCache) HasGet(dst, k []byte) ([]byte, bool)
- func (mc *MeteredCache) Set(k, v []byte)
- func (mc *MeteredCache) SetBig(k, v []byte)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BigNumEqual ¶
BigNumEqual returns true if x and y are equivalent ie. both nil or both contain the same value.
func BytesToHashSlice ¶
BytesToHashSlice packs [b] into a slice of hash values with zero padding to the right if the length of b is not a multiple of 32.
func HashSliceToBytes ¶
HashSliceToBytes serializes a []common.Hash into a tightly packed byte array.
func IsBlockForked ¶
IsBlockForked returns whether a fork scheduled at block s is active at the given head block. Note: [s] and [head] can be either a block number or a block timestamp.
func IsForkTransition ¶
IsForkTransition returns true if [fork] activates during the transition from [parent] to [current]. Taking [parent] as a pointer allows for us to pass nil when checking forks that activate during genesis. Note: this works for both block number and timestamp activated forks.
func IsTimestampForked ¶
IsTimestampForked returns whether a fork scheduled at timestamp s is active at the given head timestamp. Whilst this method is the same as isBlockForked, they are explicitly separate for clearer reading.
func TestSnowContext ¶
func TimeToNewUint64 ¶
func Uint64PtrEqual ¶
Uint64PtrEqual returns true if x and y pointers are equivalent ie. both nil or both contain the same value.
func Uint64ToTime ¶
Types ¶
type AddressRange ¶
AddressRange represents a continuous range of addresses
type BoundedWorkers ¶
type BoundedWorkers struct {
// contains filtered or unexported fields
}
func NewBoundedWorkers ¶
func NewBoundedWorkers(max int) *BoundedWorkers
NewBoundedWorkers returns an instance of BoundedWorkers that will spawn up to [max] goroutines.
func (*BoundedWorkers) Execute ¶
func (b *BoundedWorkers) Execute(f func())
Execute the given function on an existing goroutine waiting for more work, a new goroutine, or return if the context is canceled.
Execute must not be called after Wait, otherwise it might panic.
func (*BoundedWorkers) Wait ¶
func (b *BoundedWorkers) Wait() int
Wait returns after all enqueued work finishes and all goroutines to exit. Wait returns the number of workers that were spawned during the run.
Wait can only be called after ALL calls to [Execute] have returned.
It is safe to call Wait multiple times but not safe to call [Execute] after [Wait] has been called.
type MeteredCache ¶
MeteredCache wraps *fastcache.Cache and periodically pulls stats from it.
func NewMeteredCache ¶
func NewMeteredCache(size int, namespace string, updateFrequency uint64) *MeteredCache
NewMeteredCache returns a new MeteredCache that will update stats to the provided namespace once per each [updateFrequency] operations. Note: if [updateFrequency] is passed as 0, it will be treated as 1.
func (*MeteredCache) Del ¶
func (mc *MeteredCache) Del(k []byte)
func (*MeteredCache) Get ¶
func (mc *MeteredCache) Get(dst, k []byte) []byte
func (*MeteredCache) GetBig ¶
func (mc *MeteredCache) GetBig(dst, k []byte) []byte
func (*MeteredCache) Has ¶
func (mc *MeteredCache) Has(k []byte) bool
func (*MeteredCache) Set ¶
func (mc *MeteredCache) Set(k, v []byte)
func (*MeteredCache) SetBig ¶
func (mc *MeteredCache) SetBig(k, v []byte)