Table of Contents

Class TopologicalSortUtility

Namespace
NuGet.Packaging
Assembly
Chocolatey.NuGet.Packaging.dll
public static class TopologicalSortUtility
Inheritance
TopologicalSortUtility
Inherited Members

Methods

SortPackagesByDependencyOrder(IEnumerable<PackageDependencyInfo>)

Order dependencies by children first.

public static IReadOnlyList<PackageDependencyInfo> SortPackagesByDependencyOrder(IEnumerable<PackageDependencyInfo> packages)

Parameters

packages IEnumerable<PackageDependencyInfo>

Returns

IReadOnlyList<PackageDependencyInfo>

SortPackagesByDependencyOrder<T>(IEnumerable<T>, StringComparer, Func<T, string>, Func<T, string[]>)

Order dependencies by children first.

public static IReadOnlyList<T> SortPackagesByDependencyOrder<T>(IEnumerable<T> items, StringComparer comparer, Func<T, string> getId, Func<T, string[]> getDependencies) where T : class

Parameters

items IEnumerable<T>

Items to sort.

comparer StringComparer

Comparer for Ids.

getId Func<T, string>

Retrieve the id of the item.

getDependencies Func<T, string[]>

Retrieve dependency ids.

Returns

IReadOnlyList<T>

Type Parameters

T