namespace Elsa.Dsl.ElsaScript.Ast;
///
/// Represents a range-based for statement (e.g., for (var i = 0 to 10 step 1)).
///
public class ForNode : StatementNode
{
///
/// Whether this for loop declares a new variable (var present in header).
///
public bool DeclaresVariable { get; set; }
///
/// The loop variable name.
///
public string VariableName { get; set; } = null!;
///
/// The start value expression.
///
public ExpressionNode Start { get; set; } = null!;
///
/// The end value expression.
///
public ExpressionNode End { get; set; } = null!;
///
/// The step value expression.
///
public ExpressionNode Step { get; set; } = null!;
///
/// Whether the end value is inclusive (through) or exclusive (to).
///
public bool IsInclusive { get; set; }
///
/// The body statement.
///
public StatementNode Body { get; set; } = null!;
}