Specs
Beautiful C++ Test Framework
Loading...
Searching...
No Matches
GROUP.h
Go to the documentation of this file.
1#pragma once
2
4
5#include "MacrosCore.h" // IWYU pragma: keep
6
7#define __SPEC_GROUP_BODY(symbol, specGroupDescription, count) \
8 inline void \
9 _GLOBAL_MACRO_FUNCTIONS_NEW_NAMED_FUNCTION_NAME_FROM_COUNT(symbol, count)(SpecsCpp:: \
10 ISpecGroup*); \
11 _GLOBAL_MACRO_FUNCTIONS_NEW_NAMED_FUNCTION_RUNNER_VARIABLE_NAME_FROM_COUNT(symbol, count){[]( \
12 ) { \
13 SpecsCpp::DSLs::GlobalInterface::define_group_fn( \
14 specGroupDescription, \
15 _GLOBAL_MACRO_FUNCTIONS_NEW_NAMED_FUNCTION_NAME_FROM_COUNT(symbol, count) \
16 ); \
17 }}; \
18 inline void _GLOBAL_MACRO_FUNCTIONS_NEW_NAMED_FUNCTION_NAME_FROM_COUNT(symbol, count)( \
19 [[maybe_unused]] SpecsCpp::ISpecGroup * current_group \
20 )
21
22#define _SPEC_GROUP(specGroupDescription) \
23 __SPEC_GROUP_BODY(_SPEC_GROUP_, specGroupDescription, __COUNTER__)