This is a fork of Daniel Bradley's C# implementation of the Tarjan cycle detection algorithm.
IOW: You can use this library to sort dependencies and even handle cyclic references. e.g. to compile stuff in the right order.
I found it to be quite useful but I didn't like how one had to manually setup the dependency vertices. (It also supports custom comparers now.)
So I moved the original code into the Core sub namespace and wrote a class that allows to setup dependencies using a simple lambda expression.
See the version list below for details.
Install-Package CycleDetection -Version 1.0.0
dotnet add package CycleDetection --version 1.0.0
<PackageReference Include="CycleDetection" Version="1.0.0" />
paket add CycleDetection --version 1.0.0
#r "nuget: CycleDetection, 1.0.0"
// Install CycleDetection as a Cake Addin #addin nuget:?package=CycleDetection&version=1.0.0 // Install CycleDetection as a Cake Tool #tool nuget:?package=CycleDetection&version=1.0.0
- CreateSnkFile (>= 1.0.1)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on CycleDetection:
C# Version of ArchUnit (see: archunit.org)
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on CycleDetection:
A C# architecture test library to specify and assert architecture rules in C# for automated testing.