public static Unsafe8Array<T1> Create<T1>(IReadOnlyList<T1> agents) where T1 : unmanaged {
#if DEBUG
            if ((uint)(agents.Count - 1) > 7) throw new ArgumentOutOfRangeException();
#endif
            Unsafe8Array<T1> result = new Unsafe8Array<T1>();
            int i = 0;
            for (; i < agents.Count; ++i)
                result[i] = agents[i];
            return result;
        }
        public static Unsafe8Array<T1> Create<T1>(params T1[] agents) where T1 : unmanaged
        {
#if DEBUG
            if ((uint)(agents.Length - 1) > 7) throw new ArgumentOutOfRangeException();
#endif
            Unsafe8Array<T1> result = new Unsafe8Array<T1>();
            int i = 0;
            for (; i < agents.Length; ++i)
                result[i] = agents[i];
            return result;
        }
 public static unsafe bool Equals(Unsafe8Array<VelocityPoint> x, Unsafe8Array<VelocityPoint> y, int size)
     => EqualsBase((ulong*)Unsafe.AsPointer(ref x), (ulong*)Unsafe.AsPointer(ref y), size);
 internal Unsafe8ArrayEnumerator(Unsafe8Array <T> ary, int Count)
 {
     parent       = ary;
     count        = Count;
     currentIndex = -1;
 }
Beispiel #5
0
 internal Unsafe8ArrayEnumerable(Unsafe8Array <T> ary, int Count)
 {
     parent = ary;
     count  = Count;
 }