aboutsummaryrefslogtreecommitdiff
path: root/absl/container/internal/common_policy_traits.h
Commit message (Collapse)AuthorAgeFilesLines
* Switch rank structs to be consistent with written guidance in ↵Matt Kulukundis2024-02-071-9/+10
| | | | | | | go/ranked-overloads PiperOrigin-RevId: 605125821 Change-Id: I2ee260eaf283acafd80abfd2b7419a0e9f597a78
* Early return from destroy_slots for trivially destructible types in ↵Abseil Team2024-01-301-2/+10
| | | | | | | flat_hash_{*}. PiperOrigin-RevId: 602813933 Change-Id: I744fe438281755a141b2fd47e54ab9c6c0fad5a3
* Make PolicyTraits::transfer_uses_memcpy() true for node_hash_* tables.Evan Brown2023-09-121-2/+4
| | | | | | | This should enable binary size savings for now and more efficiency improvements with small buffer optimization. PiperOrigin-RevId: 564741270 Change-Id: Icf204d88256243eb60464439a52dd589d7a559cb
* Fix some spelling mistakesVertexwahn2023-04-241-1/+1
|
* Move the vtable into a function to delay instantiation until the function isSamuel Benzaquen2022-12-011-14/+31
| | | | | | | | | | | | | called. When the variable is a global the compiler is allowed to instantiate it more aggresively and it might happen before the types involved are complete. When it is inside a function the compiler can't instantiate it until after the functions are called. Remove an unused member from the vtable. Replace transfer_slot_fn with a generic function when relocation is available to reduce duplication. PiperOrigin-RevId: 492227302 Change-Id: I07499f63b91c59c0ae42402683387c7b84a6f0ee
* Add static_cast<void*> to the sources for trivial relocations to avoid ↵Evan Brown2022-10-071-2/+3
| | | | | | | spurious -Wdynamic-class-memaccess errors in the presence of other compilation errors. PiperOrigin-RevId: 479625866 Change-Id: Ia10ad35a2f58ffb3f36f996d357d5e126b181e1c
* Use trivial relocation for transfers in swisstable and b-tree.Evan Brown2022-10-031-1/+14
| | | | | PiperOrigin-RevId: 478547898 Change-Id: Ie20cd0a49df042be912888ee238333a5f5fa0404
* Add common_policy_traits - a subset of hash_policy_traits that can be shared ↵Evan Brown2022-09-281-0/+101
between raw_hash_set and btree. Also remove the transfer implementations from btree_set.h and flat_hash_set.h, which are equivalent to the default implementations. Motivation: this will simplify upcoming changes related to trivial relocation. PiperOrigin-RevId: 477493403 Change-Id: I75babef4c93dec3a8105f86c58af54199bb1ec9c