PeanutButter
Loading...
Searching...
No Matches
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345]
 CActionExecutedContext
 CActionExecutingContext
 CPeanutButter.TestUtils.AspNetCore.ActionResultExtensionsProvides extensions for action results
 CArgumentException
 CPeanutButter.Utils.AssemblyExtensionsProvides extension methods for Assemblies
 CPeanutButter.Utils.AsyncProvides methods to run async code synchronously and safely http://stackoverflow.com/questions/5095183/how-would-i-run-an-async-taskt-method-synchronously
 CPeanutButter.Utils.AsyncExtensionsForIEnumerablesUseful extensions for IEnumerable<T> collections, with async in mind
 CAttribute
 CPeanutButter.Utils.AttributeWalkStepEmitted at every stage of walking attributes per type in the ancestry tree
 CPeanutButter.TestUtils.AspNetCore.Builders.AuthorizationFilterContextBuilderEasier start for building an AuthorizationContext via AuthorizationContextBuilder.ForController<TController>()
 CPeanutButter.MVC.AutoInclude
 CPeanutButter.Utils.BenchmarkProvides a static Time method which times running the provided action the specified number of times
 CPeanutButter.Utils.BooleanExtensionsProvides extensions for boolean values
 CPeanutButter.TestUtils.AspNetCore.Builders.Builder< TBuilder, TSubject >Provides the base builder for AspNetCore fakes
 CPeanutButter.Utils.ByteArrayExtensionsProvides some extensions useful for byte arrays
 CPeanutButter.TestUtils.Generic.SubstituteExtensions.CallWrapperWraps an NSubstitute ICall
 CPeanutButter.Utils.CommandlineProvides a wrapper around handling a commandline properly
 CPeanutButter.EasyArgs.CommandlineArgumentDescribes a command line argument
 CPeanutButter.Utils.ConcurrentCollectionExtensionsProvides some common functionality for concurrent collections
 CConnectionInfo
 CPeanutButter.Utils.ConsoleStepsProvides factory methods for basic console steps
 CPeanutButter.TestUtils.Generic.ConstructorTestUtilsProvides static utilities to test constructors
 CPeanutButter.TestUtils.AspNetCore.Builders.ControllerBuilderStarts off a builder for your ApiController (controller inheriting from ControllerBase only)
 CPeanutButter.DuckTyping.Extensions.ConversionExtensionsProvides an extension method on object to attempt to convert to any other type supported by any existing (or located) converters. If you need a special conversion to happen then implement IConverter<T1, T2> to convert between T1 and T2. Common .net type conversion from strings is already supported (based on culture-invariant conversions, eg "1.23" -> 1.23M)
 CPeanutButter.DuckTyping.AutoConversion.ConverterExtensionsProvides "generic" object-in, object-out conversion extension method Convert(other) for IConverter implementations
 CPeanutButter.DuckTyping.AutoConversion.ConverterLocatorLocates converters for converting values from one type to another
 CPeanutButter.DuckTyping.CreateStatic class to create instances of automatically generated types implementing the provided interfaces
 CPeanutButter.DuckTyping.Extensions.CustomAttributeHelperExtensionsContains an extension method to craete a CustomAttributeBuilder out of CustomAttributeData, largely based on code at: http://stackoverflow.com/questions/2365470/using-reflection-emit-to-copy-a-custom-attribute-to-another-method (apparently, this is how AutoFac does it!)
 CPeanutButter.RandomGenerators.DateRangeHolds a date range
 CPeanutButter.TestUtils.Generic.DateTimeAssertProvides assertions against DateTime values
 CPeanutButter.Utils.DateTimeExtensionsProvides some useful extension methods for DateTime values
 CPeanutButter.Utils.DecimalDecoratorProvides a relatively "safe" interchange between decimal and string notations for numbers, inspecting the input string to try to make the best decision based on the contents of the string instead of just relying on the current thread culture (which causes issues when communicating between machines with different ideas of what constitutes "correct" decimal notation a prime example being transport of decimals from Javascript into a ZA .net culture – but there are others)
 CPeanutButter.TestUtils.Generic.DecimalExtensionsProvides extensions for decimal values which make testing easier
 CPeanutButter.Utils.DeepEqualityTesterProvides a mechanism to test deep-equality of two objects with an optional list of properties to ignore by name. Deep equality testing bypasses reference-checking of container objects and compares primitive propertyt values. Use this to test whether or not two objects essentially contain the same data. More conveniently, use the following extension methods:
 CPeanutButter.RandomGenerators.RandomValueGen.DefaultRangesExposes the default range values used within RandomValueGen when the ranges are omitted by calling code
 CPeanutButter.TempDb.MySql.Base.Defaults
 CPeanutButter.Utils.DictionaryExtensionsProvides extensions to convert from non-generic IDictionary to a generic one
 CPeanutButter.Utils.DisposableWrapperEventArgsThe event arguments raised with every DisposableWrapper event
 CPeanutButter.DuckTyping.Extensions.DuckTypingCollectionExtensionsProvides ducking extensions for collections
 CPeanutButter.DuckTyping.Extensions.DuckTypingDictionaryExtensionsProvides duck-typing extension methods around dictionary objects
 CPeanutButter.DuckTyping.Extensions.DuckTypingExtensionSharedMethodsProvides a set of extension methods to enable duck-typing
 CPeanutButter.DuckTyping.Extensions.DuckTypingNameValueCollectionExtensionsProvides duck-typing around NameValueCollections
 CPeanutButter.DuckTyping.Extensions.DuckTypingObjectExtensionsProvides a set of extension methods to enable duck-typing
 CPeanutButter.Utils.ExtensionsForIEnumerables.DuplicateResult< TKey, TItem >DTO for conveying results from the more complex FindDuplicates variant which includes a key discriminator
 CPeanutButter.RandomGenerators.EnumerableExtensionsProvides extensions for generic IEnumerable collections
 CPeanutButter.TestUtils.Generic.EnumerableExtensionsExtensions for IEnumerables
 CPeanutButter.Utils.EnvProvides easy access to environment variables with fallback
 CPeanutButter.TempDb.MySql.Base.EnvironmentVariables
 CEventArgs
 CPeanutButter.TinyEventAggregator.EventBaseBase class for events
 CException
 CPeanutButter.EasyArgs.ExitCodesExit codes used when exiting early
 CPeanutButter.Utils.ExpressionUtilUtility class to assist with dealing with expressions
 CPeanutButter.Utils.ExtensionsForIEnumerablesUseful extensions for IEnumerable<T> collections
 CPeanutButter.Utils.FindFinds files
 CPeanutButter.Utils.FlagExtensionsProvides extensions to help with common enum operations
 CPeanutButter.Utils.FluencyExtensionsAdd fluency anywhere - as if all things were buildable!
 CPeanutButter.TestUtils.AspNetCore.Utils.FormFileExtensionsProvides some convenience extensions for form files
 CPeanutButter.DuckTyping.Extensions.FuzzyDictionaryExtensionsProvides extensions for dealing with dictionaries in a "fuzzy" manner
 CPeanutButter.RandomGenerators.GenericBuilderBaseAbstract base class for housing shared logic between all builders and allowing a base, unconstructable class to use to reference a collection of builders
 CPeanutButter.RandomGenerators.GenericBuilderLocatorLocator class which attempts to find suitable builders on demand
 CPeanutButter.SimpleHTTPServer.HttpConstants.HeadersCommon HTTP headers
 CPeanutButter.SimpleHTTPServer.HttpConstantsProvides some constants which are useful in an http context
 CHttpContext
 CPeanutButter.TestUtils.AspNetCore.HttpHeaderExtensionsProvides extensions for the IHeaderDictionary properties on HttpRequest and HttpResponse
 CPeanutButter.SimpleHTTPServer.HttpMethodsExtensionsProvides extension methods for HttpMethods enum values
 CHttpRequest
 CPeanutButter.TestUtils.AspNetCore.Builders.HttpRequestExtensionsSimplify some routines around HttpRequests
 CPeanutButter.TestUtils.AspNetCore.HttpRequestExtensionsProvides convenience HttpRequestExtensions
 CHttpResponse
 CPeanutButter.TestUtils.AspNetCore.HttpResponseExtensionsProvides extensions for asp.net HttpResponse objects
 CPeanutButter.SimpleHTTPServer.Testability.HttpServerExtensions
 CIActionResultExecutor
 CPeanutButter.Utils.IBackoffStrategyDescribes a service which backs off (ie, waits) according to the retry attempt number
 CPeanutButter.Utils.IBuilder< TBuilder, TEntity >Most basic interface to implement to be considered a builder
 CPeanutButter.TestUtils.AspNetCore.Fakes.ICanBeIndexedBy< in T >Describes a type which has
 CICompositeMetadataDetailsProvider
 CPeanutButter.Async.Interfaces.IContinuationProvides a continuation point for another task with no result
 CPeanutButter.Async.Interfaces.IContinuation< T >Provides a continuation point for another task with a result
 CPeanutButter.DuckTyping.AutoConversion.IConverterBase interface for converters of all types
 CPeanutButter.Utils.IDateTimeParserVersatile DateTime parser
 CIDictionary
 CIDictionary
 CIDisposable
 CIEnumerable
 CIEnumerable
 CIEnumerable
 CPeanutButter.Utils.IEnumerableWrapperUsed to describe a wrapper
 CIEnumerator
 CPeanutButter.TinyEventAggregator.IEventAggregatorProvides a simple event aggregator
 CPeanutButter.TestUtils.AspNetCore.Fakes.IFakeUsed to identify fakes, primarily by the .As<TFake> extension method
 CPeanutButter.TestUtils.AspNetCore.Fakes.IFakeModelMetadataInterface for dealing with the backing properties of the FakeModelMetadata
 CIFeatureCollection
 CPeanutButter.Utils.IFilePathResolverProvides a service to resolve path files, including with globbing
 CPeanutButter.FileSystem.IFileSystemProvides a wrapper around a tree within a filesystem
 CPeanutButter.Async.Interfaces.IFluentTaskRunnerContinuation< T >Provides fluent continuation syntax
 CIFormCollection
 CPeanutButter.TestUtils.AspNetCore.Utils.IFormDecoderDecodes a form
 CPeanutButter.TestUtils.AspNetCore.Utils.IFormEncoderEncodes a form
 CIFormFile
 CIFormFileCollection
 CPeanutButter.RandomGenerators.IGenericBuilderThe most basic interface to implement for GenericBuilder instances
 CIHeaderDictionary
 CIHttpRequestFeature
 CIHttpResponseFeature
 CPeanutButter.INI.IINIFileContract provided by the PeanutButter INI parser
 CPeanutButter.Utils.ILazyWithContext< TValue >Provides a mechanism for lazy evaluation with a provider context
 CPeanutButter.INI.ILineParserRepresents a line parser for parsing a data line into:
 CIList
 CPeanutButter.TempDb.LocalDb.ILocalDbFactoryInterface to implement when your TempDB implementation needs to create a temporary database
 CPeanutButter.MVC.IncludeDirectory
 CIObjectModelValidator
 CIOptions
 CPeanutButter.Utils.IParallelWorker< T >Describes a parallel worker for functions returning values
 CPeanutButter.INI.IParsedLineRepresents a parsed data line
 CPeanutButter.Utils.IPool< T >Describes a pooling service for the underlying type T
 CPeanutButter.SimpleTcpServer.IProcessorInterface to be implemented by a service which processes requests
 CIPropertyFilterProvider
 CPeanutButter.DuckTyping.Shimming.IPropertyInfoFetcherInterface to implement for a utility to fetch properties on a type or object
 CPeanutButter.Utils.IPropertyOrFieldRepresents a property or a field on an object
 CIQueryCollection
 CPeanutButter.Utils.IRateLimiterProvides a mechanism for rate-limiting calls to blocks of code. Calls made within limits are executed, those which exceed limits are dropped
 CPeanutButter.TempRedis.IRedisDownloaderAttempts to download the Microsoft-built redis server 3.2.100 from https://github.com/microsoftarchive/redis/releases/tag/win-3.2.100 which is adequate for testing on a windows machine
 CIRequestCookieCollection
 CIResponseCookies
 CPeanutButter.MVC.IScriptBundle
 CPeanutButter.ServiceShell.IServiceCommandlineOptionsCommandline options for services which are implemented via ServiceShell
 CPeanutButter.WindowsServiceManagement.IServiceControlInterfaceProvides a mechanism for controlling windows services
 CIServiceProvider
 CISession
 CPeanutButter.DuckTyping.Shimming.IShimShamInterface to implement for shimming ducked-types. Used for the backing field within the ducked type. Could potentially be used as a starting point for new ways to duck
 CPeanutButter.ServiceShell.ISimpleLoggerDescribes the contract for a very simple logging service
 CPeanutButter.Utils.ISingleItemCache< T >SingleItemCache provides a light, fast, caching wrapper around a function to generate a value with a provided TTL
 CPeanutButter.Utils.ISlidingWindowItem< out T >Describes a sliding window item
 CPeanutButter.MVC.IStyleBundle
 CPeanutButter.Async.Interfaces.ITaskRunnerProvides a wrapper around task running
 CITempDataDictionaryFactory
 CITempDataProvider
 CPeanutButter.Utils.ITextStatusStepsDescribes the contract for textural feedback around running activities
 CPeanutButter.DuckTyping.Shimming.ITypeMakerInterface implemented by the TypeMaker
 CPeanutButter.WindowsServiceManagement.IWindowsServiceUtilThe Windows Service Utility contract
 CPeanutButter.Utils.IWorkerDescribes a worker
 CPeanutButter.Utils.Dictionaries.IWrapperDefines an object which is wrapping another object and can be unwrapped with the provided methods
 CPeanutButter.JObjectExtensions.JObjectExtensionsProvides an easy extension method to convert JObjects to nested Dictionary<string, object> instances
 CPeanutButter.Utils.KeyValueCollectionExtensionsProvides extension methods on KeyValuePairCollections
 CPeanutButter.Utils.ListExtensionsProvides methods on lists as one might expect from JavaScript
 CPeanutButter.TempDb.LocalDb.LocalDbInstanceEnumeratorHelper class to find all instances of running LocalDb services
 CPeanutButter.Utils.MaxAttemptsRetryContextProvides a wrapping context around retried code
 CPeanutButter.Utils.MedianExtensionsProvides .Median() extension methods for numeric collections
 CPeanutButter.DuckTyping.Extensions.MergingExtensionsProvides extension method for merging multiple objects behind a required interface
 CPeanutButter.Utils.MetadataExtensionsProvides extension methods to set and retrieve metadata on any object. Under the hood, these methods use a ConditionalWeakTable to store your metadata, so the metadata is garbage-collected when your managed objects are garbage-collected
 CPeanutButter.DuckTyping.Comparers.MethodInfoContainerClass which holds two lookups of method information: one accurate and one approximate
 CPeanutButter.SimpleHTTPServer.HttpConstants.MethodsCommon HTTP Methods
 CPeanutButter.Utils.MIMETypeKept to maintain legacy code
 CPeanutButter.SimpleHTTPServer.HttpConstants.MimeTypesCommon MIME types
 CPeanutButter.Utils.MimeTypesProvides a mechanism for guessing the MIME type of a file by its extension. Of course, this isn't perfect - magic bytes are probably more reliable - but also more effort. This code is largely copied from https://github.com/samuelneff/MimeTypeMap/blob/master/MimeTypeMap.cs The code in this file is licensed under the
 CPeanutButter.Utils.MockStoreExtensionsProvides basic extensions for using a mocked store against any object, levering off of PeanutButter's metadata logic
 CModelBindingContext
 CModelMetadata
 CPeanutButter.TestUtils.AspNetCore.Builders.ModelMetadataBuilderBuilds ModelMetadata
 CPeanutButter.TempDb.MySql.Base.MySqlConfigGeneratorGenerates MySql configuration from TempDbMySqlServerSettings
 CPeanutButter.TempDb.MySql.Connector.MySqlPoolStatsFetcherFetches stats from the MySqlConnector pool using reflection
 CPeanutButter.TempDb.MySql.Data.MySqlPoolStatsFetcherFetches MySql connection pool stats via reflection from non-public types and fields as the MySql driver doesn't report any actually useful stats to WMI, making this document not all that useful for MySql (even when adjusting counter names): https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/performance-counters
 CPeanutButter.TempDb.MySql.Base.TempDBMySqlBase< T >.MySqlVersionInfo
 CPeanutButter.TempDb.MySql.Base.MySqlWindowsServiceFinderUtility to try to find the path to the MySQL service binary on Windows
 CPeanutButter.RandomGenerators.NaturalDataProvides modifiable sources of "natural" data
 CNotImplementedException
 CPeanutButter.RandomGenerators.ObjectExtensionsProvides the .Randomize extension for objects
 CPeanutButter.Utils.ObjectExtensionsProvides a set of convenience extensions on everything
 CPeanutButter.TempDb.Runner.Options
 CPeanutButter.EasyArgs.ParserExtensionsProvides the extension methods to parse commandline arguments
 CPeanutButter.EasyArgs.ParserOptionsProvides options for the parser
 CPeanutButter.Utils.PlatformPlatform abstractions
 CPeanutButter.TempDb.MySql.Data.MySqlPoolStatsFetcher.PoolStatsProvides pool stats for MySql.Data Connection Pools via reflection
 CPeanutButter.Utils.PortFinderUtility class to find open ports for binding to
 CPeanutButter.TempDb.Runner.Program
 CPeanutButter.TestUtils.Generic.PropertyAssertProvides a wrapper around DeepEqualityTester and NUnit for property assertions
 CPeanutButter.DuckTyping.Shimming.PropertyInfoContainerProvides a container for two property info lookups: one accurate and one approximate
 CPeanutButter.Utils.PyLikeProvides a Python-like Range method
 CPeanutButter.TestUtils.AspNetCore.Builders.QueryBuilderAlias to QueryCollectionBuilder
 CPeanutButter.Utils.QueueExtensionsProvides some useful extensions for Queues
 CPeanutButter.Utils.RandomNumberSingleton wrapper around Random.Next to reduce the chances of clashing
 CPeanutButter.RandomGenerators.RandomValueGenClass which provides a number of static methods to produce random values. Suggestion: make use of "using static" to bring these methods into your class as if they were local members, ie: using static PeanutButter.RandomGenerators.RandomValueGen;
 CPeanutButter.TempRedis.RedisExecutableFinderAttempts to find a redis-server executable for TempRedis
 CPeanutButter.TestUtils.AspNetCore.Utils.RequestDelegateTestArenaSets up the useful bits for testing an asp.net middleware class - use this to easily set up the context and next parameters for InvokeAsync
 CPeanutButter.TestUtils.AspNetCore.Utils.RequestDelegateTestArenaBuilderBuilds a RequestDelegateTestArena, which makes testing middleware a lot easier
 CPeanutButter.SimpleHTTPServer.RequestLogItemLog item for requests
 CPeanutButter.Utils.RetryRetries operations up to a specific number of times
 CPeanutButter.Utils.RetryExtensionsProvides common functionality to retry logic with configurable delay
 CPeanutButter.Utils.RunProvides convenience wrapper functions to run small bits of work in parallel threads, not tasks. No async/await, no Tasks (unless you want to return them and await them yourself). No TPL. No handbrakes. No magic context. No guarantees, except that your work will be executed. May make the host machine very tired
 CPeanutButter.Utils.RunningAverageProvides a convenience class to keep a running average of values without storing the values in memory
 CPeanutButter.Utils.RuntimeUsed to determine what runtime we're currently running on
 CPeanutButter.Utils.SafeWalkUtility class to provide the ability to enumerate files without throwing exceptions on access errors
 CPeanutButter.WindowsServiceManagement.Win32Api.SERVICE_DELAYED_AUTO_START_INFO
 CPeanutButter.WindowsServiceManagement.Win32Api.SERVICE_STATUS
 CPeanutButter.WindowsServiceManagement.Win32Api.SERVICE_STATUS_PROCESS
 CServiceBase
 CPeanutButter.DuckTyping.Shimming.ShimShamBaseBase class for common shim functionality
 CPeanutButter.Utils.SlidingWindowEstimatedTimeRemainingExtensionsProvides convenience functions to predict an estimated time remaining based on a remaining item count
 CPeanutButter.Utils.SlidingWindowRateExtensionsProvides convenience extensions for sliding windows
 CPeanutButter.SimpleHTTPServer.HttpConstants.StatusesCommon HTTP status titles
 CPeanutButter.Utils.StepsProvides a mechanism to surround an action with a pre-action and post-action
 CPeanutButter.SimpleHTTPServer.StreamExtensionsProvides some extensions for the stream object provided into a HttpServer handler function
 CPeanutButter.Utils.StreamExtensionsProvides utility extensions on Stream objects
 CPeanutButter.Utils.StringExtensionsProvides utility extensions for strings
 CPeanutButter.Utils.StringifierProvides convenience functions to get reasonable string representations of objects and collections
 CPeanutButter.TinyEventAggregator.Subscription< TPayload >Represents a subscription for a specific event and payload
 CPeanutButter.TinyEventAggregator.SubscriptionsChangedEventArgsEvent args when a subscription is changed
 CPeanutButter.TinyEventAggregator.SubscriptionTokenA token which identifies a subscription
 CPeanutButter.TestUtils.Generic.SubstituteExtensionsProvides extensions for substitutes to facilitate easier interrogation of the call history, eg when you want to pull an argument for an invocation to test against
 CPeanutButter.Async.TaskExtensionsConvenience extensions
 CPeanutButter.Utils.TaskExtensionsExtension methods for tasks Suggest: Use Async.RunSync, which does more cleverness
 CPeanutButter.SimpleHTTPServer.TcpClientExtensionsProvides the ReadLine extension for a TcpClient
 CPeanutButter.SimpleHTTPServer.TcpServerProcessorAbstract TCP processor
 CPeanutButter.TempDb.TempDbDisposedEventArgs
 CPeanutButter.TempDb.Runner.TempDbFactory
 CPeanutButter.TempDb.TempDbHints
 CPeanutButter.TempDb.MySql.Base.TempDbMySqlServerSettingsSettings for starting up a TempDbMySql instance
 CPeanutButter.TempDb.MySql.Base.TempDbMySqlServerSettings.TempDbOptionsOptions which define how to start up mysqld
 CPeanutButter.TempDb.TempDbTracker
 CPeanutButter.TempRedis.TempRedisOptionsOptions for construction of a TempRedis instance
 CPeanutButter.Utils.TimeBasedRetryContextProvides a wrapping context around retried code
 CPeanutButter.Utils.TimeSpanExtensionsAdds methods similar to those found on DateTime to TimeSpan
 CPeanutButter.Utils.TypeEqualityTesterTests shape equality between two types (YMMV)
 CPeanutButter.TestUtils.Generic.TypeExtensionsProvides extension methods on Type objects
 CPeanutButter.Utils.TypeExtensionsHelper extensions for Types
 CPeanutButter.Utils.TypeFinderFind loaded types by name
 CPeanutButter.RandomGenerators.UniqueRandomValueGeneratorBase class for UniqueRandomValueGenerator<T>
 CPeanutButter.Utils.UriExtensionsProvides extensions for Uri objects and url strings
 CPeanutButter.ServiceShell.Shell.VersionInfoProvides basic version information
 CPeanutButter.NetUtils.WebDownloader
 CPeanutButter.Utils.WebObjectExtensionsProvides some more object extensions, for webby usages
 CWebSocket
 CWebSocketManager
 CPeanutButter.Utils.WorkerBase class for parallel workers
 CPeanutButter.Utils.WorkResultStores the exception (or none) from a single piece of work
 CPeanutButter.Utils.WorkResultExtensionsProvides convenience extensions for work results
 CPeanutButter.XmlUtils.XElementExtensionsAdds some convenience extensions to XElement and XDocument instances