Iros
 
Loading...
Searching...
No Matches
tree_set.h
Go to the documentation of this file.
1#pragma once
2
6
7namespace di::container {
9
10template<typename Tag = DefaultIntrusiveTreeSetTag>
12
13template<typename Self>
14struct IntrusiveTreeSetTag : IntrusiveTagBase<IntrusiveTreeSetNode<Self>> {};
15
16struct DefaultIntrusiveTreeSetTag : IntrusiveTreeSetTag<DefaultIntrusiveTreeSetTag> {};
17
18template<typename T, typename Tag = DefaultIntrusiveTreeSetTag, concepts::StrictWeakOrder<T> Comp = function::Compare>
20 : public RBTree<T, Comp, Tag,
21 IntrusiveSetInterface<IntrusiveTreeSet<T, Tag, Comp>, T, IntrusiveTreeSetNode<Tag>,
22 RBTreeIterator<T, Tag>, meta::ConstIterator<RBTreeIterator<T, Tag>>,
23 detail::RBTreeValidForLookup<T, Comp>::template Type, false>,
24 false> {};
25
26template<typename T, typename Tag = DefaultIntrusiveTreeSetTag, concepts::StrictWeakOrder<T> Comp = function::Compare>
28 : public RBTree<T, Comp, Tag,
29 IntrusiveSetInterface<IntrusiveTreeMultiSet<T, Tag, Comp>, T, IntrusiveTreeSetNode<Tag>,
30 RBTreeIterator<T, Tag>, meta::ConstIterator<RBTreeIterator<T, Tag>>,
31 detail::RBTreeValidForLookup<T, Comp>::template Type, true>,
32 true> {};
33}
34
35namespace di {
40}
Definition tree_set.h:32
Definition tree_set.h:24
Definition sequence.h:12
RBTreeNode< Tag > IntrusiveTreeSetNode
Definition tree_set.h:11
Definition zstring_parser.h:9
Definition intrusive_tag_base.h:8
Definition tree_set.h:14
Definition rb_tree_node.h:9