Soenneker.Extensions.Enumerable 1.0.8

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Soenneker.Extensions.Enumerable --version 1.0.8                
NuGet\Install-Package Soenneker.Extensions.Enumerable -Version 1.0.8                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Soenneker.Extensions.Enumerable" Version="1.0.8" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Soenneker.Extensions.Enumerable --version 1.0.8                
#r "nuget: Soenneker.Extensions.Enumerable, 1.0.8"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Soenneker.Extensions.Enumerable as a Cake Addin
#addin nuget:?package=Soenneker.Extensions.Enumerable&version=1.0.8

// Install Soenneker.Extensions.Enumerable as a Cake Tool
#tool nuget:?package=Soenneker.Extensions.Enumerable&version=1.0.8                

alternate text is missing from this package README image alternate text is missing from this package README image alternate text is missing from this package README image

Soenneker.Extensions.Enumerable

A collection of helpful enumerable extension methods

Installation

Install-Package Soenneker.Extensions.Enumerable

Usage

IEnumerable should have IsNullOrEmpty() too

var populatedList = new List<string>{"foo", "bar", "foo"};

populatedList.IsNullOrEmpty() // false

populatedList.Populated() // true
populatedList.None() // false

One call checking for null and contains any elements

List<string>? nullList = null;

nullList.IsNullOrEmpty() // true
nullList.Populated() // false

Duplicate handling

var containsDuplicates = populatedList.ContainsDuplicates(); // true

var deduped = populatedList.RemoveDuplicates(); // {"foo", "bar"}

Recursive flattening

public class Node 
{
    public string Name {get; set;}
    public List<Node> Children {get; set;}
}

void Example()
{
    var node = new Node(){ Name = "Node1" };
    node.Children = new List()
    {
        new Node() 
        {
            Name = "Node2"
        }
    }

    List<Node>? children = node.Children.ToFlattenedFromRecursive(c => c.Children);

    // Results in flattened List:
    // { Node1, Node2 }
}
Product Compatible and additional computed target framework versions.
.NET net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (9)

Showing the top 5 NuGet packages that depend on Soenneker.Extensions.Enumerable:

Package Downloads
Soenneker.Utils.SingletonDictionary

An externally initializing singleton dictionary that uses double-check asynchronous locking, with optional async and sync disposal

Soenneker.Utils.String

A utility library for useful String operations

Soenneker.Extensions.Enumerable.String

A collection of helpful enumerable string extension methods

Soenneker.Utils.Process

A utility library implementing useful process operations

Soenneker.Swashbuckle.Authentication

A middleware implementing basic authentication and RBAC support for Swashbuckle (Swagger)

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
3.0.223 0 11/20/2024
3.0.222 0 11/20/2024
3.0.221 0 11/19/2024
3.0.220 0 11/19/2024
3.0.219 0 11/19/2024
3.0.218 0 11/19/2024
3.0.217 0 11/19/2024
3.0.216 0 11/19/2024
3.0.215 1,355 11/14/2024
3.0.214 691 11/14/2024
3.0.213 2,403 11/14/2024
3.0.212 633 11/14/2024
3.0.211 355 11/14/2024
3.0.210 2,555 11/14/2024
3.0.209 67 11/14/2024
3.0.208 2,058 11/14/2024
3.0.207 127 11/14/2024
2.1.206 6,942 11/13/2024
2.1.205 3,645 11/13/2024
2.1.204 10,844 11/9/2024
2.1.203 817 11/9/2024
2.1.202 2,128 11/9/2024
2.1.201 1,239 11/8/2024
2.1.200 1,036 11/8/2024
2.1.199 69 11/8/2024
2.1.198 1,868 11/8/2024
2.1.197 223 11/8/2024
2.1.196 4,590 11/8/2024
2.1.195 5,992 11/8/2024
2.1.194 13,142 11/1/2024
2.1.192 9,583 10/29/2024
2.1.191 10,336 10/28/2024
2.1.190 6,543 10/26/2024
2.1.189 8,615 10/22/2024
2.1.188 1,451 10/22/2024
2.1.187 1,034 10/22/2024
2.1.186 8,486 10/17/2024
2.1.185 6,177 10/15/2024
2.1.184 2,337 10/14/2024
2.1.183 6,835 10/11/2024
2.1.182 920 10/11/2024
2.1.181 539 10/11/2024
2.1.180 10,916 10/9/2024
2.1.179 892 10/8/2024
2.1.178 5,480 10/8/2024
2.1.177 822 10/8/2024
2.1.176 12,081 10/3/2024
2.1.175 3,696 10/3/2024
2.1.174 8,953 10/2/2024
2.1.173 2,687 10/2/2024
2.1.172 6,626 10/1/2024
2.1.171 1,765 10/1/2024
2.1.170 2,705 10/1/2024
2.1.169 7,576 9/29/2024
2.1.168 2,196 9/29/2024
2.1.167 1,601 9/29/2024
2.1.166 8,990 9/27/2024
2.1.165 5,250 9/27/2024
2.1.164 73 9/27/2024
2.1.163 275 9/27/2024
2.1.162 76 9/27/2024
2.1.161 7,881 9/26/2024
2.1.160 7,505 9/26/2024
2.1.159 6,909 9/26/2024
2.1.158 7,044 9/23/2024
2.1.157 3,256 9/23/2024
2.1.156 1,904 9/23/2024
2.1.155 2,002 9/23/2024
2.1.154 6,502 9/23/2024
2.1.153 708 9/23/2024
2.1.152 861 9/23/2024
2.1.151 69 9/23/2024
2.1.150 2,335 9/23/2024
2.1.149 11,724 9/17/2024
2.1.148 78 9/17/2024
2.1.147 400 9/17/2024
2.1.146 4,756 9/17/2024
2.1.145 4,147 9/17/2024
2.1.144 5,438 9/17/2024
2.1.143 85 9/17/2024
2.1.142 504 9/17/2024
2.1.141 1,201 9/17/2024
2.1.140 13,156 9/16/2024
2.1.139 7,474 9/12/2024
2.1.138 5,100 9/11/2024
2.1.137 3,060 9/11/2024
2.1.136 5,954 9/11/2024
2.1.135 4,869 9/11/2024
2.1.134 11,131 9/10/2024
2.1.133 2,327 9/10/2024
2.1.132 3,716 9/9/2024
2.1.131 4,086 9/9/2024
2.1.130 2,588 9/9/2024
2.1.129 1,223 9/9/2024
2.1.128 81 9/9/2024
2.1.127 88 9/9/2024
2.1.126 75 9/9/2024
2.1.125 16,768 9/6/2024
2.1.124 6,511 9/6/2024
2.1.123 3,351 9/5/2024
2.1.122 2,018 9/5/2024
2.1.121 4,099 9/5/2024
2.1.120 2,203 9/5/2024
2.1.119 75 9/5/2024
2.1.118 1,613 9/5/2024
2.1.117 5,877 9/5/2024
2.1.116 1,389 9/4/2024
2.1.115 12,027 9/3/2024
2.1.114 1,169 9/3/2024
2.1.113 4,915 9/3/2024
2.1.112 9,515 8/29/2024
2.1.111 6,696 8/26/2024
2.1.110 6,683 8/21/2024
2.1.109 3,803 8/21/2024
2.1.108 415 8/20/2024
2.1.107 4,715 8/20/2024
2.1.106 85 8/20/2024
2.1.105 4,786 8/20/2024
2.1.104 2,898 8/20/2024
2.1.103 9,033 8/15/2024
2.1.102 8,162 8/13/2024
2.1.101 7,806 8/6/2024
2.1.100 9,152 8/1/2024
2.1.99 541 8/1/2024
2.1.98 8,651 7/25/2024
2.1.97 1,042 7/25/2024
2.1.96 961 7/25/2024
2.1.95 621 7/24/2024
2.1.94 197 7/24/2024
2.1.93 8,924 7/20/2024
2.1.92 8,163 7/14/2024
2.1.91 2,207 7/14/2024
2.1.90 6,778 7/10/2024
2.1.89 210 7/10/2024
2.1.88 2,139 7/10/2024
2.1.87 2,023 7/10/2024
2.1.86 200 7/10/2024
2.1.85 187 7/10/2024
2.1.83 2,101 7/10/2024
2.1.82 3,204 7/9/2024
2.1.80 819 7/9/2024
2.1.79 1,238 7/9/2024
2.1.78 7,672 7/9/2024
2.1.77 3,023 7/9/2024
2.1.76 6,670 7/9/2024
2.1.75 97 7/9/2024
2.1.74 114 7/8/2024
2.1.73 94 7/8/2024
2.1.72 2,493 7/8/2024
2.1.71 81 7/8/2024
2.1.70 6,902 7/8/2024
2.1.69 2,253 7/7/2024
2.1.68 2,559 7/7/2024
2.1.67 656 7/7/2024
2.1.66 1,292 7/7/2024
2.1.65 3,009 7/7/2024
2.1.64 2,675 7/7/2024
2.1.63 93 7/7/2024
2.1.62 3,582 7/5/2024
2.1.61 72,625 5/25/2024
2.1.60 94 5/25/2024
2.1.59 506 5/25/2024
2.1.58 13,907 5/22/2024
2.1.57 98 5/22/2024
2.1.56 11,410 5/17/2024
2.1.55 15,856 4/30/2024
2.1.54 15,766 4/28/2024
2.1.53 103 4/28/2024
2.1.52 656 4/27/2024
2.1.51 93 4/27/2024
2.1.50 24,943 4/12/2024
2.1.49 1,337 4/12/2024
2.1.48 105 4/12/2024
2.1.47 36,794 3/18/2024
2.1.46 8,718 3/13/2024
2.1.45 2,251 3/13/2024
2.1.44 60,849 2/21/2024
2.1.43 2,717 2/21/2024
2.1.42 102 2/21/2024
2.1.41 21,674 2/16/2024
2.1.40 621 2/16/2024
2.1.39 23,727 2/9/2024
2.1.38 18,770 2/6/2024
2.1.37 109 2/6/2024
2.1.36 62,480 1/15/2024
2.1.35 815 1/15/2024
2.1.34 26,013 1/5/2024
2.1.33 2,425 1/5/2024
2.1.32 13,301 12/27/2023
2.1.31 1,315 12/27/2023
2.1.30 1,075 12/27/2023
2.1.29 7,807 12/25/2023
2.1.28 1,358 12/25/2023
2.1.27 669 12/25/2023
2.1.26 10,470 12/23/2023
2.1.25 121 12/23/2023
2.1.24 798 12/23/2023
2.1.23 20,543 12/9/2023
2.1.22 1,329 12/9/2023
2.1.21 240 12/9/2023
2.1.20 1,899 12/9/2023
2.1.19 10,773 12/4/2023
2.1.18 814 12/4/2023
2.1.17 5,411 11/26/2023
2.1.16 5,366 11/23/2023
2.1.15 331 11/23/2023
2.1.14 940 11/23/2023
2.1.13 9,369 11/19/2023
2.1.12 128 11/19/2023
2.1.11 1,186 11/18/2023
2.1.10 3,390 11/18/2023
2.1.9 1,932 11/18/2023
2.1.8 3,648 11/17/2023
2.1.7 1,064 11/17/2023
2.1.6 1,690 11/17/2023
2.1.5 868 11/17/2023
2.1.4 630 11/16/2023
2.1.3 174 11/16/2023
2.0.52 1,241 11/15/2023
2.0.51 2,121 11/15/2023
2.0.2 125 11/16/2023
2.0.1 132 11/16/2023
1.0.50 4,103 11/11/2023
1.0.49 115 11/11/2023
1.0.48 100 11/11/2023
1.0.47 1,329 11/9/2023
1.0.46 121 11/9/2023
1.0.45 5,181 11/6/2023
1.0.44 2,224 11/3/2023
1.0.43 1,808 11/2/2023
1.0.42 1,872 11/1/2023
1.0.41 7,471 10/18/2023
1.0.40 2,989 10/17/2023
1.0.39 1,235 10/16/2023
1.0.38 2,650 10/13/2023
1.0.37 146 10/13/2023
1.0.36 6,132 9/19/2023
1.0.35 2,030 9/18/2023
1.0.34 125 9/18/2023
1.0.33 7,651 8/30/2023
1.0.32 2,661 8/29/2023
1.0.31 4,146 8/24/2023
1.0.30 138 8/24/2023
1.0.29 4,326 8/17/2023
1.0.28 156 8/17/2023
1.0.27 8,013 8/7/2023
1.0.26 159 8/7/2023
1.0.25 7,962 7/10/2023
1.0.24 10,294 7/7/2023
1.0.23 156 7/7/2023
1.0.22 9,272 6/28/2023
1.0.21 44,274 5/24/2023
1.0.20 1,120 5/24/2023
1.0.19 396 5/23/2023
1.0.18 179 5/31/2023
1.0.17 2,730 5/23/2023
1.0.16 2,911 5/22/2023
1.0.15 5,934 5/17/2023
1.0.14 167 5/17/2023
1.0.13 5,568 4/28/2023
1.0.12 2,200 4/24/2023
1.0.11 951 4/21/2023
1.0.10 4,465 4/12/2023
1.0.9 1,057 4/11/2023
1.0.8 2,016 4/3/2023
1.0.7 221 4/3/2023
1.0.6 354 4/1/2023
1.0.5 1,997 3/23/2023
1.0.3 532 2/28/2023
1.0.2 436 2/16/2023