Namespace MarymoorStudios.Core
Classes
- BucketRateLimiter
A leaky bucket rate limiter.
- ClockResolution
Controls the resolution of the system clock.
- Contract
Used to check contract invariants in either Debug-only (Assert) or Debug and Release (Requires, Invariant, etc.). Contract failures will attempt to break into the debugger, will trace the error, and will throw a ContractViolationException.
- Crc32
CRC Generator.
- GcNotify
Notifies when garbage collection occurs.
- MemoryPool<T>
A pool of memory blocks.
- MurmurHash3
MurmurHash3 for x64 (Little Endian).
- SpanBase58Extensions
Base58 Encoder.
- WaitHandleExtensions
Extensions to the standard WaitHandle.
Structs
- NumericExtensions.RangeEnumerator<T>
Non-allocating enumerator for numbers.
- OwnedMem<T>
A capability for the exclusive ownership rights to an underlying memory.
- ReadLockScope
A read-lock scope for use with ReaderWriterLockSlim.
- UpgradableLockScope
An upgradable read-lock scope for use with ReaderWriterLockSlim.
- WriteLockScope
A write-lock scope for use with ReaderWriterLockSlim.
Interfaces
- IStructEnumerable<T, TEnumerator>
Exposes the enumerator, which supports a simple iteration over a collection of a specified type.
- IStructEnumeratorActivator<T, TInit, TEnumerator>
Non-allocating enumerator for numbers.
- IStructEnumerator<T, TEnumerator>
Non-allocating enumerator for numbers.
Enums
- BucketRateLimiter.ResetBehavior
Affects how the number of tokens is impacted by a reset.