operator []= method
void
operator []=(
- TKey key,
- Object? value
)
Implementation
operator []=(TKey key, Object? value) {
if (value == null) {
this._InternalRemoveItem(key);
} else {
// If the item was to be deleted, the deletion becomes an update.
if (this._removedItems.remove(key)) {
_InternalAddItemToChangeList(key, this._modifiedItems);
} else {
// If the property value was not set, we have a newly set property.
if (!this.ContainsKey(key)) {
_InternalAddItemToChangeList(key, this._addedItems);
} else {
// The last case is that we have a modified property.
if (!this._modifiedItems.contains(key)) {
_InternalAddItemToChangeList(key, this._modifiedItems);
}
}
}
this._items[key] = value;
this._Changed();
}
}