Enhanced C#
Language of your choice: library documentation
|
Contains general-purpose classes that are not considered important enough to go directly into the Loyc
namespace. Most of the classes in this namespace are defined in Loyc.Utilities.dll.
More...
Classes | |
struct | BloomFilterM64K2 |
A bloom filter for very small sets. More... | |
class | Co |
Extension methods for Co{T}. More... | |
struct | Co< T > |
A structure that helps you to write coroutines, or to avoid the performance penalty of nested iterators. More... | |
class | GoAliasAttribute |
This attribute is applied to a method of an interface to specify alternate names that a method can have in T when you use GoInterface <Interface, T> to produce a wrapper. More... | |
class | GoDecoratorFieldAttribute |
This attribute marks a field in an abstract class as pointing to a wrapped object to which GoInterface should forward calls. It is used when you want GoInterface to "complete" a decorator pattern for you. More... | |
class | GoInterface |
Mainly for internal use by the other GoInterface classes. More... | |
class | GoInterface< Interface > |
GoInterface<Interface> creates wrappers around objects of your choosing that implement the specified Interface, forwarding calls to methods in the wrapped object. It is inspired by the duck-typed interfaces in the Go programming language. More... | |
class | GoInterface< Interface, T > |
GoInterface<Interface,T> creates a wrapper that implements the specified Interface, forwarding calls to methods in T. It is inspired by the duck-typed interfaces in the Go programming language. More... | |
interface | IGoInterfaceWrapper |
All GoInterface wrappers implement this interface. More... | |
class | SimpleTimer |
A fast, simple timer class with a more convenient interface than System.Diagnostics.Stopwatch. Its resolution is typically 10-16 ms on desktop Windows systems. More... | |
class | Statistic |
A lightweight class to help you compute the minimum, maximum, average and standard deviation of a set of values. Call Clear(), then Add(each value); you can compute the average and standard deviation at any time by calling Avg() and StdDeviation(). More... | |
class | TagsInWList< ValueT > |
An implementation of ITags designed for AstNode. More... | |
class | UG |
Contains global functions of Loyc.Utilities that don't belong in any specific class. More... | |
class | UGTests |
Enumerations | |
enum | CastOptions { CastOptions.As = 1, CastOptions.AllowUnmatchedMethods = 2, CastOptions.AllowRefMismatch = 4, CastOptions.AllowMissingParams = 8, CastOptions.NoUnwrap = 16 } |
Options you can pass to GoInterface.From() More... | |
Contains general-purpose classes that are not considered important enough to go directly into the Loyc
namespace. Most of the classes in this namespace are defined in Loyc.Utilities.dll.
Options you can pass to GoInterface.From()
Enumerator | |
---|---|
As |
If there is a mismatch, return null instead of throwing InvalidCastException |
AllowUnmatchedMethods |
Allow the cast even if NumberOfUnmatchedMethods > 0 |
AllowRefMismatch |
Allow the cast even if NumberOfMethodsWithRefMismatch > 0 |
AllowMissingParams |
Allow the cast even if NumberOfMethodsMissingParameters > 0 |
NoUnwrap |
If the object to be wrapped is already wrapped, GoInterface<Interface> will normally unwrap it before wrapping the original object in another interface. Pass this flag to GoInterface<Interface>.From() if you would like to make a wrapper around another wrapper. Note 1: This flag only works in GoInterfaceFactory<Interface>, not GoInterfaceFactory<Interface,T>. Note 2: Unwrapping occurs recursively until an object is reached that does not implement IGoInterfaceWrapper. |