protected BaseFlagEnum(TVal val2, IEnumStepGenerator generator = null) : this(StartValue++, val2, generator) { if (val2 == null) { throw new ArgumentNullException("Flag enum can not has null value"); } }
protected BaseFlagEnum(int id, TVal val2, IEnumStepGenerator generator = null) : base(generator?.NextStep(id) ?? id, val2) { }