FastLED
3.10.8
Loading...
Searching...
No Matches
◆
try_emplace()
[1/2]
template<typename
Key
, typename T, typename
Hash
= Hash<Key>, typename KeyEqual = EqualTo<Key>, int INLINED_COUNT = FASTLED_HASHMAP_INLINED_COUNT>
template<typename... Args>
pair
<
iterator
, bool >
fl::unordered_map
<
Key
, T,
Hash
, KeyEqual, INLINED_COUNT >::try_emplace
(
const
Key
&
k
,
Args &&...
args
)
inline
Definition at line
488
of file
unordered_map.h
.
488
{
489
const
bool
will_rehash
=
needs_rehash
();
490
if
(
will_rehash
) {
491
if
(
_tombstones
>
_size
) {
492
rehash_inline_no_resize
();
493
}
else
{
494
rehash_internal
(
_buckets
.size() * 2);
495
}
496
}
497
fl::size
idx
;
498
bool
is_new
;
499
fl::pair<fl::size, bool>
p
=
find_slot
(
k
);
500
idx
=
p
.first;
501
is_new
=
p
.second;
502
if
(
is_new
) {
503
// Key doesn't exist, construct in place
504
_buckets
[
idx
].key =
k
;
505
_buckets
[
idx
].value =
T
(
fl::forward<Args>
(
args
)...);
506
mark_occupied
(
idx
);
507
++
_size
;
508
}
509
// If not new, key already exists - don't construct value, just return existing iterator
510
return
{
iterator
(
this
,
idx
),
is_new
};
511
}
fl::unordered_map::rehash_internal
void rehash_internal(fl::size new_cap) FL_NO_EXCEPT
Definition
unordered_map.h:914
fl::unordered_map::needs_rehash
bool needs_rehash() const FL_NO_EXCEPT
Definition
unordered_map.h:319
fl::unordered_map::_buckets
fl::vector_inlined< Entry, INLINED_COUNT > _buckets
Definition
unordered_map.h:1045
fl::unordered_map::_size
fl::size _size
Definition
unordered_map.h:1046
fl::unordered_map::mark_occupied
void mark_occupied(fl::size idx) FL_NO_EXCEPT
Definition
unordered_map.h:816
fl::unordered_map::rehash_inline_no_resize
FL_DISABLE_WARNING_PUSH FL_DISABLE_WARNING_NULL_DEREFERENCE void rehash_inline_no_resize() FL_NO_EXCEPT
Definition
unordered_map.h:939
fl::unordered_map::find_slot
pair< fl::size, bool > find_slot(const Key &key) const FL_NO_EXCEPT
Definition
unordered_map.h:848
fl::unordered_map::_tombstones
fl::size _tombstones
Definition
unordered_map.h:1047
fl::unordered_map
Definition
unordered_map.h:59
fl::unordered_map::iterator
Definition
unordered_map.h:188
fl
unordered_map
Generated on Sun Oct 18 2026 00:57:09 for FastLED by
1.13.2