Namespace Towel
Classes
ArrayHelper
Static helper methods for arrays.
CommandLine
Contains static helpers for handling command line input and output.
ConsoleHelper
Contains static helper methods for
Constant<T>
Contains generic static numerical constant values.
CorruptedDataStructureException
Thrown when a data structure operation fails due to external corruption.
DocumentationMethodException
Thrown when an internal documentation method is called.
InequalitySyntaxException
Thrown when the inequality syntax is missused.
Meta
Constains static analysis methods of the code (reflection).
Serialization
Static class containing serialization code.
Serialization.Json
An object for the purposes of serializing static delegates.
Serialization.Json.Delegate
An object for the purposes of serializing static delegates.
Statics
Root type of the static functional methods in Towel.
Statics.GraphSyntax
Syntax sugar hacks.
Statics.OperatorValidated
Helper type for inequality syntax. Contains an Inequality type that has been operator validated.
Statics.SwitchSyntax
Definitions for Switch syntax.
Statics.SwitchSyntax.Condition
Represents the result of a conditional expression inside Switch syntax.
Statics.SwitchSyntax.Condition<T>
Represents the result of a conditional expression inside Switch syntax.
Steppable
Static members for ISteppable<T>.
TagAttribute
A value-based "tag" attribute.
TagAttributeExtensions
Extension methods for reflection types and TagAttribute.
TowelBugException
Represents a bug in the Towel project. Please report it.
Structs
SAction
SAction<T1>
SAction<T1, T2>
SAction<T1, T2, T3>
SAction<T1, T2, T3, T4>
SAction<T1, T2, T3, T4, T5>
SAction<T1, T2, T3, T4, T5, T6>
SAction<T1, T2, T3, T4, T5, T6, T7>
SFunc<TResult>
SFunc<T1, TResult>
SFunc<T1, T2, TResult>
SFunc<T1, T2, T3, TResult>
SFunc<T1, T2, T3, T4, TResult>
SFunc<T1, T2, T3, T4, T5, TResult>
SFunc<T1, T2, T3, T4, T5, T6, TResult>
SFunc<T1, T2, T3, T4, T5, T6, T7, TResult>
SLazy<T>
Provides support for lazy initialization.
SLazyNoCatch<T>
Provides support for lazy initialization.
SLazyNoLock<T>
Provides support for lazy initialization.
SLazyNoLockNoCatch<T>
Provides support for lazy initialization.
SLazyPublicationLock<T>
Provides support for lazy initialization.
SLazyPublicationLockNoCatch<T>
Provides support for lazy initialization.
SpanBuilder<T>
Represents a
Statics.Action_ReadOnlySpan_Runtime<T>
Statics.ChanceSyntax
Struct that allows percentage syntax that will be evaluated at runtime.
Statics.CharEquate
Equality checking function for
Statics.CharHash
Hashing function for
Statics.CompareInvert<T, TCompare>
Inverts the results of a comparison.
Statics.GraphSyntax.GraphSearchStatusStruct
This is a syntax sugar hack to allow implicit conversions from StepStatus to GraphSearchStatus.
Statics.Identity<T>
Built in function type to return the value passed in.
Statics.Inequality<T>
Used for inequality syntax.
Statics.Int32Compare
Comparing function for
Statics.Int32Equate
Equality checking function for
Statics.Int32Hash
Hashing function for
Statics.OperatorValidated.Inequality<T>
Used for inequality syntax.
Statics.PredicateFromEquateAndValue<T, TEquate>
Built in Compare struct for runtime computations.
Statics.RandomNextIntMinValueIntMaxValue
Struct wrapper for the
Statics.SiftFromCompareAndValue<T, TCompare>
Built in Compare struct for runtime computations.
Statics.StepBreakFromAction<T, TStep>
Built in struct for runtime computations.
Statics.StepStatusContinue
Compile time resulution to the Continue value.
Statics.StringEquate
Equality checking function for
Statics.StringHash
Hashing function for
Statics.UniversalQuantification<T>
Universal Quantification.
ValueLazy<T>
Provides support for lazy initialization.
ValueLazyNoCatch<T>
Provides support for lazy initialization.
ValueLazyNoLock<T>
Provides support for lazy initialization.
ValueLazyNoLockNoCatch<T>
Provides support for lazy initialization.
ValueLazyPublicationLock<T>
Provides support for lazy initialization.
ValueLazyPublicationLockNoCatch<T>
Provides support for lazy initialization.
Interfaces
IAction
IAction<T1>
IAction<T1, T2>
IAction<T1, T2, T3>
IAction<T1, T2, T3, T4>
IAction<T1, T2, T3, T4, T5>
IAction<T1, T2, T3, T4, T5, T6>
IAction<T1, T2, T3, T4, T5, T6, T7>
ICloneable<T>
A type that has clonable instances.
IFunc<TResult>
IFunc<T1, TResult>
IFunc<T1, T2, TResult>
IFunc<T1, T2, T3, TResult>
IFunc<T1, T2, T3, T4, TResult>
IFunc<T1, T2, T3, T4, T5, TResult>
IFunc<T1, T2, T3, T4, T5, T6, TResult>
IFunc<T1, T2, T3, T4, T5, T6, T7, TResult>
ILazy<T>
Provides support for lazy initialization.
ISteppable<T>
Polymorphism base for all data structures in the Towel framework.
Statics.IAction_ReadOnlySpan<T>
Enums
CompareResult
The result of a comparison between two values.
Statics.GraphSearchStatus
The status of a graph search algorithm.
Statics.SwitchSyntax.Keyword
Intended to be used with Switch syntax.
StepStatus
Status of iteration.
Delegates
Statics.Action_ReadOnlySpan<T>
Encapsulates a method that has a single
Statics.SearchCheck<TNode>
Checks the status of a graph search.
Statics.SearchCost<TNode, TNumeric>
Computes the cost of moving from the current node to a specific neighbor.
Statics.SearchGoal<TNode>
Predicate for determining if we have reached the goal node.
Statics.SearchHeuristic<TNode, TNumeric>
Computes the heuristic value of a given node in a graph (smaller values mean closer to goal node).
Statics.SearchNeighbors<TNode>
Step function for all neigbors of a given node.
Statics.SwitchSyntax.ParamsAction<TA, TB>
Delegate with params intended to be used with the Switch syntax.