/Omnifactotum

Omnifactotum is the ultimate solution for .NET developers who want to streamline their development process. It provides its own helper and functional classes and interfaces as well as the extension methods for the standard .NET types. It's the perfect way to reduce errors and save time, allowing developers to focus on creating quality code.

Primary LanguageC#MIT LicenseMIT

Omnifactotum

Omnifactotum is the ultimate solution for .NET developers who want to streamline their development process. It provides its own helper and functional classes and interfaces as well as the extension methods for the standard .NET types. Omnifactotum is compatible with the older and newer .NET versions. It's the perfect way to reduce errors and save time, allowing developers to focus on creating quality code.

Factotum is a Latin word literally meaning "do everything", that is, a handyman or Jack-of-all-trades.

Release Notes

Build Status

Branch Status
master Build status (master)
develop Build status (develop)

Statistics

The non-exhaustive list of .NET classes covered

The non-exhaustive list of own helper classes

  • EnumFactotum
  • Factotum

The non-exhaustive list of own functional classes

  • ByReferenceEqualityComparer<T>
  • CaseInsensitiveStringKey
  • ColoredConsoleTraceListener
  • DirectedGraph<T> and DirectedGraphNode<T>
  • EnumFixedSizeDictionary<TKey, TValue>
  • FixedSizeDictionary<TKey, TValue>
  • KeyedEqualityComparer<T, TKey>
  • LocalComputerCurrentDateTimeProvider (implements ICurrentDateTimeProvider)
  • ObjectValidator
  • ReadOnlyItemCollection<T> (the read-only wrapper for ICollection<T>)
  • ReadOnlySet<T>
  • SemaphoreSlimBasedLock
  • StopwatchElapsedTimeProvider (implements IElapsedTimeProvider)
  • SyncValueContainer<T> (implements IValueContainer<T>)
  • TemplatedStringResolver
  • ValueContainer<T> (implements IValueContainer<T>)
  • ValueRange<T>
  • VirtualTreeNode<T> and VirtualTreeNodeRoot<T>
  • WeakReferenceBasedCache<TKey, TValue>

The non-exhaustive list of own abstractions (interfaces)

  • ICurrentDateTimeProvider
  • IElapsedTimeProvider
  • IValueContainer<T>

The non-exhaustive list of own delegates

  • Task EventHandlerAsync<>(...)
  • OutFunc<TOutput, out TResult>
  • OutFunc<in T, TOutput, out TResult>
  • OutFunc<in T1, in T2, TOutput, out TResult>
  • OutFunc<in T1, in T2, in T3, TOutput, out TResult>