summaryrefslogtreecommitdiff
path: root/Emulator/Extensions.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Emulator/Extensions.cs')
-rw-r--r--Emulator/Extensions.cs23
1 files changed, 23 insertions, 0 deletions
diff --git a/Emulator/Extensions.cs b/Emulator/Extensions.cs
new file mode 100644
index 0000000..3cc980d
--- /dev/null
+++ b/Emulator/Extensions.cs
@@ -0,0 +1,23 @@
+namespace Q1.Emulator;
+
+using System.Collections.Generic;
+
+public static class Extensions
+{
+ public static IEnumerable<int> AllIndexesOf<T>(this IEnumerable<T> arr, T q)
+ {
+ var indexes = new List<int>();
+ int index = 0;
+
+ foreach (var item in arr)
+ {
+ if (EqualityComparer<T>.Default.Equals(item, q))
+ {
+ indexes.Add(index);
+ }
+ index++;
+ }
+
+ return indexes;
+ }
+} \ No newline at end of file