Class RelaxedReadOnlyDictionary<T, K>
- Namespace
- Vintagestory.API.Util
- Assembly
- VintagestoryAPI.dll
public class RelaxedReadOnlyDictionary<T, K> : IDictionary<T, K>, ICollection<KeyValuePair<T, K>>, IEnumerable<KeyValuePair<T, K>>, IEnumerable
Type Parameters
T
K
- Inheritance
-
RelaxedReadOnlyDictionary<T, K>
- Implements
-
IDictionary<T, K>ICollection<KeyValuePair<T, K>>IEnumerable<KeyValuePair<T, K>>
- Inherited Members
- Extension Methods
Constructors
RelaxedReadOnlyDictionary(IDictionary<T, K>)
public RelaxedReadOnlyDictionary(IDictionary<T, K> values)
Parameters
values
IDictionary<T, K>
Properties
Count
Gets the number of elements contained in the ICollection<T>.
public int Count { get; }
Property Value
- int
The number of elements contained in the ICollection<T>.
IsReadOnly
Gets a value indicating whether the ICollection<T> is read-only.
public bool IsReadOnly { get; }
Property Value
- bool
true if the ICollection<T> is read-only; otherwise, false.
this[T]
Gets or sets the element with the specified key.
public K this[T key] { get; set; }
Parameters
key
TThe key of the element to get or set.
Property Value
- K
The element with the specified key.
Exceptions
- ArgumentNullException
key
is null.- KeyNotFoundException
The property is retrieved and
key
is not found.- NotSupportedException
The property is set and the IDictionary<TKey, TValue> is read-only.
Keys
Gets an ICollection<T> containing the keys of the IDictionary<TKey, TValue>.
public ICollection<T> Keys { get; }
Property Value
- ICollection<T>
An ICollection<T> containing the keys of the object that implements IDictionary<TKey, TValue>.
Values
Gets an ICollection<T> containing the values in the IDictionary<TKey, TValue>.
public ICollection<K> Values { get; }
Property Value
- ICollection<K>
An ICollection<T> containing the values in the object that implements IDictionary<TKey, TValue>.
Methods
Add(KeyValuePair<T, K>)
Adds an item to the ICollection<T>.
public void Add(KeyValuePair<T, K> item)
Parameters
item
KeyValuePair<T, K>The object to add to the ICollection<T>.
Exceptions
- NotSupportedException
The ICollection<T> is read-only.
Add(T, K)
Adds an element with the provided key and value to the IDictionary<TKey, TValue>.
public void Add(T key, K value)
Parameters
key
TThe object to use as the key of the element to add.
value
KThe object to use as the value of the element to add.
Exceptions
- ArgumentNullException
key
is null.- ArgumentException
An element with the same key already exists in the IDictionary<TKey, TValue>.
- NotSupportedException
The IDictionary<TKey, TValue> is read-only.
Clear()
Removes all items from the ICollection<T>.
public void Clear()
Exceptions
- NotSupportedException
The ICollection<T> is read-only.
Contains(KeyValuePair<T, K>)
Determines whether the ICollection<T> contains a specific value.
public bool Contains(KeyValuePair<T, K> item)
Parameters
item
KeyValuePair<T, K>The object to locate in the ICollection<T>.
Returns
- bool
true if
item
is found in the ICollection<T>; otherwise, false.
ContainsKey(T)
Determines whether the IDictionary<TKey, TValue> contains an element with the specified key.
public bool ContainsKey(T key)
Parameters
key
TThe key to locate in the IDictionary<TKey, TValue>.
Returns
- bool
true if the IDictionary<TKey, TValue> contains an element with the key; otherwise, false.
Exceptions
- ArgumentNullException
key
is null.
CopyTo(KeyValuePair<T, K>[], int)
Copies the elements of the ICollection<T> to an Array, starting at a particular Array index.
public void CopyTo(KeyValuePair<T, K>[] array, int arrayIndex)
Parameters
array
KeyValuePair<T, K>[]The one-dimensional Array that is the destination of the elements copied from ICollection<T>. The Array must have zero-based indexing.
arrayIndex
intThe zero-based index in
array
at which copying begins.
Exceptions
- ArgumentNullException
array
is null.- ArgumentOutOfRangeException
arrayIndex
is less than 0.- ArgumentException
The number of elements in the source ICollection<T> is greater than the available space from
arrayIndex
to the end of the destinationarray
.
GetEnumerator()
Returns an enumerator that iterates through the collection.
public IEnumerator<KeyValuePair<T, K>> GetEnumerator()
Returns
- IEnumerator<KeyValuePair<T, K>>
An enumerator that can be used to iterate through the collection.
Remove(KeyValuePair<T, K>)
Removes the first occurrence of a specific object from the ICollection<T>.
public bool Remove(KeyValuePair<T, K> item)
Parameters
item
KeyValuePair<T, K>The object to remove from the ICollection<T>.
Returns
- bool
true if
item
was successfully removed from the ICollection<T>; otherwise, false. This method also returns false ifitem
is not found in the original ICollection<T>.
Exceptions
- NotSupportedException
The ICollection<T> is read-only.
Remove(T)
Removes the element with the specified key from the IDictionary<TKey, TValue>.
public bool Remove(T key)
Parameters
key
TThe key of the element to remove.
Returns
- bool
true if the element is successfully removed; otherwise, false. This method also returns false if
key
was not found in the original IDictionary<TKey, TValue>.
Exceptions
- ArgumentNullException
key
is null.- NotSupportedException
The IDictionary<TKey, TValue> is read-only.
TryGetValue(T, out K)
Gets the value associated with the specified key.
public bool TryGetValue(T key, out K value)
Parameters
key
TThe key whose value to get.
value
KWhen this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the
value
parameter. This parameter is passed uninitialized.
Returns
- bool
true if the object that implements IDictionary<TKey, TValue> contains an element with the specified key; otherwise, false.
Exceptions
- ArgumentNullException
key
is null.