4#ifndef _Stroika_Foundation_Execution_ModuleInit_h_
5#define _Stroika_Foundation_Execution_ModuleInit_h_ 1
7#include "Stroika/Foundation/StroikaPreComp.h"
11#include "Stroika/Foundation/Common/Common.h"
12#include "Stroika/Foundation/Memory/Common.h"
19 class [[deprecated (
"Since Stroika v3.0d4 - use call_once or static inline")]] ModuleDependency {
21 ModuleDependency (
void (*start) (),
void (*end) ());
28 template <
typename MODULE_DATA>
29 class [[deprecated (
"Since Stroika v3.0d4 - use call_once or static inline")]] ModuleInitializer {
34 ~ModuleInitializer ();
49 static MODULE_DATA& Actual ();
57 static ModuleDependency GetDependency ();
60 alignas (
alignof (MODULE_DATA))
static byte sActualModuleInitializer_Storage_[
sizeof (MODULE_DATA)];
61 static inline uint16_t sInitCnt_{0};
71#include "ModuleInit.inl"
CONTAINER::value_type * End(CONTAINER &c)
For a contiguous container (such as a vector or basic_string) - find the pointer to the end of the co...
CONTAINER::value_type * Start(CONTAINER &c)
For a contiguous container (such as a vector or basic_string) - find the pointer to the start of the ...