1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-10 12:32:20 +02:00

Added IEnumerable<T> to arrays

This commit is contained in:
Brian Fiete 2021-01-20 11:44:07 -08:00
parent d0cfb37309
commit 3f35ef51f2

View file

@ -211,7 +211,7 @@ namespace System
}
[Ordered]
class Array1<T> : Array
class Array1<T> : Array, IEnumerable<T>
{
T mFirstElement;
@ -325,7 +325,7 @@ namespace System
}
[Ordered]
class Array2<T> : Array
class Array2<T> : Array, IEnumerable<T>
{
int_arsize mLength1;
T mFirstElement;
@ -426,6 +426,11 @@ namespace System
return &mFirstElement;
}
public Span<T>.Enumerator GetEnumerator()
{
return .(.(&mFirstElement, mLength));
}
protected override void GCMarkMembers()
{
for (int i = 0; i < mLength; i++)
@ -436,7 +441,7 @@ namespace System
}
[Ordered]
class Array3<T> : Array
class Array3<T> : Array, IEnumerable<T>
{
int_arsize mLength1;
int_arsize mLength2;
@ -542,6 +547,11 @@ namespace System
return &mFirstElement;
}
public Span<T>.Enumerator GetEnumerator()
{
return .(.(&mFirstElement, mLength));
}
protected override void GCMarkMembers()
{
for (int i = 0; i < mLength; i++)
@ -552,7 +562,7 @@ namespace System
}
[Ordered]
class Array4<T> : Array
class Array4<T> : Array, IEnumerable<T>
{
int_arsize mLength1;
int_arsize mLength2;
@ -663,6 +673,11 @@ namespace System
return &mFirstElement;
}
public Span<T>.Enumerator GetEnumerator()
{
return .(.(&mFirstElement, mLength));
}
protected override void GCMarkMembers()
{
for (int i = 0; i < mLength; i++)