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.2.1.25 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.24 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.23 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.22 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.21 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.20 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.19 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.18 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.17 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.16 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.15 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.14 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.13 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.12 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.11 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.10 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.9 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.8 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.7 tracks/csharp/exercises/flatten-array/Example.cs
trackler-2.2.1.6 tracks/csharp/exercises/flatten-array/Example.cs