|
Any++
|
Macros to define trait 's and any 's. More...
Macros | |
| #define | TRAIT_EX_(n, BASE, l, static_fns, typedefs, decoration) |
| TRAIT derived from base with decoration. Macro to define the functional behavior for a any, where the behavior of base is inherited. The decoration are additional functions and typedefs (in brackets). | |
| #define | TRAIT_(n, BASE, l) |
| TRAIT derived from base. | |
| #define | TRAIT(n, fns) |
| Macro to define the functional behavior for an any. | |
| #define | TRAIT_EX(n, ...) |
| TRAIT with decoration. | |
| #define | TRAIT_TEMPLATE_EX_(t, n, base, base_template_types, l, static_fns, typedefs, decoration) |
| TRAIT template with base and decoration. | |
| #define | TRAIT_TEMPLATE_EX(t, n, l, static_fns, typedefs, decoration) |
| TRAIT template with decoration. | |
| #define | TRAIT_TEMPLATE_(t, n, base, base_template_types, l) |
| TRAIT template with a base TRAIT.(. | |
| #define | TRAIT_TEMPLATE(t, n, l) |
| TRAIT template. | |
| #define | ANY_META_FUNCTION(pure_template_params, any_template_params_with_defaults, n) |
| #define | __detail_ANYXX_ANY_CMF(t, t_with_defaults, n) |
| #define | __detail_ANYXX_ANY_EX_(n, proxy_default) |
| #define | ANY_EX_(n, BASE, l, proxy_default, decoration) |
| ANY with a base and decorationSee ANY for explanation. | |
| #define | ANY_EX(n, l, proxy_default, decoration) |
| ANY with decorationSee ANY for explanation. | |
| #define | ANY_(n, BASE, l, proxy_default) |
| ANY with a baseSee ANY for explanation. | |
| #define | ANY(n, l, ...) |
| Simple ANY macro. | |
| #define | __detail_ANYXX_ANY_TEMPLATE_CMF(t, n, proxy_default) |
| #define | ANY_TEMPLATE_(t, n, BASE, bt, l, proxy_default) |
| ANY template with a base.See ANY for explanation. | |
| #define | ANY_TEMPLATE_EX_(t, n, BASE, bt, l, proxy_default, decoration) |
| ANY template with a base and decoration.See ANY for explanation. | |
| #define | ANY_TEMPLATE(t, n, l, proxy_default) |
| ANY template.See ANY for explanation. | |
| #define | ANY_TEMPLATE_EX(t, n, l, proxy_default, static_fns, typedefs, decoration) |
| #define | ANY_FN_PURE(ret, name, params, const_) |
| TRAIT function, which must be provided by the model. | |
| #define | ANY_FN_PURE_EXACT(ret, name, params, const_) |
| TRAIT function, which must be provided by the model. | |
| #define | ANY_FN_DEF(access, ret, name, params, const_, ...) |
| TRAIT function with default behavior. | |
| #define | ANY_FN_EXACT(ret, name, params, const_) |
| TRAIT function whose default behavior is to call an equally named member function of the model. | |
| #define | ANY_FN_STATIC_PURE(template_params, return_type, name, params, ...) |
| Static TRAIT function, which must be provided by the model. This function will NOT go into the v-Table ad is only avalable for the using_ Proxy. | |
| #define | ANY_FN_STATIC_DEF(template_params, return_type, name, params, ...) |
| Static TRAIT function, which has a default implementation. This function will NOT go into the v-Table ad is only avalable for the using_ und trait_class Proxy. | |
| #define | ANY_TYPE(...) |
| Dependent type definition in a TRAIT. This is useful for defining associated types, e.g. Return typs using_ Proxy. | |
Macros to define trait 's and any 's.
Name conventions:
Syntax:
TRAIT[_TEMPLATE][_EX][_] ([template_types], name, [base, base_template_types,] function_list[,(decoration)])
ANY[_TEMPLATE][_EX][_] ([template_types], name, [base, base_template_types,] function_list[,(decoration)])
| #define __detail_ANYXX_ANY_CMF | ( | t, | |
| t_with_defaults, | |||
| n ) |
| #define __detail_ANYXX_ANY_EX_ | ( | n, | |
| proxy_default ) |
| #define __detail_ANYXX_ANY_TEMPLATE_CMF | ( | t, | |
| n, | |||
| proxy_default ) |
| #define ANY | ( | n, | |
| l, | |||
| ... ) |
Simple ANY macro.
The ANY macro uses TRAIT macros to define the functional behavior of an any. Additionally, it defines the proxy to be used (default_proxy). The default proxy is val. Example:
is equivalent to:
| #define ANY_ | ( | n, | |
| BASE, | |||
| l, | |||
| proxy_default ) |
ANY with a baseSee ANY for explanation.
| #define ANY_EX | ( | n, | |
| l, | |||
| proxy_default, | |||
| decoration ) |
| #define ANY_EX_ | ( | n, | |
| BASE, | |||
| l, | |||
| proxy_default, | |||
| decoration ) |
ANY with a base and decorationSee ANY for explanation.
| #define ANY_FN_DEF | ( | access, | |
| ret, | |||
| name, | |||
| params, | |||
| const_, | |||
| ... ) |
TRAIT function with default behavior.
| #define ANY_FN_EXACT | ( | ret, | |
| name, | |||
| params, | |||
| const_ ) |
TRAIT function whose default behavior is to call an equally named member function of the model.
| #define ANY_FN_PURE | ( | ret, | |
| name, | |||
| params, | |||
| const_ ) |
TRAIT function, which must be provided by the model.
| #define ANY_FN_PURE_EXACT | ( | ret, | |
| name, | |||
| params, | |||
| const_ ) |
TRAIT function, which must be provided by the model.
| #define ANY_FN_STATIC_DEF | ( | template_params, | |
| return_type, | |||
| name, | |||
| params, | |||
| ... ) |
Static TRAIT function, which has a default implementation. This function will NOT go into the v-Table ad is only avalable for the using_ und trait_class Proxy.
| #define ANY_FN_STATIC_PURE | ( | template_params, | |
| return_type, | |||
| name, | |||
| params, | |||
| ... ) |
Static TRAIT function, which must be provided by the model. This function will NOT go into the v-Table ad is only avalable for the using_ Proxy.
| #define ANY_META_FUNCTION | ( | pure_template_params, | |
| any_template_params_with_defaults, | |||
| n ) |
| #define ANY_TEMPLATE | ( | t, | |
| n, | |||
| l, | |||
| proxy_default ) |
ANY template.See ANY for explanation.
| #define ANY_TEMPLATE_ | ( | t, | |
| n, | |||
| BASE, | |||
| bt, | |||
| l, | |||
| proxy_default ) |
ANY template with a base.See ANY for explanation.
| #define ANY_TEMPLATE_EX | ( | t, | |
| n, | |||
| l, | |||
| proxy_default, | |||
| static_fns, | |||
| typedefs, | |||
| decoration ) |
| #define ANY_TEMPLATE_EX_ | ( | t, | |
| n, | |||
| BASE, | |||
| bt, | |||
| l, | |||
| proxy_default, | |||
| decoration ) |
ANY template with a base and decoration.See ANY for explanation.
| #define ANY_TYPE | ( | ... | ) |
Dependent type definition in a TRAIT. This is useful for defining associated types, e.g. Return typs using_ Proxy.
| template_params | template parameters for the type definition |
| name | name of the type definition |
| erased | type to be used in the erased context, to simpliy usage. |
| default_ | default type definition. Used undefined to request specification in the model_map |
| #define TRAIT | ( | n, | |
| fns ) |
Macro to define the functional behavior for an any.
Example:
| #define TRAIT_ | ( | n, | |
| BASE, | |||
| l ) |
| #define TRAIT_EX | ( | n, | |
| ... ) |
TRAIT with decoration.
Macro to define the functional behavior for a any, with decorations. Decorations are additional functions and typedefs (in brackets).
| #define TRAIT_EX_ | ( | n, | |
| BASE, | |||
| l, | |||
| static_fns, | |||
| typedefs, | |||
| decoration ) |
TRAIT derived from base with decoration. Macro to define the functional behavior for a any, where the behavior of base is inherited. The decoration are additional functions and typedefs (in brackets).
| #define TRAIT_TEMPLATE | ( | t, | |
| n, | |||
| l ) |
| #define TRAIT_TEMPLATE_ | ( | t, | |
| n, | |||
| base, | |||
| base_template_types, | |||
| l ) |
TRAIT template with a base TRAIT.(.
| #define TRAIT_TEMPLATE_EX | ( | t, | |
| n, | |||
| l, | |||
| static_fns, | |||
| typedefs, | |||
| decoration ) |
TRAIT template with decoration.
| #define TRAIT_TEMPLATE_EX_ | ( | t, | |
| n, | |||
| base, | |||
| base_template_types, | |||
| l, | |||
| static_fns, | |||
| typedefs, | |||
| decoration ) |
TRAIT template with base and decoration.
Macro to define the functional behavior for a any, with decorations. Decorations are additional functions and typedefs (in brackets).