public void Dispose() { _enumerator?.Dispose(); _src?.Dispose(); Heap.Return(_src); Heap.Return(this); _src = default; }
public IEnumerator <T> GetEnumerator() { var src = _src; _src = default; Heap.Return <EnumerableRef <T> >(this); return(Heap.Get <EnumeratorRef>().Init(src)); }
public IEnumerator <T> Init(PoolingListRef <T> src) { _src = src; _enumerator = _src.GetEnumerator(); return(this); }
public IEnumerable <T> Init(PoolingListRef <T> src) { _src = src; return(this); }