/// <summary> /// Yields each single flag within the parameter /// </summary> /// <param name="flags">Defines the flag to be 'splitted'</param> /// <returns></returns> public static IEnumerable <Enum> GetFlags(CubeFlag flags) { foreach (Enum value in Enum.GetValues(flags.GetType())) { if (flags.HasFlag(value)) { yield return(value); } } }
/// <summary> /// Yields each single flag within the parameter /// </summary> /// <param name="flags">Defines the flag to be 'splitted'</param> /// <returns></returns> public static IEnumerable<Enum> GetFlags(CubeFlag flags) => Enum.GetValues(flags.GetType()).Cast<Enum>().Where(flags.HasFlag);
/// <summary> /// Yields each single flag within the parameter /// </summary> /// <param name="flags">Defines the flag to be 'splitted'</param> /// <returns></returns> public static IEnumerable<Enum> GetFlags(CubeFlag flags) { foreach (Enum value in Enum.GetValues(flags.GetType())) { if (flags.HasFlag(value)) yield return value; } }