Table of Contents

Namespace Tlabs.Misc

Classes

Array2DRowSlice<T>

Row slice of an 2D array of T.

AsyncExtensions

Async (task) extension utils

BasicCache<K, T>

Basic cache supporting concurrent access with balanced read/write locking.

BufferedReader

Buffered TextReader.

ByteArrayExt

Extension methods for unmanged byte[] access.

DictionaryList<K, T>

Dictionary of IEnumerable<T> of key type K.

DistinctLambdaExtension

Distinct with isEqual lambda extension.

EnumerableUtil

Enumerable utils.

ExecContext<T>

Execution context to contain a thread-local reference value of T

GenericEqualityComp<T>

Generic impl. of a IEqualityComparer<T>

ICollectionExt

Extension methods for generic collection interfaces.

LookupCache<K, T>

Cache optimized for concurrent lock free lookups (read).

LookupDictionary<K, T>

Look-up dictionary.

OSInfo

Operating system info

PropertyExt

Extension methods for accessing properties of a IDictionary<TKey, TValue> with K is string and T is object.

ReadStreamBuffer

OBSOLETE Stream reader that buffers data as ReadOnlySequence<T>

Safe

Miscelaneous helpers to enhance reliability of resource allocation, error handling, etc..

SegmentSequenceBuffer

Buffer that efficiently grows or shrinks in size with minimal allocation and data copying.

Singleton<T>

Generic singleton class

StreamSegmentReader

Segment reader from a Stream

Structs

TimingWatch

Simplified Stopwatch struct.

Interfaces

ICache<K, T>

Cache.

ICloneable<T>

Supports cloning, which creates a new instance of a class with the same value

IDictionaryList<K, T>

Dictionary of IEnumerable<T> of key type K.

IReadOnlyDictList<K, T>

Read-only dictionary of IEnumerable<T> of key type K.

ISegmentReader

Buffer segment reader interface

IStringConvertible<T>

Interface of an object that implements ToString(T).

Enums

BOOL

BOOL enum.