welder
0.1.0
Bindings for annotated C++ types, from C++26 reflection
Toggle main menu visibility
Loading...
Searching...
No Matches
module.hpp
Go to the documentation of this file.
1
#pragma once
5
6
namespace
welder::inline v0 {
7
namespace
detail {
8
17
template
<
class
Default,
class
... Override>
18
struct
module_welder
{
19
using
type
= Default;
20
};
21
template
<
class
Default,
class
First,
class
... Rest>
22
struct
module_welder
<Default, First, Rest...> {
23
using
type
= First;
24
};
25
template
<
class
Default,
class
... Override>
26
using
module_welder_t
=
typename
module_welder
<Default, Override...>::type;
27
28
}
// namespace detail
29
}
// namespace welder
30
78
#define WELDER_MODULE(ns, rod, ...) \
79
WELDER_DETAIL_MODULE_ENTRY_##rod(ns __VA_OPT__(, ) __VA_ARGS__)
welder::detail
The stored forms of the annotation vocabulary.
Definition
annotations.hpp:99
welder::detail::module_welder_t
typename module_welder< Default, Override... >::type module_welder_t
Definition
module.hpp:26
welder
Definition
annotations.hpp:18
welder::detail::module_welder< Default, First, Rest... >::type
First type
Definition
module.hpp:23
welder::detail::module_welder
Pick the entry macro's welder: the user's optional override, else the rod's default welder::welder<ro...
Definition
module.hpp:18
welder::detail::module_welder::type
Default type
Definition
module.hpp:19
src
welder
module.hpp
Generated by
1.17.0