public void RemoveTest() { var arr = UnsafeList.Allocate <int>(10); for (int i = 1; i <= 10; i++) { UnsafeList.Add(arr, i); } Assert.AreEqual(10, UnsafeList.GetCount(arr)); UnsafeList.RemoveAt(arr, 4); //Remove number 5 Assert.AreEqual(9, UnsafeList.GetCount(arr)); int offs = 0; for (int i = 1; i < 10; i++) { if (i == 5) { offs++; //Skip previously removed 5 } var num = UnsafeList.Get <int>(arr, i - 1); Assert.AreEqual(i + offs, num); } }
public bool MoveNext() { if (++_index <= size) { _current = _list.Get(_index); return(true); } return(false); }
public T this[int index] { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return(UnsafeList.Get <T>(m_inner, index)); } [MethodImpl(MethodImplOptions.AggressiveInlining)] set { UnsafeList.Set(m_inner, index, value); } }
public void MutateTest() { var arr = UnsafeList.Allocate <int>(10); for (int i = 0; i < 10; i++) { UnsafeList.Add(arr, i); } for (int i = 0; i < 10; i++) { Assert.AreEqual(i, UnsafeList.Get <int>(arr, i)); } UnsafeList.Free(arr); }