| File: CastingEnumerator.cs | Web Access |
| Project: src\src\Controls\src\Core\Controls.Core.csproj (Microsoft.Maui.Controls) |
#nullable disable using System.Collections; using System.Collections.Generic; namespace Microsoft.Maui.Controls { internal sealed class CastingEnumerator<T, TFrom> : IEnumerator<T> where T : class where TFrom : class { readonly IEnumerator<TFrom> _enumerator; bool _disposed; public CastingEnumerator(IEnumerator<TFrom> enumerator) { _enumerator = enumerator; } public void Dispose() { if (_disposed) return; _disposed = true; _enumerator.Dispose(); } object IEnumerator.Current { get { return Current; } } public bool MoveNext() { return _enumerator.MoveNext(); } public void Reset() { _enumerator.Reset(); } public T Current { get { return _enumerator.Current as T; } } } }