Skip to content

Useful stuff missing from .NET for example duck typing, CSP channels, caching, money, typed ids...

License

Notifications You must be signed in to change notification settings

busterwood/Goodies

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build status Nuget

BusterWood.Goodies

So much useful & free stuff for .NET, built as a library for .NET Standard 2.0.

Selected highlights

  • BusterWood.Batching namespace contains classes for batching together asynchronous method calls for efficiency.
  • BusterWood.Caching namespace contains time and space effecient Cache<,> and ReadThroughCache<,>.
  • BusterWood.Channels namespace contains CSP-like communication between (logical) asynchronous threads, including buffered and multicast channels.
  • BusterWood.Collections namespace contains the time and space effecient UniqueList<> which implements both IList<> and ISet<>. Additionally HashLookup<,> and CircularQueue<> classes are provided.
  • BusterWood.Ducks namespace contains run-time duck typing.
  • BusterWood.Equality namespace contains run-time creation of equality comparers using property names.
  • BusterWood.Goodies namespace contains structs to ensure you don't mix up your customer and order identifiers, and extension methods for arrays, enums, TimeSpans and strings.
  • BusterWood.Linq namespace contains 20% faster LINQ via batching, additional LINQ methods and asynchronous enumerables.
  • BusterWood.Logging namespace contains Log static class for structured logging to Console.Error (StdErr).
  • BusterWood.Mapping namespace contains extension methods for copying objects with rules for name and type conversion.
  • BusterWood.Monies namespace contains Money struct to ensure that you don't add accidentally add GBP and USD together.
  • BusterWood.Reflect.Emit namespace contains extension methods for emiting IL via ILGenerator.
  • BusterWood.Restarting namespace contains RestartMonitoring that monitor failures in asychrous processes and restarts them on failure (with delay).
  • BusterWood.Testing namespace contains a simple testing library inspired by Go's testing package

About

Useful stuff missing from .NET for example duck typing, CSP channels, caching, money, typed ids...

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages