diff options
Diffstat (limited to '')
-rw-r--r-- | NW4RTools/Util/OrderedDictionary.cs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/NW4RTools/Util/OrderedDictionary.cs b/NW4RTools/Util/OrderedDictionary.cs index 98e523a..0463d33 100644 --- a/NW4RTools/Util/OrderedDictionary.cs +++ b/NW4RTools/Util/OrderedDictionary.cs @@ -171,6 +171,24 @@ namespace NW4RTools.Util return List[index].Key;
}
+ public TKey GetKeyForValue(TValue value) {
+ foreach (var kv in List) {
+ if (kv.Value.Equals(value))
+ return kv.Key;
+ }
+ throw new KeyNotFoundException();
+ }
+
+ public int GetIndexForValue(TValue value) {
+ int i = 0;
+ foreach (var kv in List) {
+ if (kv.Value.Equals(value))
+ return i;
+ i += 1;
+ }
+ throw new KeyNotFoundException();
+ }
+
/// <summary>
/// Inserts a new entry into the <see cref="OrderedDictionary{TKey,TValue}">OrderedDictionary<TKey,TValue></see> collection with the specified key and value at the specified index.
/// </summary>
|