static_assert(NodeConcept<UserClass>, \
"Your Node must define a full Meta struct and implement init, run and cleanup function! See 'NodeConcept' for more detail. ' " \
); \
\
K_THREAD_STACK_DEFINE(_stack_##UserClass, UserClass::Meta::stack_size); \
\
static struct k_thread _thread_data_##UserClass;\
\
static void _launcher_##UserClass(void) { \
UserClass::start_impl(&_thread_data_##UserClass, _stack_##UserClass); \
} \
\
STRUCT_SECTION_ITERABLE(node_desc, _desc_##UserClass) ={ \
.name = UserClass::Meta::name, \
.thread_id_ptr = &UserClass::tid_storage, \
.start_func = &_launcher_##UserClass \
}