diff options
author | Bardur Arantsson <bardur@scientician.net> | 2015-02-23 09:11:55 +0100 |
---|---|---|
committer | Bardur Arantsson <bardur@scientician.net> | 2015-02-23 09:11:55 +0100 |
commit | 062cd07342edc2b003555e90dd2cee0514b9f64a (patch) | |
tree | 3c73893dae8a9380c9f24e9c5822c5ec6bf671d5 /vendor/bandit/bandit/registration | |
parent | ffee481435ac0afe3f9a5a3eb07b2f2a46467089 (diff) |
Add BanditCpp 1.1.4 test harness
Diffstat (limited to 'vendor/bandit/bandit/registration')
-rw-r--r-- | vendor/bandit/bandit/registration/registrar.h | 19 | ||||
-rw-r--r-- | vendor/bandit/bandit/registration/registration.h | 7 | ||||
-rw-r--r-- | vendor/bandit/bandit/registration/spec_registry.h | 17 |
3 files changed, 43 insertions, 0 deletions
diff --git a/vendor/bandit/bandit/registration/registrar.h b/vendor/bandit/bandit/registration/registrar.h new file mode 100644 index 00000000..55d36255 --- /dev/null +++ b/vendor/bandit/bandit/registration/registrar.h @@ -0,0 +1,19 @@ +#ifndef BANDIT_REGISTRAR_H +#define BANDIT_REGISTRAR_H + +namespace bandit { namespace detail { + + struct spec_registrar + { + spec_registrar( bandit::detail::voidfunc_t func) + { + bandit::detail::specs().push_back(func); + } + }; + +}} + +#define go_bandit \ + static bandit::detail::spec_registrar bandit_registrar + +#endif diff --git a/vendor/bandit/bandit/registration/registration.h b/vendor/bandit/bandit/registration/registration.h new file mode 100644 index 00000000..ad3f8b06 --- /dev/null +++ b/vendor/bandit/bandit/registration/registration.h @@ -0,0 +1,7 @@ +#ifndef BANDIT_REGISTRATION_H +#define BANDIT_REGISTRATION_H + +#include <bandit/registration/spec_registry.h> +#include <bandit/registration/registrar.h> + +#endif diff --git a/vendor/bandit/bandit/registration/spec_registry.h b/vendor/bandit/bandit/registration/spec_registry.h new file mode 100644 index 00000000..50c35402 --- /dev/null +++ b/vendor/bandit/bandit/registration/spec_registry.h @@ -0,0 +1,17 @@ +#ifndef BANDIT_SPEC_REGISTRY_H +#define BANDIT_SPEC_REGISTRY_H + +namespace bandit { + namespace detail { + typedef std::list<voidfunc_t> spec_registry; + + inline detail::spec_registry& specs() + { + static detail::spec_registry registry; + return registry; + } + } + +} + +#endif |