/// <summary> /// Conditional constructor for the initial if condition. /// </summary> /// <param name="condition"> /// A function with <see cref="bool" /> return type used to determine if a statement satisfies a /// condition. This is the initial if statement. /// </param> /// <param name="method"> /// The action to invoke if <paramref name="condition" /> results in a <see langword="true" /> value /// </param> public Conditional([NotNull] Func <bool> condition, [NotNull] Action method) { if (condition is null) { throw new ArgumentNullException(nameof(condition)); } if (method is null) { throw new ArgumentNullException(nameof(method)); } IfCondition = new ConditionalIf(condition, method); }
internal void AddElseIf(Func <bool> condition, Action method) { if (method is null) { throw new ArgumentNullException(nameof(method)); } if (ElseIf is null) { ElseIf = new ConditionalIf(condition, method); } else { ElseIf.AddElseIf(condition, method); } }