Subject | Hash | Author | Date (UTC) |
---|---|---|---|
check_traverse_while_traverse | 13fd698a0986a46dbde2f886435cf0313679640f | mbusenitz | 2015-02-27 05:17:49 |
fix test | 0d8478c8650285983253d655b5254701a6d9302b | mbusenitz | 2015-02-26 21:03:12 |
batch test | e6f780a6e37191ea0ed22fe35fff421a770860bc | mbusenitz | 2015-02-26 20:39:03 |
Squashed 'test/plank/' changes from 09a9867..3962f58 | f2f24b430e4b39687cbbc6f0ffcce4d5e08f96de | mbusenitz | 2015-02-26 20:36:05 |
master rough pass | 8e41bfcd72b69abe79d69e73a1d13f1e2e9b1e39 | mbusenitz | 2015-02-26 19:42:41 |
master rename | 0822dbbdba16f539d088d3b60320da32f688ebce | mbusenitz | 2015-02-26 06:11:15 |
master first pass | a15417f304e070121e34272eaedf1e51fce5f1fd | mbusenitz | 2015-02-26 06:00:11 |
Squashed 'test/plank/' content from commit 09a9867 | 486e835d9a925e450abfb6dfce9437e808b5cf0f | mbusenitz | 2015-02-26 05:29:41 |
init | 4d1b6b27cb5dc364239073fa755a549b817031b9 | mbusenitz | 2015-02-26 05:29:35 |
File | Lines added | Lines deleted |
---|---|---|
src/batch.hxx | 1 | 1 |
test/src/batch.h | 20 | 2 |
test/src/main.cpp | 2 | 1 |
File src/batch.hxx changed (mode: 100644) (index 867065e..0083c80) | |||
... | ... | namespace om636 | |
80 | 80 | for_each( batch.begin(), batch.end(), [&](pointer_type p) { | for_each( batch.begin(), batch.end(), [&](pointer_type p) { |
81 | 81 | if (!p->is_dead()) | if (!p->is_dead()) |
82 | 82 | { | { |
83 | m_elements.insert(p); | ||
84 | 83 | p->invoke(); | p->invoke(); |
84 | m_elements.insert(p); | ||
85 | 85 | } | } |
86 | 86 | } ); | } ); |
87 | 87 | } | } |
File test/src/batch.h changed (mode: 100644) (index 3cd81ab..40ce76d) | |||
1 | 1 | using namespace om636; | using namespace om636; |
2 | 2 | using namespace std; | using namespace std; |
3 | 3 | ||
4 | typedef std::function<void()> callback_type; | ||
5 | typedef control::Batch<callback_type> batch_type; | ||
6 | |||
7 | void check_traverse_while_traverse() | ||
8 | { | ||
9 | batch_type batch; | ||
10 | unsigned passed(0); | ||
11 | |||
12 | auto p( batch.hook( [&](){ | ||
13 | ++passed; | ||
14 | batch.traverse(); | ||
15 | } ) ); | ||
16 | |||
17 | batch.traverse(); | ||
18 | |||
19 | ASSERT( passed == 1 ); | ||
20 | FOOTER; | ||
21 | } | ||
22 | |||
4 | 23 | void check_traverse() | void check_traverse() |
5 | 24 | { | { |
6 | typedef std::function<void()> callback_type; | ||
7 | control::Batch<callback_type> batch; | ||
25 | batch_type batch; | ||
8 | 26 | unsigned passed(0); | unsigned passed(0); |
9 | 27 | ||
10 | 28 | auto temp(batch.hook( [&](){ | auto temp(batch.hook( [&](){ |
File test/src/main.cpp changed (mode: 100644) (index 56add23..4b5568e) | |||
9 | 9 | ||
10 | 10 | int main(int argc, const char * argv[]) | int main(int argc, const char * argv[]) |
11 | 11 | { | { |
12 | check_traverse(); | ||
12 | check_traverse(); | ||
13 | check_traverse_while_traverse(); | ||
13 | 14 | return 0; | return 0; |
14 | 15 | } | } |