carb::dictionary::overwriteOriginalWithArrayHandling
Defined in carb/dictionary/DictionaryUtils.h
- 
inline UpdateAction carb::dictionary::overwriteOriginalWithArrayHandling(const Item *dstItem, ItemType dstItemType, const Item *srcItem, ItemType srcItemType, void *dictionaryInterface)
- Helper function for IDictionary::update() that ensures arrays are properly overwritten. - Remark - This is intended to be used as the OnUpdateItemFn callback function for the IDictionary::update() function when the handling of merging array items is potentially needed. When this is used, the IDictionary interface object must be passed into the userData parameter of IDictionary::update(). - Thread Safety
- This operation is thread safe. However, this call isn’t expected to be used directly, but rather through the IDictionary::update() function. The overall thread safety of that operation should be noted instead. 
 - Parameters
- dstItem – [in] The destination dictionary item for the merge operation. This may be - nullptrif the destination item doesn’t already exist in the tree (ie: a new item is being merged into the tree).
- dstItemType – [in] The data type of the item - dstItem. If- dstItemis- nullptr, this will be ItemType::eCount.
- srcItem – [in] The source dictionary item for the merge operation. This will never be - nullptr. This will be the new value or node that is being merged into the dictionary tree.
- srcItemType – [in] The data type of the item - srcItem.
- dictionaryInterface – [in] The IDictionary interface to use when merging the new item into the dictionary tree. This is expected to be passed into the userData parameter for IDictionary::update(). 
 
- Returns
- an UpdateAction value indicating how the merge operation should proceed.