#nullable enable using System.Collections.Generic; namespace MorgSimulator.Framework { public class EntityIterator : IEntityIterator where T : Entity { private readonly List _entities; private int _currentIndex = 0; public EntityIterator(List entities) { _entities = entities; } public bool HasNext() { return _currentIndex < _entities.Count; } public T? Next() { if (!HasNext()) return null; return _entities[_currentIndex++]; } public void Reset() { _currentIndex = 0; } } } #nullable disable