8
8
// Created by Hedzr Yeh on 2021/10/25.
9
9
//
10
10
11
- #include " undo_cxx.hh"
11
+ #include " undo_cxx/undo-log .hh"
12
12
13
- #include < iomanip>
14
- #include < iostream>
15
- #include < math.h>
16
13
#include < string>
17
14
18
- #include < functional>
19
- #include < memory>
20
- #include < random>
21
-
22
- #include < deque>
23
15
#include < list>
24
16
#include < optional>
25
- #include < queue>
26
- #include < stack>
27
- #include < vector>
28
17
29
- namespace dp { namespace undo { namespace basic {
18
+ namespace dp :: undo:: basic {
30
19
31
20
/* *
32
21
* @brief memento POJO container
@@ -51,9 +40,9 @@ namespace dp { namespace undo { namespace basic {
51
40
dbg_print (" . restore memento state : %s" , undo_cxx::to_string (*ret).c_str ());
52
41
return ret;
53
42
}
54
- auto size () const { return _saved_states.size (); }
55
- bool empty () const { return _saved_states.empty (); }
56
- bool can_pop () const { return !empty (); }
43
+ [[nodiscard]] auto size () const { return _saved_states.size (); }
44
+ [[nodiscard]] bool empty () const { return _saved_states.empty (); }
45
+ [[nodiscard]] bool can_pop () const { return !empty (); }
57
46
58
47
private:
59
48
std::list<State> _saved_states;
@@ -101,20 +90,18 @@ namespace dp { namespace undo { namespace basic {
101
90
}
102
91
};
103
92
104
- }}} // namespace dp::undo::basic
105
- namespace dp { namespace undo { namespace bugs {
106
- int v_int = 0 ;
107
- }}} // namespace dp::undo::bugs
108
-
109
- void test_undo_basic () {
110
- using namespace dp ::undo::basic;
111
- caretaker<std::string> c;
112
- c.run ();
113
- }
93
+ } // namespace dp::undo::basic
94
+ namespace {
95
+ static int v_int = 0 ;
114
96
97
+ static void test_undo_basic () {
98
+ using namespace dp ::undo::basic;
99
+ caretaker<std::string> c;
100
+ c.run ();
101
+ }
102
+ } // namespace
115
103
int main () {
104
+ test_undo_basic ();
116
105
117
- test_undo_basic ();
118
-
119
- return 0 ;
106
+ return v_int;
120
107
}
0 commit comments