Sha256: 8a3ec253927824bfb45173261daf0d63c70bb6561440f3103c21dab54f379eb2
Contents?: true
Size: 778 Bytes
Versions: 78
Compression:
Stored size: 778 Bytes
Contents
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Reflection; using Generators.Exercises; namespace Generators.Data { public class ExerciseCollection : IEnumerable<Exercise> { private readonly IEnumerable<Exercise> generators = GetDefinedGenerators(); public IEnumerator<Exercise> GetEnumerator() => generators.GetEnumerator(); IEnumerator IEnumerable.GetEnumerator() => GetEnumerator(); private static IEnumerable<Exercise> GetDefinedGenerators() => from type in Assembly.GetEntryAssembly().GetTypes() where typeof(Exercise).IsAssignableFrom(type) && !type.GetTypeInfo().IsAbstract select (Exercise)Activator.CreateInstance(type); } }
Version data entries
78 entries across 78 versions & 1 rubygems