Skip to content
Facilitates adding constraints for Enum and Delegate to types and methods.
C# PostScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
AssemblyToProcess
ExtraConstraints
Fody
Icons
Tests
.gitattributes
.gitignore
CommonAssemblyInfo.cs
ExtraConstraints.sln
ExtraConstraints.sln.DotSettings
README.md
license.txt

README.md

This is an add-in for Fody

Icon

Facilitates adding constraints for Enum and Delegate to types and methods.

Introduction to Fody

The nuget package NuGet Status

https://nuget.org/packages/ExtraConstraints.Fody/

PM> Install-Package ExtraConstraints.Fody

Your Code

public class Sample
{
    public void MethodWithDelegateConstraint<[DelegateConstraint] T> () {...}

    public void MethodWithTypeDelegateConstraint<[DelegateConstraint(typeof(Func<int>))] T> () {...}

    public void MethodWithEnumConstraint<[EnumConstraint] T>() {...}

    public void MethodWithTypeEnumConstraint<[EnumConstraint(typeof(ConsoleColor))] T>() {...}
} 

What gets compiled

public class Sample
{
    public void MethodWithDelegateConstraint<T>() where T: Delegate {...}

    public void MethodWithTypeDelegateConstraint<T>() where T: Func<int> {...}

    public void MethodWithEnumConstraint<T>() where T: struct, Enum {...}

    public void MethodWithTypeEnumConstraint<T>() where T: struct, ConsoleColor {...}
}

Credit

Inspired by Jon Skeets blog post Generic constraints for enums and delegates.

Based manly on code from Jb Evains post Constraining generic constraints

Icon

Straightjacket designed by Luis Prado from The Noun Project

Something went wrong with that request. Please try again.