FastLED 3.9.15
Loading...
Searching...
No Matches

◆ insert_or_assign() [1/4]

template<typename Key, typename Value, typename Compare = less<Key>, typename Allocator = allocator_slab<char>>
template<typename M>
fl::pair< iterator, bool > fl::MapRedBlackTree< Key, Value, Compare, Allocator >::insert_or_assign ( const Key & key,
M && obj )
inline

Definition at line 1199 of file rbtree.h.

1199 {
1200 auto it = mTree.find(value_type(key, Value()));
1201 if (it != mTree.end()) {
1202 // Key exists, assign new value
1203 it->second = fl::forward<M>(obj);
1204 return fl::pair<iterator, bool>(it, false);
1205 } else {
1206 // Key doesn't exist, insert
1207 return mTree.insert(value_type(key, fl::forward<M>(obj)));
1208 }
1209 }
fl::pair< Key, Value > value_type
Definition rbtree.h:1002
constexpr T && forward(typename remove_reference< T >::type &t) FL_NOEXCEPT
Definition s16x16x4.h:234

Referenced by fl::MapRedBlackTree< Key, T, Compare, fl::allocator_slab< char > >< Key, T, Compare >::insert_or_assign(), and fl::MapRedBlackTree< Key, T, Compare, fl::allocator_slab< char > >< Key, T, Compare >::insert_or_assign().

+ Here is the caller graph for this function: