11#pragma once
22
3- namespace lib_interval_tree ::hooks
3+ namespace lib_interval_tree
44{
5- struct no_hook_state
6- {};
7-
8- struct regular
5+ namespace hooks
96 {
10- using node_type = void ;
11- using size_type = void ;
12- using hook_state = no_hook_state;
7+ struct no_hook_state
8+ {};
9+
10+ struct regular
11+ {
12+ using node_type = void ;
13+ using size_type = void ;
14+ using hook_state = no_hook_state;
1315
14- template <typename tree_type>
15- static inline void on_destroy (tree_type& tree) noexcept
16- {}
16+ template <typename tree_type>
17+ static inline void on_destroy (tree_type& tree) noexcept
18+ {}
1719
18- template <typename tree_type>
19- static inline void on_after_insert (tree_type& tree, typename tree_type::node_type* node) noexcept
20- {}
20+ template <typename tree_type>
21+ static inline void on_after_insert (tree_type& tree, typename tree_type::node_type* node) noexcept
22+ {}
2123
22- template <typename tree_type>
23- static inline void on_before_insert_fixup (tree_type& tree, typename tree_type::node_type* node) noexcept
24- {}
24+ template <typename tree_type>
25+ static inline void on_before_insert_fixup (tree_type& tree, typename tree_type::node_type* node) noexcept
26+ {}
2527
26- template <typename tree_type>
27- static inline void on_after_insert_fixup (tree_type& tree, typename tree_type::node_type* node) noexcept
28- {}
28+ template <typename tree_type>
29+ static inline void on_after_insert_fixup (tree_type& tree, typename tree_type::node_type* node) noexcept
30+ {}
2931
30- template <typename tree_type>
31- static inline void on_before_erase_fixup (
32- tree_type& tree,
33- typename tree_type::node_type* node,
34- typename tree_type::node_type* node_parent,
35- bool other_is_left_child
36- ) noexcept
37- {}
32+ template <typename tree_type>
33+ static inline void on_before_erase_fixup (
34+ tree_type& tree,
35+ typename tree_type::node_type* node,
36+ typename tree_type::node_type* node_parent,
37+ bool other_is_left_child
38+ ) noexcept
39+ {}
3840
39- template <typename tree_type>
40- static inline void on_after_erase_fixup (
41- tree_type& tree,
42- typename tree_type::node_type* node,
43- typename tree_type::node_type* node_parent,
44- bool other_is_left_child
45- ) noexcept
46- {}
41+ template <typename tree_type>
42+ static inline void on_after_erase_fixup (
43+ tree_type& tree,
44+ typename tree_type::node_type* node,
45+ typename tree_type::node_type* node_parent,
46+ bool other_is_left_child
47+ ) noexcept
48+ {}
4749
48- template <typename tree_type>
49- static inline void on_before_recalculate_max (tree_type& tree, typename tree_type::node_type* node) noexcept
50- {}
50+ template <typename tree_type>
51+ static inline void on_before_recalculate_max (tree_type& tree, typename tree_type::node_type* node) noexcept
52+ {}
5153
52- template <typename tree_type>
53- static inline void on_after_recalculate_max (tree_type& tree, typename tree_type::node_type* node) noexcept
54- {}
54+ template <typename tree_type>
55+ static inline void on_after_recalculate_max (tree_type& tree, typename tree_type::node_type* node) noexcept
56+ {}
5557
56- template <typename tree_type, typename compare_function_type>
57- static inline void on_find (
58- tree_type const & tree,
59- typename tree_type::node_type* node,
60- typename tree_type::interval_type const & ival,
61- compare_function_type compare
62- ) noexcept
63- {}
58+ template <typename tree_type, typename compare_function_type>
59+ static inline void on_find (
60+ tree_type const & tree,
61+ typename tree_type::node_type* node,
62+ typename tree_type::interval_type const & ival,
63+ compare_function_type compare
64+ ) noexcept
65+ {}
6466
65- template <typename tree_type, typename compare_function_type>
66- static inline void on_find_all (
67- tree_type const & tree,
68- typename tree_type::node_type* node,
69- typename tree_type::interval_type const & ival,
70- compare_function_type compare
71- ) noexcept
72- {}
67+ template <typename tree_type, typename compare_function_type>
68+ static inline void on_find_all (
69+ tree_type const & tree,
70+ typename tree_type::node_type* node,
71+ typename tree_type::interval_type const & ival,
72+ compare_function_type compare
73+ ) noexcept
74+ {}
7375
74- template <typename tree_type>
75- static inline void on_overlap_find (
76- tree_type const & tree,
77- typename tree_type::node_type* node,
78- typename tree_type::interval_type const & ival
79- ) noexcept
80- {}
76+ template <typename tree_type>
77+ static inline void on_overlap_find (
78+ tree_type const & tree,
79+ typename tree_type::node_type* node,
80+ typename tree_type::interval_type const & ival
81+ ) noexcept
82+ {}
8183
82- template <typename tree_type>
83- static inline void on_overlap_find_all (
84- tree_type const & tree,
85- typename tree_type::node_type* node,
86- typename tree_type::interval_type const & ival
87- ) noexcept
88- {}
89- };
84+ template <typename tree_type>
85+ static inline void on_overlap_find_all (
86+ tree_type const & tree,
87+ typename tree_type::node_type* node,
88+ typename tree_type::interval_type const & ival
89+ ) noexcept
90+ {}
91+ };
92+ }
9093}
0 commit comments