Sha256: b578dd1225eb3521125081d6b668b78899e04e173231dffe6138f22844723acd

Contents?: true

Size: 569 Bytes

Versions: 263

Compression:

Stored size: 569 Bytes

Contents

using System.Collections;

public static class Flattener
{
    public static IEnumerable Flatten(IEnumerable input)
    {
        foreach (var element in input)
        {
            var enumerable = element as IEnumerable;
            if (enumerable != null)
            {
                foreach (var flattenedElement in Flatten(enumerable))
                {
                    yield return flattenedElement;
                }
            }
            else if (element != null)
            {
                yield return element;
            }
        }
    }
}

Version data entries

263 entries across 263 versions & 1 rubygems

Version Path
trackler-2.1.0.27 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.26 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.25 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.24 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.23 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.22 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.21 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.20 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.19 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.18 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.17 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.16 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.15 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.14 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.13 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.12 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.11 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.10 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.9 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.1.0.8 tracks/csharp/exercises/flatten-array/Example.cs