List of commits:
Subject Hash Author Date (UTC)
cleanup 2e46ef599e15758ba6c5f071be163cb870cb6547 mucbuc 2020-02-16 16:32:19
rename elemements to impl_ref 7bf7fbda736a73f86fa460194873cceadca51009 mucbuc 2020-02-16 13:49:38
example doc a65ae924d3426c7de7cb4f3c8e29c8180acf6fde mucbuc 2020-02-13 14:40:59
format source 0288bc49240445da1dd0013feb6e2d157d8a5cea mucbuc 2020-02-13 14:35:16
example builds 701303d8c13b423195f3f0e43c8e5d26af5360c8 mucbuc 2020-02-13 14:33:01
circuit update 6b334746c8f61dbeb8707a9045b83d01ce7259de mucbuc 2020-02-12 13:36:57
interface 8aaad13bc18270477139d6144771cebdba2928d6 mucbuc 2020-01-23 05:38:16
hook_once e800fa98f37b99f456e0f474d2a95eac87dbe020 mucbuc 2020-01-20 17:22:05
twice_size => circuit 07e34c75c67aa4ccaed56d26357bb29f75914005 mucbuc 2020-01-20 12:09:43
reset agent and check before callback 9ce516c3b921eb0e853b17119a4960fdf3936dcf mucbuc 2020-01-19 06:57:31
include statement 2c33dfbb947f7aafd05413b78dea3a0c036cf91b mucbuc 2020-01-17 10:29:01
formating 99ddddbf993037c4bdc573c149b28db242ac0862 mucbuc 2020-01-17 05:30:56
invoke_once b6ee37d690063e31b0300fdef0319d26293f0532 mucbuc 2020-01-17 05:29:52
remove agent 31359a9da855067033433f4310d172dadc813f28 mucbuc 2020-01-16 12:55:13
formati 13721c73e8d359eab3f32a030a35a42b83a341f0 mucbuc 2020-01-16 12:40:00
fix tests 343e081bf929c31592f835b279e5e4cd2c149539 mucbuc 2020-01-16 12:37:58
strip interface 991fc85aa55fc6f1d08fe94673840c14f2087ea8 mucbuc 2020-01-16 05:44:55
*break* circuit poc 26840f5e3ecca09bc113cb42fff5275c9213e0ae mucbuc 2020-01-14 11:32:23
add circuit 0cc2be277c7c0bdd4026e056292cc2d6f4150195 mucbuc 2020-01-14 11:30:23
formating d0c058639d2aec3f3e8f94da64e03e316d1c0914 mucbuc 2020-01-14 11:04:33
Commit 2e46ef599e15758ba6c5f071be163cb870cb6547 - cleanup
Author: mucbuc
Author date (UTC): 2020-02-16 16:32
Committer name: mucbuc
Committer date (UTC): 2020-02-16 16:32
Parent(s): 7bf7fbda736a73f86fa460194873cceadca51009
Signing key:
Tree: 7eb0ad7cee4beb8ef2e21edf160d3cdcd2a9f1a6
File Lines added Lines deleted
src/impl/batch.hxx 11 8
File src/impl/batch.hxx changed (mode: 100644) (index ba4b49c..e261b80)
... ... namespace control {
4 4 template <typename... T> template <typename... T>
5 5 auto BatchImpl<T...>::hook(function_type callback) -> agent_type auto BatchImpl<T...>::hook(function_type callback) -> agent_type
6 6 { {
7 auto agent(std::make_shared<function_type>(callback));
8 impl_ref().push(std::make_tuple<pointer_type, bool>(agent, true));
7 using namespace std;
8 auto agent(make_shared<function_type>(callback));
9 impl_ref().push(make_tuple<pointer_type, bool>(agent, true));
9 10 return agent; return agent;
10 11 } }
11 12
 
... ... namespace control {
13 14 template <typename... T> template <typename... T>
14 15 auto BatchImpl<T...>::hook_once(function_type callback) -> agent_type auto BatchImpl<T...>::hook_once(function_type callback) -> agent_type
15 16 { {
16 auto agent(std::make_shared<function_type>(callback));
17 impl_ref().push(std::make_tuple<pointer_type, bool>(agent, false));
17 using namespace std;
18 auto agent(make_shared<function_type>(callback));
19 impl_ref().push(make_tuple<pointer_type, bool>(agent, false));
18 20 return agent; return agent;
19 21 } }
20 22
 
... ... namespace control {
22 24 template <typename... T> template <typename... T>
23 25 void BatchImpl<T...>::invoke(T... arg) void BatchImpl<T...>::invoke(T... arg)
24 26 { {
27 using namespace std;
25 28 batch_type traverse; batch_type traverse;
26 29 traverse.swap(impl_ref()); traverse.swap(impl_ref());
27 30 tuple_type agent; tuple_type agent;
28 31 while (traverse.check_pop(agent)) { while (traverse.check_pop(agent)) {
29 agent_type s(std::get<0>(agent).lock());
32 agent_type s(get<0>(agent).lock());
30 33 if (s) { if (s) {
31 34 (*s)(arg...); (*s)(arg...);
32 35 } }
33 s = std::get<0>(agent).lock();
34 if (s && std::get<1>(agent)) {
35 impl_ref().push(std::move(agent));
36 s = get<0>(agent).lock();
37 if (s && get<1>(agent)) {
38 impl_ref().push(move(agent));
36 39 } }
37 40 } }
38 41 } }
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/mucbuc/dynamo

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/mucbuc/dynamo

Clone this repository using git:
git clone git://git.rocketgit.com/user/mucbuc/dynamo

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main