Lines Matching refs:flat_tree
82 class flat_tree {
133 flat_tree();
134 explicit flat_tree(const key_compare& comp);
137 flat_tree(InputIterator first,
142 flat_tree(const flat_tree&);
143 flat_tree(flat_tree&&) noexcept = default;
145 flat_tree(std::vector<value_type> items,
149 flat_tree(std::initializer_list<value_type> ilist,
153 ~flat_tree();
160 flat_tree& operator=(const flat_tree&);
161 flat_tree& operator=(flat_tree&&);
163 flat_tree& operator=(std::initializer_list<value_type> ilist);
181 // clear() leaves the capacity() of the flat_tree unchanged.
212 // Insertion of one element can take O(size). Capacity of flat_tree grows in
215 // NOTE: Prefer to build a new flat_tree from a std::vector (or similar)
304 void swap(flat_tree& other) noexcept;
306 friend bool operator==(const flat_tree& lhs, const flat_tree& rhs) {
310 friend bool operator!=(const flat_tree& lhs, const flat_tree& rhs) {
314 friend bool operator<(const flat_tree& lhs, const flat_tree& rhs) {
318 friend bool operator>(const flat_tree& lhs, const flat_tree& rhs) {
322 friend bool operator>=(const flat_tree& lhs, const flat_tree& rhs) {
326 friend bool operator<=(const flat_tree& lhs, const flat_tree& rhs) {
330 friend void swap(flat_tree& lhs, flat_tree& rhs) noexcept { lhs.swap(rhs); }
379 const flat_tree& as_const() { return *this; }
473 // state of flat_tree and using private inheritance to store compare lets us
500 flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::flat_tree() = default;
503 flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::flat_tree(
509 flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::flat_tree(
519 flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::flat_tree(
520 const flat_tree&) = default;
523 flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::flat_tree(
532 flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::flat_tree(
536 : flat_tree(std::begin(ilist), std::end(ilist), dupe_handling, comp) {}
539 flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::~flat_tree() = default;
545 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::operator=(
546 const flat_tree&) -> flat_tree& = default;
549 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::operator=(flat_tree&&)
550 -> flat_tree& = default;
553 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::operator=(
554 std::initializer_list<value_type> ilist) -> flat_tree& {
564 void flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::reserve(
570 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::capacity() const
576 void flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::shrink_to_fit() {
584 void flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::clear() {
589 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::size() const
595 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::max_size() const
601 bool flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::empty() const {
609 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::begin() -> iterator {
614 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::begin() const
620 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::cbegin() const
626 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::end() -> iterator {
631 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::end() const
637 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::cend() const
643 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::rbegin()
649 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::rbegin() const
655 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::crbegin() const
661 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::rend()
667 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::rend() const
673 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::crend() const
685 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::insert(
691 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::insert(
697 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::insert(
705 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::insert(
715 void flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::insert(
779 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::emplace(Args&&... args)
786 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::emplace_hint(
796 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::erase(
802 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::erase(
809 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::erase(const K& val)
818 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::erase(
828 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::key_comp() const
834 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::value_comp() const
844 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::count(
852 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::find(const K& key)
859 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::find(
867 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::equal_range(
875 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::equal_range(
888 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::lower_bound(
895 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::lower_bound(
909 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::upper_bound(
916 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::upper_bound(
932 void flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::swap(
933 flat_tree& other) noexcept {
939 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::unsafe_emplace(
947 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::emplace_key_args(
958 auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::emplace_hint_key_args(
978 // the GetKeyFromValue template parameter to flat_tree for this case.
995 void EraseIf(base::internal::flat_tree<Key, Value, GetKeyFromValue, KeyCompare>&