A serializable dictionary implementation, as Unity still can't serialize Dictionaries natively.
More...
Inherits Dictionary, and ISerializationCallbackReceiver.
Inherited by MoreMountains.Tools.DictionaryStringSceneData, and MoreMountains.Tools.DictionaryStringString.
|
List< TKey > | _keys = new List<TKey>() |
List< TValue > | _values = new List<TValue>() |
A serializable dictionary implementation, as Unity still can't serialize Dictionaries natively.
How to use :
For each type of dictionary you want to serialize, create a serializable class that inherits from MMSerializableDictionary, and override the constructor and the SerializationInfo constructor, like so (here with a string/int Dictionary) :
[Serializable] public class DictionaryStringInt : MMSerializableDictionary<string, int> { public DictionaryStringInt() : base() { } protected DictionaryStringInt(SerializationInfo info, StreamingContext context) : base(info, context) { } }
- Template Parameters
-
◆ MMSerializableDictionary() [1/2]
MoreMountains.Tools.MMSerializableDictionary< TKey, TValue >.MMSerializableDictionary |
( |
| ) |
|
◆ MMSerializableDictionary() [2/2]
MoreMountains.Tools.MMSerializableDictionary< TKey, TValue >.MMSerializableDictionary |
( |
SerializationInfo | info, |
|
|
StreamingContext | context ) |
◆ OnAfterDeserialize()
void MoreMountains.Tools.MMSerializableDictionary< TKey, TValue >.OnAfterDeserialize |
( |
| ) |
|
Loads our two lists to our dictionary.
- Exceptions
-
◆ OnBeforeSerialize()
void MoreMountains.Tools.MMSerializableDictionary< TKey, TValue >.OnBeforeSerialize |
( |
| ) |
|
We save the dictionary to our two lists.
◆ _keys
List<TKey> MoreMountains.Tools.MMSerializableDictionary< TKey, TValue >._keys = new List<TKey>() |
|
protected |
◆ _values
List<TValue> MoreMountains.Tools.MMSerializableDictionary< TKey, TValue >._values = new List<TValue>() |
|
protected |
The documentation for this class was generated from the following file: