// ForLoop Node Implementation
//
// NOTE: ForLoop is implemented directly in interpreter.rs (not as a modular NodeImpl)
// because it requires stack-based execution to handle loop iterations.
//
// The interpreter implementation (interpreter.rs:468):
// 1. Evaluates the "count" input to determine max_iterations
// 2. Pushes an ExecutionFrame::Loop onto the execution stack
// 3. The stack frame manages:
//    - Current iteration counter
//    - Loop body execution (via "body" exec pin)
//    - Index output (via "index" data pin)
//    - Completion (via "completed" exec pin when done)
//
// This approach allows proper loop control flow without recursion,
// enabling features like break/continue in the future.
//
// See interpreter.rs execute_node() for the full implementation.

pub struct ForLoopNode;

impl super::super::framework::NodeDescription for ForLoopNode {
    fn description(&self) -> &str {
        "Loops a specific number of times. Implementation is in interpreter.rs using stack-based execution."
    }
}
