ae2f_docs
SlpSHADER.auto.h
Go to the documentation of this file.
1#define ae2fVK_AnnSlpSHADER \
2/** include detected */\
3/** Path cursor */\
4/* Opening: ./cl/Slp.auto.cl.impl */\
5/** first fp: 0x55f881217330 */\
6/** Current ./cl/Slp.auto.cl.impl */\
7/** Dir ./cl/ */\
8/** Found something. Now let's validate. */\
9/** It's not repeating */\
10/******************** */\
11/* Now the path will be: */
12 /*./cl/Slp.auto.cl.impl */ \
13"#undef\t__ae2f_MACRO_GENERATED\n"\
14"#define\t__ae2f_MACRO_GENERATED\t1\n"\
15"#define ae2f_NEED_CLASS 0\n"\
16"\n"\
17"#if __ae2f_MACRO_GENERATED\n"\
18"#define ae2fVK_clspv_IS_OPENCL 1\n"\
19"#endif\n"\
20"\n"\
21"/** include detected */ \\\n"\
22"/** Path cursor */ \\\n"\
23"/* Opening: ./Slp.auto.h */ \\\n"\
24"/** first fp: 0x55e37e257330 */ \\\n"\
25"/** Current ./Slp.auto.h */ \\\n"\
26"/** Dir ./ */ \\\n"\
27"/** Found something. Now let\'s validate. */ \\\n"\
28"/** It\'s not repeating */ \\\n"\
29"/******************** */\\\n"\
30"/* Now the path will be: */ \\\n"\
31" /*./Slp.auto.h */ \\\n"\
32"#undef\t__ae2f_MACRO_GENERATED\n"\
33"#define\t__ae2f_MACRO_GENERATED\t1\n"\
34"#ifndef Slp_h\n"\
35"#define Slp_h\n"\
36"\n"\
37"#define ae2f_NEED_CLASS 0\n"\
38"\n"\
39"/** include detected */ \\\n"\
40"/** Path cursor */ \\\n"\
41"/* Opening: ./ae2fVK/clspv_clkeys.h */ \\\n"\
42"/** first fp: (nil) */ \\\n"\
43"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2fVK/clspv_clkeys.h */ \\\n"\
44"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2fVK/clspv_clkeys.h */ \\\n"\
45"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2fVK/clspv_clkeys.h */ \\\n"\
46"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2fVK/ */ \\\n"\
47"/** Found something. Now let\'s validate. */ \\\n"\
48"/** It\'s not repeating */ \\\n"\
49"/******************** */\\\n"\
50"/* Now the path will be: */ \\\n"\
51" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2fVK/clspv_clkeys.h */ \\\n"\
52"#ifndef ae2fVK_clspv_clkeys_h\n"\
53"#define ae2fVK_clspv_clkeys_h\n"\
54"\n"\
55"#ifndef ae2fVK_clspv_IS_OPENCL\n"\
56"#define ae2fVK_clspv_IS_OPENCL 0\n"\
57"#endif\n"\
58"\n"\
59"#if ae2fVK_clspv_IS_OPENCL\n"\
60"\n"\
61"#define ae2f_CL(...)\t__VA_ARGS__\n"\
62"#define ae2f_NCL(...)\n"\
63"\n"\
64"#else\n"\
65"\n"\
66"#define ae2f_CL(...)\n"\
67"#define ae2f_NCL(...)\t__VA_ARGS__\n"\
68"\n"\
69"/** include detected */ \\\n"\
70"/** Path cursor */ \\\n"\
71"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2fVK/stddef.h */ \\\n"\
72"/** first fp: (nil) */ \\\n"\
73"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stddef.h */ \\\n"\
74"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stddef.h */ \\\n"\
75"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
76"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
77"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stddef.h */ \\\n"\
78"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstddef.h */ \\\n"\
79"/** Failed but ignoring it. */ \\\n"\
80"\n"\
81"/** include detected */ \\\n"\
82"/** Path cursor */ \\\n"\
83"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2fVK/stdint.h */ \\\n"\
84"/** first fp: (nil) */ \\\n"\
85"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stdint.h */ \\\n"\
86"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stdint.h */ \\\n"\
87"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdint.h */ \\\n"\
88"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdint.h */ \\\n"\
89"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stdint.h */ \\\n"\
90"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstdint.h */ \\\n"\
91"/** Failed but ignoring it. */ \\\n"\
92"\n"\
93"\n"\
94"#define __kernel\n"\
95"#define __global\n"\
96"#define __constant\n"\
97"#define __local\n"\
98"\n"\
99"#endif\n"\
100"\n"\
101"#define int8_t\t\tae2f_CL(char)\tae2f_NCL(int8_t)\n"\
102"#define uint8_t\t\tae2f_CL(uchar)\tae2f_NCL(uint8_t)\n"\
103"#define uchar\t\tae2f_CL(uchar)\tae2f_NCL(uint8_t)\n"\
104"\n"\
105"#define int16_t\t\tae2f_CL(short)\tae2f_NCL(int16_t)\n"\
106"#define uint16_t\tae2f_CL(ushort)\tae2f_NCL(uint16_t)\n"\
107"#define ushort\t\tae2f_CL(ushort)\tae2f_NCL(uint16_t)\n"\
108"\n"\
109"#define int32_t\t\tae2f_CL(int)\tae2f_NCL(int32_t)\n"\
110"#define uint32_t\tae2f_CL(uint)\tae2f_NCL(uint32_t)\n"\
111"#define uint\t\tae2f_CL(uint)\tae2f_NCL(uint32_t)\n"\
112"\n"\
113"#define int64_t\t\tae2f_CL(long)\tae2f_NCL(int64_t)\n"\
114"#define uint64_t\tae2f_CL(ulong)\tae2f_NCL(uint64_t)\n"\
115"#define ulong\t\tae2f_CL(ulong)\tae2f_NCL(uint64_t)\n"\
116"\n"\
117"#define size_t\tuint\n"\
118"\n"\
119"#if !ae2fVK_clspv_IS_OPENCL\n"\
120"uint get_work_dim();\n"\
121"size_t get_global_size(uint dimindx);\n"\
122"size_t get_global_id(uint dimindx);\n"\
123"size_t get_local_size(uint dimindx);\n"\
124"size_t get_enqueued_local_size( uint dimindx);\n"\
125"size_t get_local_id(uint dimindx);\n"\
126"size_t get_num_groups(uint dimindx);\n"\
127"size_t get_global_offset(uint dimindx);\n"\
128"size_t get_group_id(uint dimindx);\n"\
129"size_t get_global_linear_id();\n"\
130"size_t get_local_linear_id();\n"\
131"\n"\
132"typedef enum cl_mem_fence_flags {\n"\
133"\tCLK_LOCAL_MEM_FENCE =\t0b01,\n"\
134"\tCLK_GLOBAL_MEM_FENCE =\t0b10\n"\
135"} cl_mem_fence_flags;\n"\
136"\n"\
137"void barrier(cl_mem_fence_flags flags);\n"\
138"\n"\
139"#endif\n"\
140"\n"\
141"/** @brief Contains both LOCAL and GLOBAL */\n"\
142"#define CLK_ALL_MEM_FENCE\t(CLK_LOCAL_MEM_FENCE | CLK_GLOBAL_MEM_FENCE)\n"\
143"\n"\
144"#define work_group_reduce_add(x) 0\n"\
145"\n"\
146"#endif\n"\
147"/** One eof gracefully */ \\\n"\
148"\n"\
149"#undef __ae2f_MACRO_GENERATED\n"\
150"#define __ae2f_MACRO_GENERATED 1\n"\
151"/** include detected */ \\\n"\
152"/** Path cursor */ \\\n"\
153"/* Opening: ./ae2f/Ann/Slp.core.h */ \\\n"\
154"/** first fp: (nil) */ \\\n"\
155"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Slp.core.h */ \\\n"\
156"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Slp.core.h */ \\\n"\
157"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ */ \\\n"\
158"/** Found something. Now let\'s validate. */ \\\n"\
159"/** It\'s not repeating */ \\\n"\
160"/******************** */\\\n"\
161"/* Now the path will be: */ \\\n"\
162" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Slp.core.h */ \\\n"\
163"#ifndef ae2f_Ann_Slp_Core_h\n"\
164"#define ae2f_Ann_Slp_Core_h\n"\
165"\n"\
166"/** include detected */ \\\n"\
167"/** Path cursor */ \\\n"\
168"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Float.h */ \\\n"\
169"/** first fp: (nil) */ \\\n"\
170"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Float.h */ \\\n"\
171"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Float.h */ \\\n"\
172"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Float.h */ \\\n"\
173"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Float.h */ \\\n"\
174"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Float.h */ \\\n"\
175"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Float.h */ \\\n"\
176"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
177"/** Found something. Now let\'s validate. */ \\\n"\
178"/** It\'s not repeating */ \\\n"\
179"/******************** */\\\n"\
180"/* Now the path will be: */ \\\n"\
181" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Float.h */ \\\n"\
182"/**\n"\
183"\n"\
184" * @file Float.h\n"\
185" * @brief\n"\
186" * Here, float will be treated as bit vector with four attributes:\n"\
187" *\n"\
188"\n"\
189" * sign: \\n\t\n"\
190" * \t> Whether it has sign or not. \\n\n"\
191" *\n"\
192"\n"\
193" * exp:\t\\n\n"\
194" * \t> Exponent. It will be considered as unsigned integer, \\n\n"\
195" * \t> Which is the exponent of the [frac]\n"\
196" *\n"\
197"\n"\
198" * expbiasp: \\n\n"\
199" * \t> Exponent bias in order to be considered as zero. \\n\n"\
200" * \t> For handling possibly negative values of [exp] (such as 0.5) \\n\n"\
201" *\n"\
202"\n"\
203" * \t> Here, the value of exponent bias is limited with following rules:\n"\
204" * \t\t- It must be (2^([expbiasp]) - 1), and you are actually setting [expbiasp].\n"\
205" * \t\t- [expbiasp] must be between 1 and [exp].\n"\
206" *\n"\
207"\n"\
208" * frac: \\n\n"\
209" * \t> The actual \"value\" for floating point.\n"\
210" *\n"\
211"\n"\
212" * ==================\n"\
213" *\n"\
214"\n"\
215" * Following is the expected structure as bit vector: \\n\n"\
216" * [frac | exp | sign]\n"\
217" * \n"\
218" * Size of this will be calculated as: \\n\n"\
219" * [sign] + [exp] + [frac]\n"\
220" */\n"\
221"\n"\
222"#ifndef ae2f_Float_h\n"\
223"#define ae2f_Float_h\n"\
224"\n"\
225"/** include detected */ \\\n"\
226"/** Path cursor */ \\\n"\
227"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Float.auto.h */ \\\n"\
228"/** first fp: 0x55e37e25a900 */ \\\n"\
229"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Float.auto.h */ \\\n"\
230"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
231"/** Found something. Now let\'s validate. */ \\\n"\
232"/** It\'s not repeating */ \\\n"\
233"/******************** */\\\n"\
234"/* Now the path will be: */ \\\n"\
235" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Float.auto.h */ \\\n"\
236"/**\n"\
237"\n"\
238" * @file Float.h\n"\
239" * @author ae2f\n"\
240" * @brief \n"\
241" * @date 2025-02-01\n"\
242" * \n"\
243" * @copyright Copyright (c) 2025\n"\
244" * \n"\
245" */\n"\
246"#ifndef ae2f_float_h\n"\
247"#define ae2f_float_h\n"\
248"\n"\
249"/// @brief \n"\
250"/// Predefined floating point type.\n"\
251"/// \n"\
252"/// See @ref ___DOC_CMAKE::ae2f_float\n"\
253"#define ae2f_float float\n"\
254"\n"\
255"#endif \n"\
256"/** One eof gracefully */ \\\n"\
257"\n"\
258"\n"\
259"typedef ae2f_float ae2f_float_t;\n"\
260"\n"\
261"#endif\n"\
262"/** One eof gracefully */ \\\n"\
263"\n"\
264"/** include detected */ \\\n"\
265"/** Path cursor */ \\\n"\
266"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/errGlob.h */ \\\n"\
267"/** first fp: (nil) */ \\\n"\
268"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/errGlob.h */ \\\n"\
269"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/errGlob.h */ \\\n"\
270"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/errGlob.h */ \\\n"\
271"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/errGlob.h */ \\\n"\
272"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/errGlob.h */ \\\n"\
273"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/errGlob.h */ \\\n"\
274"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
275"/** Found something. Now let\'s validate. */ \\\n"\
276"/** It\'s not repeating */ \\\n"\
277"/******************** */\\\n"\
278"/* Now the path will be: */ \\\n"\
279" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/errGlob.h */ \\\n"\
280"/**\n"\
281"\n"\
282" * @file errGlob.h\n"\
283" * @author ae2f\n"\
284" * @brief \n"\
285" * Those numbers with [ @ref ae2f_err_t ] will be the state.\n"\
286" * \n"\
287" * @date 2025-02-01\n"\
288" * \n"\
289" * @copyright Copyright (c) 2025\n"\
290" */\n"\
291"\n"\
292"#if !defined(ae2f_errGlobal_h)\n"\
293"#define ae2f_errGlobal_h\n"\
294"\n"\
295"/** include detected */ \\\n"\
296"/** Path cursor */ \\\n"\
297"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/stdint.h */ \\\n"\
298"/** first fp: (nil) */ \\\n"\
299"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stdint.h */ \\\n"\
300"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stdint.h */ \\\n"\
301"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdint.h */ \\\n"\
302"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdint.h */ \\\n"\
303"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stdint.h */ \\\n"\
304"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstdint.h */ \\\n"\
305"/** Failed but ignoring it. */ \\\n"\
306"\n"\
307"\n"\
308"/// @brief\n"\
309"/// Informs that this number represents the error.\n"\
310"typedef uint8_t ae2f_err_t;\n"\
311"\n"\
312"/// @brief\n"\
313"/// The Operation you\'ve wanted went successful. \n"\
314"#define ae2f_errGlob_OK 0\n"\
315"\n"\
316"/// @brief\n"\
317"/// Failed to find the function on preprocessor which is callable for some reason\n"\
318"/// No operation has beed done.\n"\
319"#define ae2f_errGlob_IMP_NOT_FOUND 0b1\n"\
320"\n"\
321"/// @brief\n"\
322"/// Failed to refer the pointer either l-value inside the function.\n"\
323"#define ae2f_errGlob_PTR_IS_NULL 0b10\n"\
324"\n"\
325"/// @brief\n"\
326"/// Failed freeing the memory.\n"\
327"#define ae2f_errGlob_FLUSH_FAILED 0b100\n"\
328"\n"\
329"/// @brief\n"\
330"/// stdlib allocating functions (malloc, calloc, realloc) has been failed.\n"\
331"#define ae2f_errGlob_ALLOC_FAILED 0b1000\n"\
332"\n"\
333"/// @brief\n"\
334"/// Found that parameter sent by programmer is invalid.\n"\
335"/// The operation may have been ceased while the middle.\n"\
336"#define ae2f_errGlob_WRONG_OPERATION 0b10000\n"\
337"\n"\
338"/// @brief\n"\
339"/// Found some errors, but not by parameters.\n"\
340"/// The operation has failed.\n"\
341"#define ae2f_errGlob_NFOUND 0b100000\n"\
342"\n"\
343"/// @brief\n"\
344"/// Means that error was not critical.\n"\
345"/// \n"\
346"/// The operation went done. \\n\n"\
347"/// Note that operation may not be valid.\n"\
348"#define ae2f_errGlob_DONE_HOWEV 0b1000000\n"\
349"\n"\
350"/// @brief\n"\
351"/// Check if the state code is a critical error.\n"\
352"/// @param n {ae2f_err_t} Error code\n"\
353"/// @return If it is not zero, it is a critical error.\n"\
354"#define ae2f_errGlobNormalised(n) (((n) & ae2f_errGlob_DONE_HOWEV) ? ae2f_errGlob_OK : (n))\n"\
355"\n"\
356"#endif/** One eof gracefully */ \\\n"\
357"\n"\
358"/** include detected */ \\\n"\
359"/** Path cursor */ \\\n"\
360"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Cast.h */ \\\n"\
361"/** first fp: (nil) */ \\\n"\
362"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Cast.h */ \\\n"\
363"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Cast.h */ \\\n"\
364"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Cast.h */ \\\n"\
365"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Cast.h */ \\\n"\
366"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cast.h */ \\\n"\
367"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cast.h */ \\\n"\
368"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
369"/** Found something. Now let\'s validate. */ \\\n"\
370"/** It\'s not repeating */ \\\n"\
371"/******************** */\\\n"\
372"/* Now the path will be: */ \\\n"\
373" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cast.h */ \\\n"\
374"/**\n"\
375"\n"\
376" * @file Cast.h\n"\
377" * @author ae2f\n"\
378" * @brief\n"\
379" * @date 2025-02-01\n"\
380" *\n"\
381"\n"\
382" * @copyright Copyright (c) 2025\n"\
383" *\n"\
384"\n"\
385" */\n"\
386"\n"\
387"#if !defined(ae2f_Cast_h)\n"\
388"\n"\
389"/// @brief\n"\
390"/// asdf\n"\
391"#define ae2f_Cast_h\n"\
392"\n"\
393"/// @brief\n"\
394"/// ANSI Code for clearing the console.\n"\
395"/// Clearing all display, moving the cursor on the top.\n"\
396"#define ae2f_CastCCls \"\\033[2J\\033[H\"\n"\
397"\n"\
398"/// @brief\n"\
399"/// simply merge all text inside the round bracket, counting them as a single\n"\
400"/// text block.\n"\
401"#define ae2f_CastMerge(...) __VA_ARGS__\n"\
402"\n"\
403"/** include detected */ \\\n"\
404"/** Path cursor */ \\\n"\
405"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/CasterUnion.hpp */ \\\n"\
406"/** first fp: 0x55e37e25a900 */ \\\n"\
407"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/CasterUnion.hpp */ \\\n"\
408"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/ */ \\\n"\
409"/** Found something. Now let\'s validate. */ \\\n"\
410"/** It\'s not repeating */ \\\n"\
411"/******************** */\\\n"\
412"/* Now the path will be: */ \\\n"\
413" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/CasterUnion.hpp */ \\\n"\
414"/**\n"\
415"\n"\
416" * @file CasterUnion.hpp\n"\
417" * @author ae2f\n"\
418" * @brief\n"\
419" * @date 2025-02-01\n"\
420" *\n"\
421"\n"\
422" * @copyright Copyright (c) 2025\n"\
423" *\n"\
424"\n"\
425" */\n"\
426"\n"\
427"#if !defined(ae2f_Cast_CasterUnion_hpp) && defined(__cplusplus)\n"\
428"#define ae2f_Cast_CasterUnion_hpp\n"\
429"/** include detected */ \\\n"\
430"/** Path cursor */ \\\n"\
431"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./Constexpr.hpp */ \\\n"\
432"/** first fp: 0x55e37e25baf0 */ \\\n"\
433"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./Constexpr.hpp */ \\\n"\
434"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./ */ \\\n"\
435"/** Found something. Now let\'s validate. */ \\\n"\
436"/** It\'s not repeating */ \\\n"\
437"/******************** */\\\n"\
438"/* Now the path will be: */ \\\n"\
439" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./Constexpr.hpp */ \\\n"\
440"/**\n"\
441"\n"\
442" * @file consteval.hpp\n"\
443" * @author ae2f\n"\
444" * @brief\n"\
445" * @date 2025-02-01\n"\
446" *\n"\
447"\n"\
448" * @copyright Copyright (c) 2025\n"\
449" *\n"\
450"\n"\
451" */\n"\
452"#ifndef ae2f_Cast_consteval_hpp\n"\
453"#define ae2f_Cast_consteval_hpp\n"\
454"/** include detected */ \\\n"\
455"/** Path cursor */ \\\n"\
456"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../LangVer.h */ \\\n"\
457"/** first fp: 0x55e37e25cce0 */ \\\n"\
458"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../LangVer.h */ \\\n"\
459"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../ */ \\\n"\
460"/** Found something. Now let\'s validate. */ \\\n"\
461"/** It\'s not repeating */ \\\n"\
462"/******************** */\\\n"\
463"/* Now the path will be: */ \\\n"\
464" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../LangVer.h */ \\\n"\
465"/** include detected */ \\\n"\
466"/** Path cursor */ \\\n"\
467"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././LangVer.auto.h */ \\\n"\
468"/** first fp: 0x55e37e25ded0 */ \\\n"\
469"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././LangVer.auto.h */ \\\n"\
470"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././ */ \\\n"\
471"/** Found something. Now let\'s validate. */ \\\n"\
472"/** It\'s not repeating */ \\\n"\
473"/******************** */\\\n"\
474"/* Now the path will be: */ \\\n"\
475" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././LangVer.auto.h */ \\\n"\
476"#if 90 >= 50\n"\
477"#define ae2f_LangVer_C 1990\n"\
478"#else\n"\
479"#define ae2f_LangVer_C 2090\n"\
480"#endif\n"\
481"\n"\
482"#if 11 >= 50\n"\
483"#define ae2f_LangVer_CC 1911\n"\
484"#else\n"\
485"#define ae2f_LangVer_CC 2011\n"\
486"#endif\n"\
487"\n"\
488"#define __ae2f_lvcheck_c(v) (ae2f_LangVer_C >= (v))\n"\
489"#define __ae2f_lvcheck_cc(v) (ae2f_LangVer_CC >= (v))\n"\
490"/** One eof gracefully */ \\\n"\
491"\n"\
492"\n"\
493"#ifdef\t__cplusplus\n"\
494"#undef\tae2f_stdcc_v\n"\
495"#define\tae2f_stdcc_v\t(__cplusplus)\n"\
496"#else\n"\
497"\n"\
498"#undef\tae2f_stdcc_v\n"\
499"#define\tae2f_stdcc_v\t(199711L)\n"\
500"\n"\
501"#if __ae2f_lvcheck_cc(2011)\n"\
502"#undef\tae2f_stdcc_v\n"\
503"#define\tae2f_stdcc_v\t(201103L)\n"\
504"#endif\n"\
505"\n"\
506"#if __ae2f_lvcheck_cc(2014)\n"\
507"#undef\tae2f_stdcc_v\n"\
508"#define\tae2f_stdcc_v\t(201402L)\n"\
509"#endif\n"\
510"\n"\
511"#if __ae2f_lvcheck_cc(2017)\n"\
512"#undef\tae2f_stdcc_v\n"\
513"#define\tae2f_stdcc_v\t(201703L)\n"\
514"#endif\n"\
515"\n"\
516"#if __ae2f_lvcheck_cc(2020)\n"\
517"#undef\tae2f_stdcc_v\n"\
518"#define\tae2f_stdcc_v\t(202002L)\n"\
519"#endif\n"\
520"\n"\
521"#if __ae2f_lvcheck_cc(2023)\n"\
522"#undef\tae2f_stdcc_v\n"\
523"#define\tae2f_stdcc_v\t(202302L)\n"\
524"#endif\n"\
525"\n"\
526"#endif\n"\
527"\n"\
528"#ifdef\t__STDC_VERSION__\n"\
529"#undef\tae2f_stdc_v\n"\
530"#define ae2f_stdc_v\t(__STDC_VERSION__)\n"\
531"#else\n"\
532"\n"\
533"#undef\tae2f_stdc_v\n"\
534"#define ae2f_stdc_v\t(199001L)\n"\
535"\n"\
536"#if __ae2f_lvcheck_c(1999)\n"\
537"#undef\tae2f_stdc_v\n"\
538"#define ae2f_stdc_v\t(199901L)\n"\
539"#endif\n"\
540"\n"\
541"#if __ae2f_lvcheck_c(2011)\n"\
542"#undef\tae2f_stdc_v\n"\
543"#define ae2f_stdc_v\t(201112L)\n"\
544"#endif\n"\
545"\n"\
546"#if __ae2f_lvcheck_c(2017)\n"\
547"#undef\tae2f_stdc_v\n"\
548"#define ae2f_stdc_v\t(201710L)\n"\
549"#endif\n"\
550"\n"\
551"#if __ae2f_lvcheck_c(2023)\n"\
552"#undef\tae2f_stdc_v\n"\
553"#define ae2f_stdc_v\t(202311L)\n"\
554"#endif\n"\
555"\n"\
556"#endif\n"\
557"\n"\
558"#undef\t__ae2f_stdcheck_C\n"\
559"#undef\t__ae2f_stdcheck_CC\n"\
560"\n"\
561"#define __ae2f_stdcheck_C(v)\t(ae2f_stdc_v >= (v))\n"\
562"#define __ae2f_stdcheck_CC(v)\t(ae2f_stdcc_v >= (v))\n"\
563"/** One eof gracefully */ \\\n"\
564"\n"\
565"\n"\
566"#if __ae2f_stdcheck_CC(201703L)\n"\
567"#define if_constexpr if constexpr\n"\
568"#else\n"\
569"#define if_constexpr if\n"\
570"#endif\n"\
571"\n"\
572"#if __ae2f_stdcheck_CC(202002L)\n"\
573"#define if_consteval if consteval\n"\
574"#else\n"\
575"#define if_consteval if (0)\n"\
576"#endif\n"\
577"\n"\
578"#if __ae2f_stdcheck_CC(202002L)\n"\
579"#define constexprvirtual constexpr virtual\n"\
580"/** constinit */\n"\
581"#else\n"\
582"#define constexprvirtual virtual\n"\
583"#define constinit\t/* not available */\n"\
584"#endif /* C++20 */\n"\
585"\n"\
586"#if __ae2f_stdcheck_CC(201402L)\n"\
587"#define constextendedfun\tconstexpr\n"\
588"#define constextendedeval \tconstexpr\n"\
589"\n"\
590"#define constextendedmethod\tconstexpr\n"\
591"#define constextendedmethodeval\tconstexpr\n"\
592"\n"\
593"#else\n"\
594"#define constextendedfun\tinline\n"\
595"#define constextendedmethod\tinline\n"\
596"\n"\
597"#define constextendedeval\tinline\n"\
598"#define constextendedmethodeval\tinline\n"\
599"#endif // C++14\n"\
600"\n"\
601"#if __ae2f_stdcheck_CC(201103L)\n"\
602"#define constexprmethod\t\tconstexpr\n"\
603"#define constexprfun\t\tconstexpr\n"\
604"#define constevalmethod\t\tconstexpr\n"\
605"\n"\
606"#else\n"\
607"#define constexprmethod\t\tinline\n"\
608"#define constexprfun\t\tinline\n"\
609"#define constevalmethod\t\tinline\n"\
610"#define virtual\n"\
611"\n"\
612"#if !defined(__cplusplus) /* C */\n"\
613"\n"\
614"#if !defined(__cplusplus) && __ae2f_lvcheck_c(2023)\n"\
615"/** cosntexpr variable */\n"\
616"#else\n"\
617"#define constexpr\n"\
618"#endif /* C23 */\n"\
619"\n"\
620"\n"\
621"#endif /* C */\n"\
622"\n"\
623"#endif // C++11\n"\
624"\n"\
625"#if __ae2f_stdcheck_CC(202002L)\n"\
626"#undef constevalmethod\n"\
627"#define constevalmethod consteval /* C++20 */\n"\
628"#elif __ae2f_stdcheck_CC(0)\n"\
629"\n"\
630"#undef constevalmethod\n"\
631"/// @brief\n"\
632"/// C++ keyword for constant-time functions.\n"\
633"#define consteval\n"\
634"#define constevalmethod constexprmethod\n"\
635"\n"\
636"#else\n"\
637"\n"\
638"#define consteval\n"\
639"#endif // C++20\n"\
640"\n"\
641"#endif\n"\
642"/** One eof gracefully */ \\\n"\
643"\n"\
644"\n"\
645"/// @brief\n"\
646"/// C++ union definition for @ref ae2f_union_cast\n"\
647"/// @tparam t\n"\
648"/// @tparam k\n"\
649"/// @see\n"\
650"/// @ref ae2f_union_cast\n"\
651"template <typename t, typename k> union ae2f_UnionCaster {\n"\
652" t a;\n"\
653" k b;\n"\
654" constexprmethod ae2f_UnionCaster(t _) : a(_) {}\n"\
655" constexprmethod k _b() const { return b; }\n"\
656"};\n"\
657"\n"\
658"#endif\n"\
659"/** One eof gracefully */ \\\n"\
660"\n"\
661"/** include detected */ \\\n"\
662"/** Path cursor */ \\\n"\
663"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/Constexpr.hpp */ \\\n"\
664"/** first fp: 0x55e37e25a900 */ \\\n"\
665"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/Constexpr.hpp */ \\\n"\
666"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/ */ \\\n"\
667"/** Found something. Now let\'s validate. */ \\\n"\
668"/** It\'s not repeating */ \\\n"\
669"/******************** */\\\n"\
670"/* Now the path will be: */ \\\n"\
671" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/Constexpr.hpp */ \\\n"\
672"/**\n"\
673"\n"\
674" * @file consteval.hpp\n"\
675" * @author ae2f\n"\
676" * @brief\n"\
677" * @date 2025-02-01\n"\
678" *\n"\
679"\n"\
680" * @copyright Copyright (c) 2025\n"\
681" *\n"\
682"\n"\
683" */\n"\
684"#ifndef ae2f_Cast_consteval_hpp\n"\
685"#define ae2f_Cast_consteval_hpp\n"\
686"/** include detected */ \\\n"\
687"/** Path cursor */ \\\n"\
688"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../LangVer.h */ \\\n"\
689"/** first fp: 0x55e37e25baf0 */ \\\n"\
690"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../LangVer.h */ \\\n"\
691"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../ */ \\\n"\
692"/** Found something. Now let\'s validate. */ \\\n"\
693"/** It\'s not repeating */ \\\n"\
694"/******************** */\\\n"\
695"/* Now the path will be: */ \\\n"\
696" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../LangVer.h */ \\\n"\
697"/** include detected */ \\\n"\
698"/** Path cursor */ \\\n"\
699"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././LangVer.auto.h */ \\\n"\
700"/** first fp: 0x55e37e25cce0 */ \\\n"\
701"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././LangVer.auto.h */ \\\n"\
702"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././ */ \\\n"\
703"/** Found something. Now let\'s validate. */ \\\n"\
704"/** It\'s not repeating */ \\\n"\
705"/******************** */\\\n"\
706"/* Now the path will be: */ \\\n"\
707" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././LangVer.auto.h */ \\\n"\
708"#if 90 >= 50\n"\
709"#define ae2f_LangVer_C 1990\n"\
710"#else\n"\
711"#define ae2f_LangVer_C 2090\n"\
712"#endif\n"\
713"\n"\
714"#if 11 >= 50\n"\
715"#define ae2f_LangVer_CC 1911\n"\
716"#else\n"\
717"#define ae2f_LangVer_CC 2011\n"\
718"#endif\n"\
719"\n"\
720"#define __ae2f_lvcheck_c(v) (ae2f_LangVer_C >= (v))\n"\
721"#define __ae2f_lvcheck_cc(v) (ae2f_LangVer_CC >= (v))\n"\
722"/** One eof gracefully */ \\\n"\
723"\n"\
724"\n"\
725"#ifdef\t__cplusplus\n"\
726"#undef\tae2f_stdcc_v\n"\
727"#define\tae2f_stdcc_v\t(__cplusplus)\n"\
728"#else\n"\
729"\n"\
730"#undef\tae2f_stdcc_v\n"\
731"#define\tae2f_stdcc_v\t(199711L)\n"\
732"\n"\
733"#if __ae2f_lvcheck_cc(2011)\n"\
734"#undef\tae2f_stdcc_v\n"\
735"#define\tae2f_stdcc_v\t(201103L)\n"\
736"#endif\n"\
737"\n"\
738"#if __ae2f_lvcheck_cc(2014)\n"\
739"#undef\tae2f_stdcc_v\n"\
740"#define\tae2f_stdcc_v\t(201402L)\n"\
741"#endif\n"\
742"\n"\
743"#if __ae2f_lvcheck_cc(2017)\n"\
744"#undef\tae2f_stdcc_v\n"\
745"#define\tae2f_stdcc_v\t(201703L)\n"\
746"#endif\n"\
747"\n"\
748"#if __ae2f_lvcheck_cc(2020)\n"\
749"#undef\tae2f_stdcc_v\n"\
750"#define\tae2f_stdcc_v\t(202002L)\n"\
751"#endif\n"\
752"\n"\
753"#if __ae2f_lvcheck_cc(2023)\n"\
754"#undef\tae2f_stdcc_v\n"\
755"#define\tae2f_stdcc_v\t(202302L)\n"\
756"#endif\n"\
757"\n"\
758"#endif\n"\
759"\n"\
760"#ifdef\t__STDC_VERSION__\n"\
761"#undef\tae2f_stdc_v\n"\
762"#define ae2f_stdc_v\t(__STDC_VERSION__)\n"\
763"#else\n"\
764"\n"\
765"#undef\tae2f_stdc_v\n"\
766"#define ae2f_stdc_v\t(199001L)\n"\
767"\n"\
768"#if __ae2f_lvcheck_c(1999)\n"\
769"#undef\tae2f_stdc_v\n"\
770"#define ae2f_stdc_v\t(199901L)\n"\
771"#endif\n"\
772"\n"\
773"#if __ae2f_lvcheck_c(2011)\n"\
774"#undef\tae2f_stdc_v\n"\
775"#define ae2f_stdc_v\t(201112L)\n"\
776"#endif\n"\
777"\n"\
778"#if __ae2f_lvcheck_c(2017)\n"\
779"#undef\tae2f_stdc_v\n"\
780"#define ae2f_stdc_v\t(201710L)\n"\
781"#endif\n"\
782"\n"\
783"#if __ae2f_lvcheck_c(2023)\n"\
784"#undef\tae2f_stdc_v\n"\
785"#define ae2f_stdc_v\t(202311L)\n"\
786"#endif\n"\
787"\n"\
788"#endif\n"\
789"\n"\
790"#undef\t__ae2f_stdcheck_C\n"\
791"#undef\t__ae2f_stdcheck_CC\n"\
792"\n"\
793"#define __ae2f_stdcheck_C(v)\t(ae2f_stdc_v >= (v))\n"\
794"#define __ae2f_stdcheck_CC(v)\t(ae2f_stdcc_v >= (v))\n"\
795"/** One eof gracefully */ \\\n"\
796"\n"\
797"\n"\
798"#if __ae2f_stdcheck_CC(201703L)\n"\
799"#define if_constexpr if constexpr\n"\
800"#else\n"\
801"#define if_constexpr if\n"\
802"#endif\n"\
803"\n"\
804"#if __ae2f_stdcheck_CC(202002L)\n"\
805"#define if_consteval if consteval\n"\
806"#else\n"\
807"#define if_consteval if (0)\n"\
808"#endif\n"\
809"\n"\
810"#if __ae2f_stdcheck_CC(202002L)\n"\
811"#define constexprvirtual constexpr virtual\n"\
812"/** constinit */\n"\
813"#else\n"\
814"#define constexprvirtual virtual\n"\
815"#define constinit\t/* not available */\n"\
816"#endif /* C++20 */\n"\
817"\n"\
818"#if __ae2f_stdcheck_CC(201402L)\n"\
819"#define constextendedfun\tconstexpr\n"\
820"#define constextendedeval \tconstexpr\n"\
821"\n"\
822"#define constextendedmethod\tconstexpr\n"\
823"#define constextendedmethodeval\tconstexpr\n"\
824"\n"\
825"#else\n"\
826"#define constextendedfun\tinline\n"\
827"#define constextendedmethod\tinline\n"\
828"\n"\
829"#define constextendedeval\tinline\n"\
830"#define constextendedmethodeval\tinline\n"\
831"#endif // C++14\n"\
832"\n"\
833"#if __ae2f_stdcheck_CC(201103L)\n"\
834"#define constexprmethod\t\tconstexpr\n"\
835"#define constexprfun\t\tconstexpr\n"\
836"#define constevalmethod\t\tconstexpr\n"\
837"\n"\
838"#else\n"\
839"#define constexprmethod\t\tinline\n"\
840"#define constexprfun\t\tinline\n"\
841"#define constevalmethod\t\tinline\n"\
842"#define virtual\n"\
843"\n"\
844"#if !defined(__cplusplus) /* C */\n"\
845"\n"\
846"#if !defined(__cplusplus) && __ae2f_lvcheck_c(2023)\n"\
847"/** cosntexpr variable */\n"\
848"#else\n"\
849"#define constexpr\n"\
850"#endif /* C23 */\n"\
851"\n"\
852"\n"\
853"#endif /* C */\n"\
854"\n"\
855"#endif // C++11\n"\
856"\n"\
857"#if __ae2f_stdcheck_CC(202002L)\n"\
858"#undef constevalmethod\n"\
859"#define constevalmethod consteval /* C++20 */\n"\
860"#elif __ae2f_stdcheck_CC(0)\n"\
861"\n"\
862"#undef constevalmethod\n"\
863"/// @brief\n"\
864"/// C++ keyword for constant-time functions.\n"\
865"#define consteval\n"\
866"#define constevalmethod constexprmethod\n"\
867"\n"\
868"#else\n"\
869"\n"\
870"#define consteval\n"\
871"#endif // C++20\n"\
872"\n"\
873"#endif\n"\
874"/** One eof gracefully */ \\\n"\
875"\n"\
876"/** include detected */ \\\n"\
877"/** Path cursor */ \\\n"\
878"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./LangVer.auto.h */ \\\n"\
879"/** first fp: 0x55e37e25a900 */ \\\n"\
880"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./LangVer.auto.h */ \\\n"\
881"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
882"/** Found something. Now let\'s validate. */ \\\n"\
883"/** It\'s not repeating */ \\\n"\
884"/******************** */\\\n"\
885"/* Now the path will be: */ \\\n"\
886" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./LangVer.auto.h */ \\\n"\
887"#if 90 >= 50\n"\
888"#define ae2f_LangVer_C 1990\n"\
889"#else\n"\
890"#define ae2f_LangVer_C 2090\n"\
891"#endif\n"\
892"\n"\
893"#if 11 >= 50\n"\
894"#define ae2f_LangVer_CC 1911\n"\
895"#else\n"\
896"#define ae2f_LangVer_CC 2011\n"\
897"#endif\n"\
898"\n"\
899"#define __ae2f_lvcheck_c(v) (ae2f_LangVer_C >= (v))\n"\
900"#define __ae2f_lvcheck_cc(v) (ae2f_LangVer_CC >= (v))\n"\
901"/** One eof gracefully */ \\\n"\
902"\n"\
903"/** include detected */ \\\n"\
904"/** Path cursor */ \\\n"\
905"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cxx.h */ \\\n"\
906"/** first fp: 0x55e37e25a900 */ \\\n"\
907"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cxx.h */ \\\n"\
908"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
909"/** Found something. Now let\'s validate. */ \\\n"\
910"/** It\'s not repeating */ \\\n"\
911"/******************** */\\\n"\
912"/* Now the path will be: */ \\\n"\
913" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cxx.h */ \\\n"\
914"/**\n"\
915"\n"\
916" * @file Cxx.h\n"\
917" * @author ae2f\n"\
918" * @brief \n"\
919" * @date 2025-02-01\n"\
920" * \n"\
921" * @copyright Copyright (c) 2025\n"\
922" * \n"\
923" */\n"\
924"\n"\
925"/// @brief\n"\
926"/// Literally nothing.\n"\
927"#define ae2f_NONE\n"\
928"\n"\
929"#if __cplusplus\n"\
930"\n"\
931"/// @def ae2f_WhenCXX \n"\
932"/// @brief\n"\
933"/// Appears when the current language is C++.\n"\
934"#define ae2f_WhenCXX(...) __VA_ARGS__\n"\
935"\n"\
936"/// @brief\n"\
937"/// Appears when the current language is C.\n"\
938"#define ae2f_WhenC(...) ae2f_NONE\n"\
939"\n"\
940"#else\n"\
941"\n"\
942"/// @brief\n"\
943"/// Appears when the current language is C++.\n"\
944"#define ae2f_WhenC(...) __VA_ARGS__\n"\
945"\n"\
946"/// @brief\n"\
947"/// Appears when the current language is C.\n"\
948"#define ae2f_WhenCXX(...) ae2f_NONE\n"\
949"\n"\
950"#endif\n"\
951"\n"\
952"/// @brief\n"\
953"/// \n"\
954"#define ae2f_is_cxx ae2f_WhenC(0) ae2f_WhenCXX(1)\n"\
955"\n"\
956"/// @brief\n"\
957"/// Putting it after one condition in #if will find if the script\'s language considered as [C], while doxygen does not notice.\n"\
958"/// \n"\
959"/// For alter, see @ref ae2f_cxx_check\n"\
960"#define ae2f_c_check && !ae2f_is_cxx\n"\
961"\n"\
962"/// @brief\n"\
963"/// Putting it after one condition in #if will find if the script\'s language considered as [C++], while doxygen does not notice.\n"\
964"/// \n"\
965"/// For alter, see @ref ae2f_c_check\n"\
966"#define ae2f_cxx_check && ae2f_is_cxx/** One eof gracefully */ \\\n"\
967"\n"\
968"/** include detected */ \\\n"\
969"/** Path cursor */ \\\n"\
970"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/stdbool.h */ \\\n"\
971"/** first fp: (nil) */ \\\n"\
972"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stdbool.h */ \\\n"\
973"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stdbool.h */ \\\n"\
974"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdbool.h */ \\\n"\
975"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdbool.h */ \\\n"\
976"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stdbool.h */ \\\n"\
977"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstdbool.h */ \\\n"\
978"/** Failed but ignoring it. */ \\\n"\
979"\n"\
980"/** include detected */ \\\n"\
981"/** Path cursor */ \\\n"\
982"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/stddef.h */ \\\n"\
983"/** first fp: (nil) */ \\\n"\
984"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stddef.h */ \\\n"\
985"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stddef.h */ \\\n"\
986"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
987"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
988"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stddef.h */ \\\n"\
989"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstddef.h */ \\\n"\
990"/** Failed but ignoring it. */ \\\n"\
991"\n"\
992"/** include detected */ \\\n"\
993"/** Path cursor */ \\\n"\
994"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Guide.h */ \\\n"\
995"/** first fp: 0x55e37e25a900 */ \\\n"\
996"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Guide.h */ \\\n"\
997"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
998"/** Found something. Now let\'s validate. */ \\\n"\
999"/** It\'s not repeating */ \\\n"\
1000"/******************** */\\\n"\
1001"/* Now the path will be: */ \\\n"\
1002" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Guide.h */ \\\n"\
1003"/**\n"\
1004"\n"\
1005" * @file ae2f/Guide.h\n"\
1006" * @brief\n"\
1007" * Guide markers for conventions.\n"\
1008" * */\n"\
1009"#undef ae2f_LP\n"\
1010"#undef ae2f_NONE\n"\
1011"#undef ae2f_opt\n"\
1012"\n"\
1013"/** @def ae2f_NONE @brief nothing. */\n"\
1014"#define ae2f_NONE\n"\
1015"\n"\
1016"/** \n"\
1017" * @def ae2f_LP\n"\
1018" *\n"\
1019"\n"\
1020" * @brief \n"\
1021" * Desired count required. \n"\
1022" * \n"\
1023" * @param ...\n"\
1024" * Parameter with this preprocessor means \\n\n"\
1025" * the pointer is considered as list, and inside of this is a desired size.\n"\
1026" * */\n"\
1027"#define\tae2f_LP(...) ae2f_NONE\n"\
1028"\n"\
1029"/** @def ae2f_opt @brief Optional. */\n"\
1030"#define ae2f_opt ae2f_NONE\n"\
1031"\n"\
1032"/** \n"\
1033" * @def ae2f_FREE \n"\
1034" * @brief Use this marker to show the desired functions\n"\
1035" * \tto effectively free the resources.\n"\
1036" * */\n"\
1037"#define ae2f_FREE(...) ae2f_NONE\n"\
1038"\n"\
1039"/** @brief l_value. */\n"\
1040"#define ae2f_v ae2f_NONE\n"\
1041"/** One eof gracefully */ \\\n"\
1042"\n"\
1043"\n"\
1044"/// @brief\n"\
1045"/// Initialiser for trivial structures / classes.\n"\
1046"#define ae2f_RecordMk(type, ...) \\\n"\
1047" (ae2f_WhenC((type){__VA_ARGS__}) ae2f_WhenCXX(type{__VA_ARGS__}))\n"\
1048"\n"\
1049"/// @brief\n"\
1050"/// # static_cast\n"\
1051"#define ae2f_static_cast(t, v) \\\n"\
1052" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(static_cast<t>(v))\n"\
1053"\n"\
1054"/// @brief\n"\
1055"/// # dynamic_cast\n"\
1056"#define ae2f_dynamic_cast(t, v) \\\n"\
1057" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(dynamic_cast<t>(v))\n"\
1058"\n"\
1059"/// @brief\n"\
1060"/// # reinterpret_cast\n"\
1061"#define ae2f_reinterpret_cast(t, v) \\\n"\
1062" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(reinterpret_cast<t>(v))\n"\
1063"\n"\
1064"/// @brief\n"\
1065"/// # const_cast\n"\
1066"#define ae2f_const_cast(t, v) \\\n"\
1067" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(const_cast<t>(v))\n"\
1068"\n"\
1069"/// @brief\n"\
1070"/// Makes a union that reads a memory in two methods. \\n\n"\
1071"/// `tThen` -> `tNow`\n"\
1072"/// @tparam tThen\n"\
1073"/// The existing data\'s type as input.\n"\
1074"///\n"\
1075"/// @tparam tNow\n"\
1076"/// Wanted output datatype for casting.\n"\
1077"///\n"\
1078"/// @param v\n"\
1079"/// Input value\n"\
1080"#define ae2f_union_cast(tThen, tNow, v) \\\n"\
1081" ae2f_WhenC((union { \\\n"\
1082" tThen a; \\\n"\
1083" tNow b; \\\n"\
1084" }){v}) ae2f_WhenCXX(ae2f_UnionCaster<tThen, tNow>(v)) \\\n"\
1085" ._b()\n"\
1086"\n"\
1087"/// @brief\n"\
1088"/// In C, keyword \'struct\' must be written in front of the structure\'s name in\n"\
1089"/// order to use as a type name. \\n In C++ that keyword is not required.\n"\
1090"///\n"\
1091"/// This keyword resolves the difference of the rules of two.\n"\
1092"#define ae2f_struct ae2f_WhenC(struct)\n"\
1093"\n"\
1094"/// @brief\n"\
1095"/// Suggests the existence of external variable or function, in naming of C.\n"\
1096"/// [non-mangling]\n"\
1097"#define ae2f_extern ae2f_WhenC(extern) ae2f_WhenCXX(extern \"C\")\n"\
1098"\n"\
1099"/// @brief\n"\
1100"/// Class\n"\
1101"#define ae2f_class ae2f_WhenC(struct) ae2f_WhenCXX(class)\n"\
1102"\n"\
1103"/// @brief\n"\
1104"/// Makes the global variable in naming of C. [non-mangling]\n"\
1105"#define ae2f_var ae2f_WhenCXX(extern \"C\")\n"\
1106"\n"\
1107"/// @brief\n"\
1108"/// Function definitions\n"\
1109"#define ae2f_fdef(rtn_t, name, ...) rtn_t (*name)(__VA_ARGS__)\n"\
1110"\n"\
1111"/** @brief Invokes when condition is `false`. */\n"\
1112"#define unless(...) if (!(__VA_ARGS__))\n"\
1113"\n"\
1114"#define ae2f_structdef_v(key, name, ...) \\\n"\
1115" typedef key name __VA_ARGS__; \\\n"\
1116" key name\n"\
1117"\n"\
1118"#define ae2f_structdef_n(key, name, ...)\tae2f_structdef_v(key, name, name, __VA_ARGS__)\n"\
1119"#define ae2f_structdef(key, name)\t\tae2f_structdef_v(key, name, name)\n"\
1120"#define ae2f_enumdef(name, ...)\t\t\ttypedef enum name __VA_ARGS__ name\n"\
1121"\n"\
1122"#define ae2f_tmpldef(...) template<__VA_ARGS__>\n"\
1123"#define ae2f_tmpluse(...) <__VA_ARGS__>\n"\
1124"\n"\
1125"/**\n"\
1126"\n"\
1127" * @brief\n"\
1128" * Make two pair of function as [eval] and [expr]. \\n\n"\
1129" * [expr] will just call [eval]. \\n\n"\
1130" * You will implement the body of [eval].\n"\
1131" *\n"\
1132"\n"\
1133" * Following is an use case.\n"\
1134" * @code\n"\
1135" * ae2f_evaldef(\n"\
1136"\t\ttemplate<int a>, <0>\n"\
1137"\t\t, consteval, constexprfun\n"\
1138"\t\t, int, Hello, _Hello, char v, v) \n"\
1139"\t\t{ return v; }\n"\
1140" * */\n"\
1141"#define ae2f_evaldef(tmpldef, tmpluse, keyeval, keyexpr, ret_t, nameeval, nameexpr, prmdef, prmuse) \\\n"\
1142"\ttmpldef keyeval ret_t nameeval(prmdef); \\\n"\
1143"\ttmpldef keyexpr ret_t nameexpr(prmdef) { \\\n"\
1144"\t\treturn nameeval tmpluse (prmuse); \\\n"\
1145"\t} \\\n"\
1146"\ttmpldef keyeval ret_t nameeval(prmdef)\n"\
1147"\n"\
1148"#if !__ae2f_stdcheck_CC(201103L)\n"\
1149"#undef\tnoexcept\n"\
1150"#define noexcept\n"\
1151"#endif\n"\
1152"\n"\
1153"\n"\
1154"#undef\trestrict /** First declaration */\n"\
1155"#if ae2f_stdc_v < 199901L\n"\
1156"#undef\trestrict\n"\
1157"#define restrict\n"\
1158"#endif // C>=99\n"\
1159"\n"\
1160"#if __cplusplus\n"\
1161"#undef\trestrict\n"\
1162"#define restrict\n"\
1163"#endif // C++\n"\
1164"\n"\
1165"#if !__ae2f_stdcheck_CC(201103L)\n"\
1166"/// @brief\n"\
1167"/// Means that there will be no exception thrown written in code.\n"\
1168"#define noexcept\n"\
1169"#define constexpr\n"\
1170"#endif /* C++<=11 */\n"\
1171"\n"\
1172"#if ae2f_WhenC(!)0\n"\
1173"#undef noexcept\n"\
1174"#define noexcept\n"\
1175"#endif\n"\
1176"\n"\
1177"#endif\n"\
1178"/** One eof gracefully */ \\\n"\
1179"\n"\
1180"/** include detected */ \\\n"\
1181"/** Path cursor */ \\\n"\
1182"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Call.h */ \\\n"\
1183"/** first fp: (nil) */ \\\n"\
1184"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Call.h */ \\\n"\
1185"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Call.h */ \\\n"\
1186"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Call.h */ \\\n"\
1187"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Call.h */ \\\n"\
1188"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Call.h */ \\\n"\
1189"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Call.h */ \\\n"\
1190"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
1191"/** Found something. Now let\'s validate. */ \\\n"\
1192"/** It\'s not repeating */ \\\n"\
1193"/******************** */\\\n"\
1194"/* Now the path will be: */ \\\n"\
1195" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Call.h */ \\\n"\
1196"/**\n"\
1197"\n"\
1198" * @file Call.h\n"\
1199" * @author ae2f\n"\
1200" * @brief \n"\
1201" * @date 2025-02-01\n"\
1202" * \n"\
1203" * @copyright Copyright (c) 2025\n"\
1204" * \n"\
1205" */\n"\
1206"\n"\
1207"#ifndef ae2f_Call_h\n"\
1208"#define ae2f_Call_h\n"\
1209"\n"\
1210"/** include detected */ \\\n"\
1211"/** Path cursor */ \\\n"\
1212"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Platform.h */ \\\n"\
1213"/** first fp: 0x55e37e25a900 */ \\\n"\
1214"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Platform.h */ \\\n"\
1215"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
1216"/** Found something. Now let\'s validate. */ \\\n"\
1217"/** It\'s not repeating */ \\\n"\
1218"/******************** */\\\n"\
1219"/* Now the path will be: */ \\\n"\
1220" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Platform.h */ \\\n"\
1221"#define ON 1\n"\
1222"#define OFF 0\n"\
1223"\n"\
1224"#if (defined(_WIN32) || defined(_WIN64))\n"\
1225"#define ae2f_IS_WIN 1\n"\
1226"#else \n"\
1227"#define ae2f_IS_WIN 0\n"\
1228"#endif\n"\
1229"\n"\
1230"#if (defined(__linux__))\n"\
1231"#define ae2f_IS_LINUX 1\n"\
1232"#else \n"\
1233"#define ae2f_IS_LINUX 0\n"\
1234"#endif\n"\
1235"\n"\
1236"#if defined(__MACH__) || defined(__APPLE__)\n"\
1237"#define ae2f_IS_APPLE 1\n"\
1238"#else\n"\
1239"#define ae2f_IS_APPLE 0\n"\
1240"#endif\n"\
1241"\n"\
1242"#if (ae2f_IS_WIN == ae2f_IS_LINUX) && (ae2f_IS_LINUX == ae2f_IS_APPLE) && (ae2f_IS_APPLE == ae2f_IS_WIN)\n"\
1243"/** PLATFORM NOT SPECIFIED. */\n"\
1244"\n"\
1245"/**** @brief UNSPECIFIED */\n"\
1246"#define ae2f_IDK 1\n"\
1247"#else\n"\
1248"/**** @brief UNSPECIFIED */\n"\
1249"#define ae2f_IDK 0\n"\
1250"#endif\n"\
1251"/** One eof gracefully */ \\\n"\
1252"\n"\
1253"/** include detected */ \\\n"\
1254"/** Path cursor */ \\\n"\
1255"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Call.auto.h */ \\\n"\
1256"/** first fp: 0x55e37e25a900 */ \\\n"\
1257"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Call.auto.h */ \\\n"\
1258"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
1259"/** Found something. Now let\'s validate. */ \\\n"\
1260"/** It\'s not repeating */ \\\n"\
1261"/******************** */\\\n"\
1262"/* Now the path will be: */ \\\n"\
1263" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Call.auto.h */ \\\n"\
1264"/**\n"\
1265"\n"\
1266" * @file Call.h\n"\
1267" * @author ae2f\n"\
1268" * @brief \n"\
1269" * @date 2025-02-01\n"\
1270" * \n"\
1271" * @copyright Copyright (c) 2025\n"\
1272" * \n"\
1273" */\n"\
1274"\n"\
1275"/** @brief Is a library shared */\n"\
1276"#define ae2f_IS_SHARED ON\n"\
1277"/** One eof gracefully */ \\\n"\
1278"\n"\
1279"\n"\
1280"#if ae2f_IS_SHARED\n"\
1281"\n"\
1282"#if ae2f_IS_WIN\n"\
1283"/// @brief\n"\
1284"/// # For Windows\n"\
1285"/// \n"\
1286"/// shared function imp\n"\
1287"#define ae2f_SHAREDEXPORT __declspec(dllexport)\n"\
1288"\n"\
1289"/// @brief\n"\
1290"/// # For Windows\n"\
1291"/// \n"\
1292"/// Function api call\n"\
1293"#define ae2f_SHAREDCALL \n"\
1294"#endif\n"\
1295"\n"\
1296"#if ae2f_IS_LINUX || ae2f_IS_APPLE\n"\
1297"/// @brief\n"\
1298"/// # For Linux, gcc based.\n"\
1299"/// \n"\
1300"/// shared function imp\n"\
1301"#define ae2f_SHAREDEXPORT __attribute__((visibility(\"default\")))\n"\
1302"\n"\
1303"/// @brief\n"\
1304"/// # For Linux, gcc based.\n"\
1305"///\n"\
1306"/// Function api call\n"\
1307"#define ae2f_SHAREDCALL\n"\
1308"#endif\n"\
1309"\n"\
1310"\n"\
1311"\n"\
1312"#else\n"\
1313"\n"\
1314"/// @brief\n"\
1315"/// # It is no shared library.\n"\
1316"/// \n"\
1317"/// shared function imp\n"\
1318"#define ae2f_SHAREDEXPORT\n"\
1319"/// @brief \n"\
1320"/// # It is no shared library.\n"\
1321"///\n"\
1322"/// Function api call\n"\
1323"#define ae2f_SHAREDCALL\n"\
1324"#endif\n"\
1325"\n"\
1326"#endif\n"\
1327"/** One eof gracefully */ \\\n"\
1328"\n"\
1329"/** include detected */ \\\n"\
1330"/** Path cursor */ \\\n"\
1331"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Macro.h */ \\\n"\
1332"/** first fp: (nil) */ \\\n"\
1333"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Macro.h */ \\\n"\
1334"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Macro.h */ \\\n"\
1335"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Macro.h */ \\\n"\
1336"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Macro.h */ \\\n"\
1337"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Macro.h */ \\\n"\
1338"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clae2f/Macro.h */ \\\n"\
1339"/** Failed but ignoring it. */ \\\n"\
1340"\n"\
1341"/** include detected */ \\\n"\
1342"/** Path cursor */ \\\n"\
1343"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Guide.h */ \\\n"\
1344"/** first fp: (nil) */ \\\n"\
1345"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Guide.h */ \\\n"\
1346"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Guide.h */ \\\n"\
1347"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Guide.h */ \\\n"\
1348"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Guide.h */ \\\n"\
1349"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Guide.h */ \\\n"\
1350"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Guide.h */ \\\n"\
1351"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
1352"/** Found something. Now let\'s validate. */ \\\n"\
1353"/** It\'s not repeating */ \\\n"\
1354"/******************** */\\\n"\
1355"/* Now the path will be: */ \\\n"\
1356" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Guide.h */ \\\n"\
1357"/**\n"\
1358"\n"\
1359" * @file ae2f/Guide.h\n"\
1360" * @brief\n"\
1361" * Guide markers for conventions.\n"\
1362" * */\n"\
1363"#undef ae2f_LP\n"\
1364"#undef ae2f_NONE\n"\
1365"#undef ae2f_opt\n"\
1366"\n"\
1367"/** @def ae2f_NONE @brief nothing. */\n"\
1368"#define ae2f_NONE\n"\
1369"\n"\
1370"/** \n"\
1371" * @def ae2f_LP\n"\
1372" *\n"\
1373"\n"\
1374" * @brief \n"\
1375" * Desired count required. \n"\
1376" * \n"\
1377" * @param ...\n"\
1378" * Parameter with this preprocessor means \\n\n"\
1379" * the pointer is considered as list, and inside of this is a desired size.\n"\
1380" * */\n"\
1381"#define\tae2f_LP(...) ae2f_NONE\n"\
1382"\n"\
1383"/** @def ae2f_opt @brief Optional. */\n"\
1384"#define ae2f_opt ae2f_NONE\n"\
1385"\n"\
1386"/** \n"\
1387" * @def ae2f_FREE \n"\
1388" * @brief Use this marker to show the desired functions\n"\
1389" * \tto effectively free the resources.\n"\
1390" * */\n"\
1391"#define ae2f_FREE(...) ae2f_NONE\n"\
1392"\n"\
1393"/** @brief l_value. */\n"\
1394"#define ae2f_v ae2f_NONE\n"\
1395"/** One eof gracefully */ \\\n"\
1396"\n"\
1397"\n"\
1398"/** include detected */ \\\n"\
1399"/** Path cursor */ \\\n"\
1400"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Ann/Act.h */ \\\n"\
1401"/** first fp: (nil) */ \\\n"\
1402"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Act.h */ \\\n"\
1403"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Act.h */ \\\n"\
1404"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ */ \\\n"\
1405"/** Found something. Now let\'s validate. */ \\\n"\
1406"/** It\'s not repeating */ \\\n"\
1407"/******************** */\\\n"\
1408"/* Now the path will be: */ \\\n"\
1409" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Act.h */ \\\n"\
1410"/**\n"\
1411"\n"\
1412" * @file vAct.h\n"\
1413" * @author ae2f\n"\
1414" * @brief \n"\
1415" * @version 0.1\n"\
1416" * @date 2025-02-13\n"\
1417" * \n"\
1418" * @copyright Copyright (c) 2025\n"\
1419" * \n"\
1420" */\n"\
1421"\n"\
1422"#ifndef ae2fCL_AnnAct_h\n"\
1423"#define ae2fCL_AnnAct_h\n"\
1424"\n"\
1425"/** include detected */ \\\n"\
1426"/** Path cursor */ \\\n"\
1427"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/stddef.h */ \\\n"\
1428"/** first fp: (nil) */ \\\n"\
1429"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stddef.h */ \\\n"\
1430"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stddef.h */ \\\n"\
1431"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
1432"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
1433"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stddef.h */ \\\n"\
1434"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstddef.h */ \\\n"\
1435"/** Failed but ignoring it. */ \\\n"\
1436"\n"\
1437"/** include detected */ \\\n"\
1438"/** Path cursor */ \\\n"\
1439"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Float.h */ \\\n"\
1440"/** first fp: (nil) */ \\\n"\
1441"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Float.h */ \\\n"\
1442"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Float.h */ \\\n"\
1443"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Float.h */ \\\n"\
1444"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Float.h */ \\\n"\
1445"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Float.h */ \\\n"\
1446"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Float.h */ \\\n"\
1447"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
1448"/** Found something. Now let\'s validate. */ \\\n"\
1449"/** It\'s not repeating */ \\\n"\
1450"/******************** */\\\n"\
1451"/* Now the path will be: */ \\\n"\
1452" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Float.h */ \\\n"\
1453"/**\n"\
1454"\n"\
1455" * @file Float.h\n"\
1456" * @brief\n"\
1457" * Here, float will be treated as bit vector with four attributes:\n"\
1458" *\n"\
1459"\n"\
1460" * sign: \\n\t\n"\
1461" * \t> Whether it has sign or not. \\n\n"\
1462" *\n"\
1463"\n"\
1464" * exp:\t\\n\n"\
1465" * \t> Exponent. It will be considered as unsigned integer, \\n\n"\
1466" * \t> Which is the exponent of the [frac]\n"\
1467" *\n"\
1468"\n"\
1469" * expbiasp: \\n\n"\
1470" * \t> Exponent bias in order to be considered as zero. \\n\n"\
1471" * \t> For handling possibly negative values of [exp] (such as 0.5) \\n\n"\
1472" *\n"\
1473"\n"\
1474" * \t> Here, the value of exponent bias is limited with following rules:\n"\
1475" * \t\t- It must be (2^([expbiasp]) - 1), and you are actually setting [expbiasp].\n"\
1476" * \t\t- [expbiasp] must be between 1 and [exp].\n"\
1477" *\n"\
1478"\n"\
1479" * frac: \\n\n"\
1480" * \t> The actual \"value\" for floating point.\n"\
1481" *\n"\
1482"\n"\
1483" * ==================\n"\
1484" *\n"\
1485"\n"\
1486" * Following is the expected structure as bit vector: \\n\n"\
1487" * [frac | exp | sign]\n"\
1488" * \n"\
1489" * Size of this will be calculated as: \\n\n"\
1490" * [sign] + [exp] + [frac]\n"\
1491" */\n"\
1492"\n"\
1493"#ifndef ae2f_Float_h\n"\
1494"#define ae2f_Float_h\n"\
1495"\n"\
1496"/** include detected */ \\\n"\
1497"/** Path cursor */ \\\n"\
1498"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Float.auto.h */ \\\n"\
1499"/** first fp: 0x55e37e25baf0 */ \\\n"\
1500"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Float.auto.h */ \\\n"\
1501"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
1502"/** Found something. Now let\'s validate. */ \\\n"\
1503"/** It\'s not repeating */ \\\n"\
1504"/******************** */\\\n"\
1505"/* Now the path will be: */ \\\n"\
1506" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Float.auto.h */ \\\n"\
1507"/**\n"\
1508"\n"\
1509" * @file Float.h\n"\
1510" * @author ae2f\n"\
1511" * @brief \n"\
1512" * @date 2025-02-01\n"\
1513" * \n"\
1514" * @copyright Copyright (c) 2025\n"\
1515" * \n"\
1516" */\n"\
1517"#ifndef ae2f_float_h\n"\
1518"#define ae2f_float_h\n"\
1519"\n"\
1520"/// @brief \n"\
1521"/// Predefined floating point type.\n"\
1522"/// \n"\
1523"/// See @ref ___DOC_CMAKE::ae2f_float\n"\
1524"#define ae2f_float float\n"\
1525"\n"\
1526"#endif \n"\
1527"/** One eof gracefully */ \\\n"\
1528"\n"\
1529"\n"\
1530"typedef ae2f_float ae2f_float_t;\n"\
1531"\n"\
1532"#endif\n"\
1533"/** One eof gracefully */ \\\n"\
1534"\n"\
1535"\n"\
1536"/// @brief Customisable activasion function type.\n"\
1537"typedef void ae2f_AnnAct_t (ae2f_float_t* ret, ae2f_float_t x);\n"\
1538"\n"\
1539"/// @brief\n"\
1540"/// Specify the way of calculating loss.\n"\
1541"/// \n"\
1542"/// This will be multiplied with learning rate, \\n\n"\
1543"/// and that value will be added to each weights field and bias.\n"\
1544"/// @param out Predicted value\n"\
1545"/// @param goal Expected value (wanted)\n"\
1546"/// @return Calculated loss.\n"\
1547"typedef void ae2f_AnnLoss_t (\n"\
1548"\t\tae2f_float_t*\t\tret,\n"\
1549"\t\tconst ae2f_float_t*\tout, \n"\
1550"\t\tconst ae2f_float_t* \tgoal,\n"\
1551"\t\tsize_t\t\t\tindex,\n"\
1552"\t\tsize_t\t\t\tcount\n"\
1553"\t\t);\n"\
1554"\n"\
1555"#endif\n"\
1556"/** One eof gracefully */ \\\n"\
1557"\n"\
1558"/** include detected */ \\\n"\
1559"/** Path cursor */ \\\n"\
1560"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Pack/Beg.h */ \\\n"\
1561"/** first fp: (nil) */ \\\n"\
1562"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Pack/Beg.h */ \\\n"\
1563"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Pack/Beg.h */ \\\n"\
1564"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/Beg.h */ \\\n"\
1565"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/Beg.h */ \\\n"\
1566"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
1567"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
1568"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/ */ \\\n"\
1569"/** Found something. Now let\'s validate. */ \\\n"\
1570"/** It\'s not repeating */ \\\n"\
1571"/******************** */\\\n"\
1572"/* Now the path will be: */ \\\n"\
1573" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
1574"/**\n"\
1575"\n"\
1576" * @file Beg.h\n"\
1577" * @author ae2f\n"\
1578" * @brief\n"\
1579" * @date 2025-02-01\n"\
1580" * \n"\
1581" * @copyright Copyright (c) 2025\n"\
1582" * \n"\
1583" */\n"\
1584"\n"\
1585"/** include detected */ \\\n"\
1586"/** Path cursor */ \\\n"\
1587"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
1588"/** first fp: 0x55e37e25a900 */ \\\n"\
1589"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
1590"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./ */ \\\n"\
1591"/** Found something. Now let\'s validate. */ \\\n"\
1592"/** It\'s not repeating */ \\\n"\
1593"/******************** */\\\n"\
1594"/* Now the path will be: */ \\\n"\
1595" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
1596"/**\n"\
1597"\n"\
1598" * @file Num.h\n"\
1599" * @author ae2f\n"\
1600" * @brief \n"\
1601" * @date 2025-02-01\n"\
1602" * \n"\
1603" * @copyright Copyright (c) 2025\n"\
1604" * \n"\
1605" */\n"\
1606"\n"\
1607"/// @brief\n"\
1608"/// Pre-defined structure packed byte count.\n"\
1609"/// \n"\
1610"/// See @ref ___DOC_CMAKE::ae2f_packcount\n"\
1611"#define ae2f_PackCount 0\n"\
1612"/** One eof gracefully */ \\\n"\
1613"\n"\
1614"\n"\
1615"#if ae2f_PackCount\n"\
1616"#pragma pack(push, 0)\n"\
1617"#endif\n"\
1618"/** One eof gracefully */ \\\n"\
1619"\n"\
1620"/** include detected */ \\\n"\
1621"/** Path cursor */ \\\n"\
1622"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Ann/Util.h */ \\\n"\
1623"/** first fp: (nil) */ \\\n"\
1624"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Util.h */ \\\n"\
1625"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Util.h */ \\\n"\
1626"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ */ \\\n"\
1627"/** Found something. Now let\'s validate. */ \\\n"\
1628"/** It\'s not repeating */ \\\n"\
1629"/******************** */\\\n"\
1630"/* Now the path will be: */ \\\n"\
1631" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Util.h */ \\\n"\
1632"#ifndef ae2f_Ann_Util_h\n"\
1633"#define ae2f_Ann_Util_h\n"\
1634"\n"\
1635"/** include detected */ \\\n"\
1636"/** Path cursor */ \\\n"\
1637"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Cast.h */ \\\n"\
1638"/** first fp: (nil) */ \\\n"\
1639"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Cast.h */ \\\n"\
1640"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Cast.h */ \\\n"\
1641"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Cast.h */ \\\n"\
1642"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Cast.h */ \\\n"\
1643"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cast.h */ \\\n"\
1644"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cast.h */ \\\n"\
1645"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
1646"/** Found something. Now let\'s validate. */ \\\n"\
1647"/** It\'s not repeating */ \\\n"\
1648"/******************** */\\\n"\
1649"/* Now the path will be: */ \\\n"\
1650" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cast.h */ \\\n"\
1651"/**\n"\
1652"\n"\
1653" * @file Cast.h\n"\
1654" * @author ae2f\n"\
1655" * @brief\n"\
1656" * @date 2025-02-01\n"\
1657" *\n"\
1658"\n"\
1659" * @copyright Copyright (c) 2025\n"\
1660" *\n"\
1661"\n"\
1662" */\n"\
1663"\n"\
1664"#if !defined(ae2f_Cast_h)\n"\
1665"\n"\
1666"/// @brief\n"\
1667"/// asdf\n"\
1668"#define ae2f_Cast_h\n"\
1669"\n"\
1670"/// @brief\n"\
1671"/// ANSI Code for clearing the console.\n"\
1672"/// Clearing all display, moving the cursor on the top.\n"\
1673"#define ae2f_CastCCls \"\\033[2J\\033[H\"\n"\
1674"\n"\
1675"/// @brief\n"\
1676"/// simply merge all text inside the round bracket, counting them as a single\n"\
1677"/// text block.\n"\
1678"#define ae2f_CastMerge(...) __VA_ARGS__\n"\
1679"\n"\
1680"/** include detected */ \\\n"\
1681"/** Path cursor */ \\\n"\
1682"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/CasterUnion.hpp */ \\\n"\
1683"/** first fp: 0x55e37e25baf0 */ \\\n"\
1684"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/CasterUnion.hpp */ \\\n"\
1685"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/ */ \\\n"\
1686"/** Found something. Now let\'s validate. */ \\\n"\
1687"/** It\'s not repeating */ \\\n"\
1688"/******************** */\\\n"\
1689"/* Now the path will be: */ \\\n"\
1690" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/CasterUnion.hpp */ \\\n"\
1691"/**\n"\
1692"\n"\
1693" * @file CasterUnion.hpp\n"\
1694" * @author ae2f\n"\
1695" * @brief\n"\
1696" * @date 2025-02-01\n"\
1697" *\n"\
1698"\n"\
1699" * @copyright Copyright (c) 2025\n"\
1700" *\n"\
1701"\n"\
1702" */\n"\
1703"\n"\
1704"#if !defined(ae2f_Cast_CasterUnion_hpp) && defined(__cplusplus)\n"\
1705"#define ae2f_Cast_CasterUnion_hpp\n"\
1706"/** include detected */ \\\n"\
1707"/** Path cursor */ \\\n"\
1708"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./Constexpr.hpp */ \\\n"\
1709"/** first fp: 0x55e37e25cce0 */ \\\n"\
1710"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./Constexpr.hpp */ \\\n"\
1711"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./ */ \\\n"\
1712"/** Found something. Now let\'s validate. */ \\\n"\
1713"/** It\'s not repeating */ \\\n"\
1714"/******************** */\\\n"\
1715"/* Now the path will be: */ \\\n"\
1716" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./Constexpr.hpp */ \\\n"\
1717"/**\n"\
1718"\n"\
1719" * @file consteval.hpp\n"\
1720" * @author ae2f\n"\
1721" * @brief\n"\
1722" * @date 2025-02-01\n"\
1723" *\n"\
1724"\n"\
1725" * @copyright Copyright (c) 2025\n"\
1726" *\n"\
1727"\n"\
1728" */\n"\
1729"#ifndef ae2f_Cast_consteval_hpp\n"\
1730"#define ae2f_Cast_consteval_hpp\n"\
1731"/** include detected */ \\\n"\
1732"/** Path cursor */ \\\n"\
1733"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../LangVer.h */ \\\n"\
1734"/** first fp: 0x55e37e25ded0 */ \\\n"\
1735"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../LangVer.h */ \\\n"\
1736"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../ */ \\\n"\
1737"/** Found something. Now let\'s validate. */ \\\n"\
1738"/** It\'s not repeating */ \\\n"\
1739"/******************** */\\\n"\
1740"/* Now the path will be: */ \\\n"\
1741" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../LangVer.h */ \\\n"\
1742"/** include detected */ \\\n"\
1743"/** Path cursor */ \\\n"\
1744"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././LangVer.auto.h */ \\\n"\
1745"/** first fp: 0x55e37e25f0c0 */ \\\n"\
1746"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././LangVer.auto.h */ \\\n"\
1747"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././ */ \\\n"\
1748"/** Found something. Now let\'s validate. */ \\\n"\
1749"/** It\'s not repeating */ \\\n"\
1750"/******************** */\\\n"\
1751"/* Now the path will be: */ \\\n"\
1752" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././LangVer.auto.h */ \\\n"\
1753"#if 90 >= 50\n"\
1754"#define ae2f_LangVer_C 1990\n"\
1755"#else\n"\
1756"#define ae2f_LangVer_C 2090\n"\
1757"#endif\n"\
1758"\n"\
1759"#if 11 >= 50\n"\
1760"#define ae2f_LangVer_CC 1911\n"\
1761"#else\n"\
1762"#define ae2f_LangVer_CC 2011\n"\
1763"#endif\n"\
1764"\n"\
1765"#define __ae2f_lvcheck_c(v) (ae2f_LangVer_C >= (v))\n"\
1766"#define __ae2f_lvcheck_cc(v) (ae2f_LangVer_CC >= (v))\n"\
1767"/** One eof gracefully */ \\\n"\
1768"\n"\
1769"\n"\
1770"#ifdef\t__cplusplus\n"\
1771"#undef\tae2f_stdcc_v\n"\
1772"#define\tae2f_stdcc_v\t(__cplusplus)\n"\
1773"#else\n"\
1774"\n"\
1775"#undef\tae2f_stdcc_v\n"\
1776"#define\tae2f_stdcc_v\t(199711L)\n"\
1777"\n"\
1778"#if __ae2f_lvcheck_cc(2011)\n"\
1779"#undef\tae2f_stdcc_v\n"\
1780"#define\tae2f_stdcc_v\t(201103L)\n"\
1781"#endif\n"\
1782"\n"\
1783"#if __ae2f_lvcheck_cc(2014)\n"\
1784"#undef\tae2f_stdcc_v\n"\
1785"#define\tae2f_stdcc_v\t(201402L)\n"\
1786"#endif\n"\
1787"\n"\
1788"#if __ae2f_lvcheck_cc(2017)\n"\
1789"#undef\tae2f_stdcc_v\n"\
1790"#define\tae2f_stdcc_v\t(201703L)\n"\
1791"#endif\n"\
1792"\n"\
1793"#if __ae2f_lvcheck_cc(2020)\n"\
1794"#undef\tae2f_stdcc_v\n"\
1795"#define\tae2f_stdcc_v\t(202002L)\n"\
1796"#endif\n"\
1797"\n"\
1798"#if __ae2f_lvcheck_cc(2023)\n"\
1799"#undef\tae2f_stdcc_v\n"\
1800"#define\tae2f_stdcc_v\t(202302L)\n"\
1801"#endif\n"\
1802"\n"\
1803"#endif\n"\
1804"\n"\
1805"#ifdef\t__STDC_VERSION__\n"\
1806"#undef\tae2f_stdc_v\n"\
1807"#define ae2f_stdc_v\t(__STDC_VERSION__)\n"\
1808"#else\n"\
1809"\n"\
1810"#undef\tae2f_stdc_v\n"\
1811"#define ae2f_stdc_v\t(199001L)\n"\
1812"\n"\
1813"#if __ae2f_lvcheck_c(1999)\n"\
1814"#undef\tae2f_stdc_v\n"\
1815"#define ae2f_stdc_v\t(199901L)\n"\
1816"#endif\n"\
1817"\n"\
1818"#if __ae2f_lvcheck_c(2011)\n"\
1819"#undef\tae2f_stdc_v\n"\
1820"#define ae2f_stdc_v\t(201112L)\n"\
1821"#endif\n"\
1822"\n"\
1823"#if __ae2f_lvcheck_c(2017)\n"\
1824"#undef\tae2f_stdc_v\n"\
1825"#define ae2f_stdc_v\t(201710L)\n"\
1826"#endif\n"\
1827"\n"\
1828"#if __ae2f_lvcheck_c(2023)\n"\
1829"#undef\tae2f_stdc_v\n"\
1830"#define ae2f_stdc_v\t(202311L)\n"\
1831"#endif\n"\
1832"\n"\
1833"#endif\n"\
1834"\n"\
1835"#undef\t__ae2f_stdcheck_C\n"\
1836"#undef\t__ae2f_stdcheck_CC\n"\
1837"\n"\
1838"#define __ae2f_stdcheck_C(v)\t(ae2f_stdc_v >= (v))\n"\
1839"#define __ae2f_stdcheck_CC(v)\t(ae2f_stdcc_v >= (v))\n"\
1840"/** One eof gracefully */ \\\n"\
1841"\n"\
1842"\n"\
1843"#if __ae2f_stdcheck_CC(201703L)\n"\
1844"#define if_constexpr if constexpr\n"\
1845"#else\n"\
1846"#define if_constexpr if\n"\
1847"#endif\n"\
1848"\n"\
1849"#if __ae2f_stdcheck_CC(202002L)\n"\
1850"#define if_consteval if consteval\n"\
1851"#else\n"\
1852"#define if_consteval if (0)\n"\
1853"#endif\n"\
1854"\n"\
1855"#if __ae2f_stdcheck_CC(202002L)\n"\
1856"#define constexprvirtual constexpr virtual\n"\
1857"/** constinit */\n"\
1858"#else\n"\
1859"#define constexprvirtual virtual\n"\
1860"#define constinit\t/* not available */\n"\
1861"#endif /* C++20 */\n"\
1862"\n"\
1863"#if __ae2f_stdcheck_CC(201402L)\n"\
1864"#define constextendedfun\tconstexpr\n"\
1865"#define constextendedeval \tconstexpr\n"\
1866"\n"\
1867"#define constextendedmethod\tconstexpr\n"\
1868"#define constextendedmethodeval\tconstexpr\n"\
1869"\n"\
1870"#else\n"\
1871"#define constextendedfun\tinline\n"\
1872"#define constextendedmethod\tinline\n"\
1873"\n"\
1874"#define constextendedeval\tinline\n"\
1875"#define constextendedmethodeval\tinline\n"\
1876"#endif // C++14\n"\
1877"\n"\
1878"#if __ae2f_stdcheck_CC(201103L)\n"\
1879"#define constexprmethod\t\tconstexpr\n"\
1880"#define constexprfun\t\tconstexpr\n"\
1881"#define constevalmethod\t\tconstexpr\n"\
1882"\n"\
1883"#else\n"\
1884"#define constexprmethod\t\tinline\n"\
1885"#define constexprfun\t\tinline\n"\
1886"#define constevalmethod\t\tinline\n"\
1887"#define virtual\n"\
1888"\n"\
1889"#if !defined(__cplusplus) /* C */\n"\
1890"\n"\
1891"#if !defined(__cplusplus) && __ae2f_lvcheck_c(2023)\n"\
1892"/** cosntexpr variable */\n"\
1893"#else\n"\
1894"#define constexpr\n"\
1895"#endif /* C23 */\n"\
1896"\n"\
1897"\n"\
1898"#endif /* C */\n"\
1899"\n"\
1900"#endif // C++11\n"\
1901"\n"\
1902"#if __ae2f_stdcheck_CC(202002L)\n"\
1903"#undef constevalmethod\n"\
1904"#define constevalmethod consteval /* C++20 */\n"\
1905"#elif __ae2f_stdcheck_CC(0)\n"\
1906"\n"\
1907"#undef constevalmethod\n"\
1908"/// @brief\n"\
1909"/// C++ keyword for constant-time functions.\n"\
1910"#define consteval\n"\
1911"#define constevalmethod constexprmethod\n"\
1912"\n"\
1913"#else\n"\
1914"\n"\
1915"#define consteval\n"\
1916"#endif // C++20\n"\
1917"\n"\
1918"#endif\n"\
1919"/** One eof gracefully */ \\\n"\
1920"\n"\
1921"\n"\
1922"/// @brief\n"\
1923"/// C++ union definition for @ref ae2f_union_cast\n"\
1924"/// @tparam t\n"\
1925"/// @tparam k\n"\
1926"/// @see\n"\
1927"/// @ref ae2f_union_cast\n"\
1928"template <typename t, typename k> union ae2f_UnionCaster {\n"\
1929" t a;\n"\
1930" k b;\n"\
1931" constexprmethod ae2f_UnionCaster(t _) : a(_) {}\n"\
1932" constexprmethod k _b() const { return b; }\n"\
1933"};\n"\
1934"\n"\
1935"#endif\n"\
1936"/** One eof gracefully */ \\\n"\
1937"\n"\
1938"/** include detected */ \\\n"\
1939"/** Path cursor */ \\\n"\
1940"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/Constexpr.hpp */ \\\n"\
1941"/** first fp: 0x55e37e25baf0 */ \\\n"\
1942"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/Constexpr.hpp */ \\\n"\
1943"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/ */ \\\n"\
1944"/** Found something. Now let\'s validate. */ \\\n"\
1945"/** It\'s not repeating */ \\\n"\
1946"/******************** */\\\n"\
1947"/* Now the path will be: */ \\\n"\
1948" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/Constexpr.hpp */ \\\n"\
1949"/**\n"\
1950"\n"\
1951" * @file consteval.hpp\n"\
1952" * @author ae2f\n"\
1953" * @brief\n"\
1954" * @date 2025-02-01\n"\
1955" *\n"\
1956"\n"\
1957" * @copyright Copyright (c) 2025\n"\
1958" *\n"\
1959"\n"\
1960" */\n"\
1961"#ifndef ae2f_Cast_consteval_hpp\n"\
1962"#define ae2f_Cast_consteval_hpp\n"\
1963"/** include detected */ \\\n"\
1964"/** Path cursor */ \\\n"\
1965"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../LangVer.h */ \\\n"\
1966"/** first fp: 0x55e37e25cce0 */ \\\n"\
1967"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../LangVer.h */ \\\n"\
1968"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../ */ \\\n"\
1969"/** Found something. Now let\'s validate. */ \\\n"\
1970"/** It\'s not repeating */ \\\n"\
1971"/******************** */\\\n"\
1972"/* Now the path will be: */ \\\n"\
1973" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../LangVer.h */ \\\n"\
1974"/** include detected */ \\\n"\
1975"/** Path cursor */ \\\n"\
1976"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././LangVer.auto.h */ \\\n"\
1977"/** first fp: 0x55e37e25ded0 */ \\\n"\
1978"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././LangVer.auto.h */ \\\n"\
1979"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././ */ \\\n"\
1980"/** Found something. Now let\'s validate. */ \\\n"\
1981"/** It\'s not repeating */ \\\n"\
1982"/******************** */\\\n"\
1983"/* Now the path will be: */ \\\n"\
1984" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././LangVer.auto.h */ \\\n"\
1985"#if 90 >= 50\n"\
1986"#define ae2f_LangVer_C 1990\n"\
1987"#else\n"\
1988"#define ae2f_LangVer_C 2090\n"\
1989"#endif\n"\
1990"\n"\
1991"#if 11 >= 50\n"\
1992"#define ae2f_LangVer_CC 1911\n"\
1993"#else\n"\
1994"#define ae2f_LangVer_CC 2011\n"\
1995"#endif\n"\
1996"\n"\
1997"#define __ae2f_lvcheck_c(v) (ae2f_LangVer_C >= (v))\n"\
1998"#define __ae2f_lvcheck_cc(v) (ae2f_LangVer_CC >= (v))\n"\
1999"/** One eof gracefully */ \\\n"\
2000"\n"\
2001"\n"\
2002"#ifdef\t__cplusplus\n"\
2003"#undef\tae2f_stdcc_v\n"\
2004"#define\tae2f_stdcc_v\t(__cplusplus)\n"\
2005"#else\n"\
2006"\n"\
2007"#undef\tae2f_stdcc_v\n"\
2008"#define\tae2f_stdcc_v\t(199711L)\n"\
2009"\n"\
2010"#if __ae2f_lvcheck_cc(2011)\n"\
2011"#undef\tae2f_stdcc_v\n"\
2012"#define\tae2f_stdcc_v\t(201103L)\n"\
2013"#endif\n"\
2014"\n"\
2015"#if __ae2f_lvcheck_cc(2014)\n"\
2016"#undef\tae2f_stdcc_v\n"\
2017"#define\tae2f_stdcc_v\t(201402L)\n"\
2018"#endif\n"\
2019"\n"\
2020"#if __ae2f_lvcheck_cc(2017)\n"\
2021"#undef\tae2f_stdcc_v\n"\
2022"#define\tae2f_stdcc_v\t(201703L)\n"\
2023"#endif\n"\
2024"\n"\
2025"#if __ae2f_lvcheck_cc(2020)\n"\
2026"#undef\tae2f_stdcc_v\n"\
2027"#define\tae2f_stdcc_v\t(202002L)\n"\
2028"#endif\n"\
2029"\n"\
2030"#if __ae2f_lvcheck_cc(2023)\n"\
2031"#undef\tae2f_stdcc_v\n"\
2032"#define\tae2f_stdcc_v\t(202302L)\n"\
2033"#endif\n"\
2034"\n"\
2035"#endif\n"\
2036"\n"\
2037"#ifdef\t__STDC_VERSION__\n"\
2038"#undef\tae2f_stdc_v\n"\
2039"#define ae2f_stdc_v\t(__STDC_VERSION__)\n"\
2040"#else\n"\
2041"\n"\
2042"#undef\tae2f_stdc_v\n"\
2043"#define ae2f_stdc_v\t(199001L)\n"\
2044"\n"\
2045"#if __ae2f_lvcheck_c(1999)\n"\
2046"#undef\tae2f_stdc_v\n"\
2047"#define ae2f_stdc_v\t(199901L)\n"\
2048"#endif\n"\
2049"\n"\
2050"#if __ae2f_lvcheck_c(2011)\n"\
2051"#undef\tae2f_stdc_v\n"\
2052"#define ae2f_stdc_v\t(201112L)\n"\
2053"#endif\n"\
2054"\n"\
2055"#if __ae2f_lvcheck_c(2017)\n"\
2056"#undef\tae2f_stdc_v\n"\
2057"#define ae2f_stdc_v\t(201710L)\n"\
2058"#endif\n"\
2059"\n"\
2060"#if __ae2f_lvcheck_c(2023)\n"\
2061"#undef\tae2f_stdc_v\n"\
2062"#define ae2f_stdc_v\t(202311L)\n"\
2063"#endif\n"\
2064"\n"\
2065"#endif\n"\
2066"\n"\
2067"#undef\t__ae2f_stdcheck_C\n"\
2068"#undef\t__ae2f_stdcheck_CC\n"\
2069"\n"\
2070"#define __ae2f_stdcheck_C(v)\t(ae2f_stdc_v >= (v))\n"\
2071"#define __ae2f_stdcheck_CC(v)\t(ae2f_stdcc_v >= (v))\n"\
2072"/** One eof gracefully */ \\\n"\
2073"\n"\
2074"\n"\
2075"#if __ae2f_stdcheck_CC(201703L)\n"\
2076"#define if_constexpr if constexpr\n"\
2077"#else\n"\
2078"#define if_constexpr if\n"\
2079"#endif\n"\
2080"\n"\
2081"#if __ae2f_stdcheck_CC(202002L)\n"\
2082"#define if_consteval if consteval\n"\
2083"#else\n"\
2084"#define if_consteval if (0)\n"\
2085"#endif\n"\
2086"\n"\
2087"#if __ae2f_stdcheck_CC(202002L)\n"\
2088"#define constexprvirtual constexpr virtual\n"\
2089"/** constinit */\n"\
2090"#else\n"\
2091"#define constexprvirtual virtual\n"\
2092"#define constinit\t/* not available */\n"\
2093"#endif /* C++20 */\n"\
2094"\n"\
2095"#if __ae2f_stdcheck_CC(201402L)\n"\
2096"#define constextendedfun\tconstexpr\n"\
2097"#define constextendedeval \tconstexpr\n"\
2098"\n"\
2099"#define constextendedmethod\tconstexpr\n"\
2100"#define constextendedmethodeval\tconstexpr\n"\
2101"\n"\
2102"#else\n"\
2103"#define constextendedfun\tinline\n"\
2104"#define constextendedmethod\tinline\n"\
2105"\n"\
2106"#define constextendedeval\tinline\n"\
2107"#define constextendedmethodeval\tinline\n"\
2108"#endif // C++14\n"\
2109"\n"\
2110"#if __ae2f_stdcheck_CC(201103L)\n"\
2111"#define constexprmethod\t\tconstexpr\n"\
2112"#define constexprfun\t\tconstexpr\n"\
2113"#define constevalmethod\t\tconstexpr\n"\
2114"\n"\
2115"#else\n"\
2116"#define constexprmethod\t\tinline\n"\
2117"#define constexprfun\t\tinline\n"\
2118"#define constevalmethod\t\tinline\n"\
2119"#define virtual\n"\
2120"\n"\
2121"#if !defined(__cplusplus) /* C */\n"\
2122"\n"\
2123"#if !defined(__cplusplus) && __ae2f_lvcheck_c(2023)\n"\
2124"/** cosntexpr variable */\n"\
2125"#else\n"\
2126"#define constexpr\n"\
2127"#endif /* C23 */\n"\
2128"\n"\
2129"\n"\
2130"#endif /* C */\n"\
2131"\n"\
2132"#endif // C++11\n"\
2133"\n"\
2134"#if __ae2f_stdcheck_CC(202002L)\n"\
2135"#undef constevalmethod\n"\
2136"#define constevalmethod consteval /* C++20 */\n"\
2137"#elif __ae2f_stdcheck_CC(0)\n"\
2138"\n"\
2139"#undef constevalmethod\n"\
2140"/// @brief\n"\
2141"/// C++ keyword for constant-time functions.\n"\
2142"#define consteval\n"\
2143"#define constevalmethod constexprmethod\n"\
2144"\n"\
2145"#else\n"\
2146"\n"\
2147"#define consteval\n"\
2148"#endif // C++20\n"\
2149"\n"\
2150"#endif\n"\
2151"/** One eof gracefully */ \\\n"\
2152"\n"\
2153"/** include detected */ \\\n"\
2154"/** Path cursor */ \\\n"\
2155"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./LangVer.auto.h */ \\\n"\
2156"/** first fp: 0x55e37e25baf0 */ \\\n"\
2157"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./LangVer.auto.h */ \\\n"\
2158"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
2159"/** Found something. Now let\'s validate. */ \\\n"\
2160"/** It\'s not repeating */ \\\n"\
2161"/******************** */\\\n"\
2162"/* Now the path will be: */ \\\n"\
2163" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./LangVer.auto.h */ \\\n"\
2164"#if 90 >= 50\n"\
2165"#define ae2f_LangVer_C 1990\n"\
2166"#else\n"\
2167"#define ae2f_LangVer_C 2090\n"\
2168"#endif\n"\
2169"\n"\
2170"#if 11 >= 50\n"\
2171"#define ae2f_LangVer_CC 1911\n"\
2172"#else\n"\
2173"#define ae2f_LangVer_CC 2011\n"\
2174"#endif\n"\
2175"\n"\
2176"#define __ae2f_lvcheck_c(v) (ae2f_LangVer_C >= (v))\n"\
2177"#define __ae2f_lvcheck_cc(v) (ae2f_LangVer_CC >= (v))\n"\
2178"/** One eof gracefully */ \\\n"\
2179"\n"\
2180"/** include detected */ \\\n"\
2181"/** Path cursor */ \\\n"\
2182"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cxx.h */ \\\n"\
2183"/** first fp: 0x55e37e25baf0 */ \\\n"\
2184"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cxx.h */ \\\n"\
2185"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
2186"/** Found something. Now let\'s validate. */ \\\n"\
2187"/** It\'s not repeating */ \\\n"\
2188"/******************** */\\\n"\
2189"/* Now the path will be: */ \\\n"\
2190" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cxx.h */ \\\n"\
2191"/**\n"\
2192"\n"\
2193" * @file Cxx.h\n"\
2194" * @author ae2f\n"\
2195" * @brief \n"\
2196" * @date 2025-02-01\n"\
2197" * \n"\
2198" * @copyright Copyright (c) 2025\n"\
2199" * \n"\
2200" */\n"\
2201"\n"\
2202"/// @brief\n"\
2203"/// Literally nothing.\n"\
2204"#define ae2f_NONE\n"\
2205"\n"\
2206"#if __cplusplus\n"\
2207"\n"\
2208"/// @def ae2f_WhenCXX \n"\
2209"/// @brief\n"\
2210"/// Appears when the current language is C++.\n"\
2211"#define ae2f_WhenCXX(...) __VA_ARGS__\n"\
2212"\n"\
2213"/// @brief\n"\
2214"/// Appears when the current language is C.\n"\
2215"#define ae2f_WhenC(...) ae2f_NONE\n"\
2216"\n"\
2217"#else\n"\
2218"\n"\
2219"/// @brief\n"\
2220"/// Appears when the current language is C++.\n"\
2221"#define ae2f_WhenC(...) __VA_ARGS__\n"\
2222"\n"\
2223"/// @brief\n"\
2224"/// Appears when the current language is C.\n"\
2225"#define ae2f_WhenCXX(...) ae2f_NONE\n"\
2226"\n"\
2227"#endif\n"\
2228"\n"\
2229"/// @brief\n"\
2230"/// \n"\
2231"#define ae2f_is_cxx ae2f_WhenC(0) ae2f_WhenCXX(1)\n"\
2232"\n"\
2233"/// @brief\n"\
2234"/// Putting it after one condition in #if will find if the script\'s language considered as [C], while doxygen does not notice.\n"\
2235"/// \n"\
2236"/// For alter, see @ref ae2f_cxx_check\n"\
2237"#define ae2f_c_check && !ae2f_is_cxx\n"\
2238"\n"\
2239"/// @brief\n"\
2240"/// Putting it after one condition in #if will find if the script\'s language considered as [C++], while doxygen does not notice.\n"\
2241"/// \n"\
2242"/// For alter, see @ref ae2f_c_check\n"\
2243"#define ae2f_cxx_check && ae2f_is_cxx/** One eof gracefully */ \\\n"\
2244"\n"\
2245"/** include detected */ \\\n"\
2246"/** Path cursor */ \\\n"\
2247"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/stdbool.h */ \\\n"\
2248"/** first fp: (nil) */ \\\n"\
2249"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stdbool.h */ \\\n"\
2250"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stdbool.h */ \\\n"\
2251"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdbool.h */ \\\n"\
2252"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdbool.h */ \\\n"\
2253"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stdbool.h */ \\\n"\
2254"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstdbool.h */ \\\n"\
2255"/** Failed but ignoring it. */ \\\n"\
2256"\n"\
2257"/** include detected */ \\\n"\
2258"/** Path cursor */ \\\n"\
2259"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/stddef.h */ \\\n"\
2260"/** first fp: (nil) */ \\\n"\
2261"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stddef.h */ \\\n"\
2262"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stddef.h */ \\\n"\
2263"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
2264"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
2265"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stddef.h */ \\\n"\
2266"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstddef.h */ \\\n"\
2267"/** Failed but ignoring it. */ \\\n"\
2268"\n"\
2269"/** include detected */ \\\n"\
2270"/** Path cursor */ \\\n"\
2271"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Guide.h */ \\\n"\
2272"/** first fp: 0x55e37e25baf0 */ \\\n"\
2273"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Guide.h */ \\\n"\
2274"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
2275"/** Found something. Now let\'s validate. */ \\\n"\
2276"/** It\'s not repeating */ \\\n"\
2277"/******************** */\\\n"\
2278"/* Now the path will be: */ \\\n"\
2279" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Guide.h */ \\\n"\
2280"/**\n"\
2281"\n"\
2282" * @file ae2f/Guide.h\n"\
2283" * @brief\n"\
2284" * Guide markers for conventions.\n"\
2285" * */\n"\
2286"#undef ae2f_LP\n"\
2287"#undef ae2f_NONE\n"\
2288"#undef ae2f_opt\n"\
2289"\n"\
2290"/** @def ae2f_NONE @brief nothing. */\n"\
2291"#define ae2f_NONE\n"\
2292"\n"\
2293"/** \n"\
2294" * @def ae2f_LP\n"\
2295" *\n"\
2296"\n"\
2297" * @brief \n"\
2298" * Desired count required. \n"\
2299" * \n"\
2300" * @param ...\n"\
2301" * Parameter with this preprocessor means \\n\n"\
2302" * the pointer is considered as list, and inside of this is a desired size.\n"\
2303" * */\n"\
2304"#define\tae2f_LP(...) ae2f_NONE\n"\
2305"\n"\
2306"/** @def ae2f_opt @brief Optional. */\n"\
2307"#define ae2f_opt ae2f_NONE\n"\
2308"\n"\
2309"/** \n"\
2310" * @def ae2f_FREE \n"\
2311" * @brief Use this marker to show the desired functions\n"\
2312" * \tto effectively free the resources.\n"\
2313" * */\n"\
2314"#define ae2f_FREE(...) ae2f_NONE\n"\
2315"\n"\
2316"/** @brief l_value. */\n"\
2317"#define ae2f_v ae2f_NONE\n"\
2318"/** One eof gracefully */ \\\n"\
2319"\n"\
2320"\n"\
2321"/// @brief\n"\
2322"/// Initialiser for trivial structures / classes.\n"\
2323"#define ae2f_RecordMk(type, ...) \\\n"\
2324" (ae2f_WhenC((type){__VA_ARGS__}) ae2f_WhenCXX(type{__VA_ARGS__}))\n"\
2325"\n"\
2326"/// @brief\n"\
2327"/// # static_cast\n"\
2328"#define ae2f_static_cast(t, v) \\\n"\
2329" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(static_cast<t>(v))\n"\
2330"\n"\
2331"/// @brief\n"\
2332"/// # dynamic_cast\n"\
2333"#define ae2f_dynamic_cast(t, v) \\\n"\
2334" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(dynamic_cast<t>(v))\n"\
2335"\n"\
2336"/// @brief\n"\
2337"/// # reinterpret_cast\n"\
2338"#define ae2f_reinterpret_cast(t, v) \\\n"\
2339" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(reinterpret_cast<t>(v))\n"\
2340"\n"\
2341"/// @brief\n"\
2342"/// # const_cast\n"\
2343"#define ae2f_const_cast(t, v) \\\n"\
2344" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(const_cast<t>(v))\n"\
2345"\n"\
2346"/// @brief\n"\
2347"/// Makes a union that reads a memory in two methods. \\n\n"\
2348"/// `tThen` -> `tNow`\n"\
2349"/// @tparam tThen\n"\
2350"/// The existing data\'s type as input.\n"\
2351"///\n"\
2352"/// @tparam tNow\n"\
2353"/// Wanted output datatype for casting.\n"\
2354"///\n"\
2355"/// @param v\n"\
2356"/// Input value\n"\
2357"#define ae2f_union_cast(tThen, tNow, v) \\\n"\
2358" ae2f_WhenC((union { \\\n"\
2359" tThen a; \\\n"\
2360" tNow b; \\\n"\
2361" }){v}) ae2f_WhenCXX(ae2f_UnionCaster<tThen, tNow>(v)) \\\n"\
2362" ._b()\n"\
2363"\n"\
2364"/// @brief\n"\
2365"/// In C, keyword \'struct\' must be written in front of the structure\'s name in\n"\
2366"/// order to use as a type name. \\n In C++ that keyword is not required.\n"\
2367"///\n"\
2368"/// This keyword resolves the difference of the rules of two.\n"\
2369"#define ae2f_struct ae2f_WhenC(struct)\n"\
2370"\n"\
2371"/// @brief\n"\
2372"/// Suggests the existence of external variable or function, in naming of C.\n"\
2373"/// [non-mangling]\n"\
2374"#define ae2f_extern ae2f_WhenC(extern) ae2f_WhenCXX(extern \"C\")\n"\
2375"\n"\
2376"/// @brief\n"\
2377"/// Class\n"\
2378"#define ae2f_class ae2f_WhenC(struct) ae2f_WhenCXX(class)\n"\
2379"\n"\
2380"/// @brief\n"\
2381"/// Makes the global variable in naming of C. [non-mangling]\n"\
2382"#define ae2f_var ae2f_WhenCXX(extern \"C\")\n"\
2383"\n"\
2384"/// @brief\n"\
2385"/// Function definitions\n"\
2386"#define ae2f_fdef(rtn_t, name, ...) rtn_t (*name)(__VA_ARGS__)\n"\
2387"\n"\
2388"/** @brief Invokes when condition is `false`. */\n"\
2389"#define unless(...) if (!(__VA_ARGS__))\n"\
2390"\n"\
2391"#define ae2f_structdef_v(key, name, ...) \\\n"\
2392" typedef key name __VA_ARGS__; \\\n"\
2393" key name\n"\
2394"\n"\
2395"#define ae2f_structdef_n(key, name, ...)\tae2f_structdef_v(key, name, name, __VA_ARGS__)\n"\
2396"#define ae2f_structdef(key, name)\t\tae2f_structdef_v(key, name, name)\n"\
2397"#define ae2f_enumdef(name, ...)\t\t\ttypedef enum name __VA_ARGS__ name\n"\
2398"\n"\
2399"#define ae2f_tmpldef(...) template<__VA_ARGS__>\n"\
2400"#define ae2f_tmpluse(...) <__VA_ARGS__>\n"\
2401"\n"\
2402"/**\n"\
2403"\n"\
2404" * @brief\n"\
2405" * Make two pair of function as [eval] and [expr]. \\n\n"\
2406" * [expr] will just call [eval]. \\n\n"\
2407" * You will implement the body of [eval].\n"\
2408" *\n"\
2409"\n"\
2410" * Following is an use case.\n"\
2411" * @code\n"\
2412" * ae2f_evaldef(\n"\
2413"\t\ttemplate<int a>, <0>\n"\
2414"\t\t, consteval, constexprfun\n"\
2415"\t\t, int, Hello, _Hello, char v, v) \n"\
2416"\t\t{ return v; }\n"\
2417" * */\n"\
2418"#define ae2f_evaldef(tmpldef, tmpluse, keyeval, keyexpr, ret_t, nameeval, nameexpr, prmdef, prmuse) \\\n"\
2419"\ttmpldef keyeval ret_t nameeval(prmdef); \\\n"\
2420"\ttmpldef keyexpr ret_t nameexpr(prmdef) { \\\n"\
2421"\t\treturn nameeval tmpluse (prmuse); \\\n"\
2422"\t} \\\n"\
2423"\ttmpldef keyeval ret_t nameeval(prmdef)\n"\
2424"\n"\
2425"#if !__ae2f_stdcheck_CC(201103L)\n"\
2426"#undef\tnoexcept\n"\
2427"#define noexcept\n"\
2428"#endif\n"\
2429"\n"\
2430"\n"\
2431"#undef\trestrict /** First declaration */\n"\
2432"#if ae2f_stdc_v < 199901L\n"\
2433"#undef\trestrict\n"\
2434"#define restrict\n"\
2435"#endif // C>=99\n"\
2436"\n"\
2437"#if __cplusplus\n"\
2438"#undef\trestrict\n"\
2439"#define restrict\n"\
2440"#endif // C++\n"\
2441"\n"\
2442"#if !__ae2f_stdcheck_CC(201103L)\n"\
2443"/// @brief\n"\
2444"/// Means that there will be no exception thrown written in code.\n"\
2445"#define noexcept\n"\
2446"#define constexpr\n"\
2447"#endif /* C++<=11 */\n"\
2448"\n"\
2449"#if ae2f_WhenC(!)0\n"\
2450"#undef noexcept\n"\
2451"#define noexcept\n"\
2452"#endif\n"\
2453"\n"\
2454"#endif\n"\
2455"/** One eof gracefully */ \\\n"\
2456"\n"\
2457"/** include detected */ \\\n"\
2458"/** Path cursor */ \\\n"\
2459"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Pack/Beg.h */ \\\n"\
2460"/** first fp: (nil) */ \\\n"\
2461"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Pack/Beg.h */ \\\n"\
2462"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Pack/Beg.h */ \\\n"\
2463"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/Beg.h */ \\\n"\
2464"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/Beg.h */ \\\n"\
2465"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
2466"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
2467"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/ */ \\\n"\
2468"/** Found something. Now let\'s validate. */ \\\n"\
2469"/** It\'s not repeating */ \\\n"\
2470"/******************** */\\\n"\
2471"/* Now the path will be: */ \\\n"\
2472" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
2473"/**\n"\
2474"\n"\
2475" * @file Beg.h\n"\
2476" * @author ae2f\n"\
2477" * @brief\n"\
2478" * @date 2025-02-01\n"\
2479" * \n"\
2480" * @copyright Copyright (c) 2025\n"\
2481" * \n"\
2482" */\n"\
2483"\n"\
2484"/** include detected */ \\\n"\
2485"/** Path cursor */ \\\n"\
2486"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
2487"/** first fp: 0x55e37e25baf0 */ \\\n"\
2488"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
2489"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./ */ \\\n"\
2490"/** Found something. Now let\'s validate. */ \\\n"\
2491"/** It\'s not repeating */ \\\n"\
2492"/******************** */\\\n"\
2493"/* Now the path will be: */ \\\n"\
2494" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
2495"/**\n"\
2496"\n"\
2497" * @file Num.h\n"\
2498" * @author ae2f\n"\
2499" * @brief \n"\
2500" * @date 2025-02-01\n"\
2501" * \n"\
2502" * @copyright Copyright (c) 2025\n"\
2503" * \n"\
2504" */\n"\
2505"\n"\
2506"/// @brief\n"\
2507"/// Pre-defined structure packed byte count.\n"\
2508"/// \n"\
2509"/// See @ref ___DOC_CMAKE::ae2f_packcount\n"\
2510"#define ae2f_PackCount 0\n"\
2511"/** One eof gracefully */ \\\n"\
2512"\n"\
2513"\n"\
2514"#if ae2f_PackCount\n"\
2515"#pragma pack(push, 0)\n"\
2516"#endif\n"\
2517"/** One eof gracefully */ \\\n"\
2518"\n"\
2519"/** include detected */ \\\n"\
2520"/** Path cursor */ \\\n"\
2521"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/MMap/Util.h */ \\\n"\
2522"/** first fp: (nil) */ \\\n"\
2523"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/MMap/Util.h */ \\\n"\
2524"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/MMap/Util.h */ \\\n"\
2525"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/MMap/ */ \\\n"\
2526"/** Found something. Now let\'s validate. */ \\\n"\
2527"/** It\'s not repeating */ \\\n"\
2528"/******************** */\\\n"\
2529"/* Now the path will be: */ \\\n"\
2530" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/MMap/Util.h */ \\\n"\
2531"/** include detected */ \\\n"\
2532"/** Path cursor */ \\\n"\
2533"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/MMap/ae2f/Call.h */ \\\n"\
2534"/** first fp: (nil) */ \\\n"\
2535"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Call.h */ \\\n"\
2536"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Call.h */ \\\n"\
2537"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Call.h */ \\\n"\
2538"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Call.h */ \\\n"\
2539"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Call.h */ \\\n"\
2540"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Call.h */ \\\n"\
2541"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
2542"/** Found something. Now let\'s validate. */ \\\n"\
2543"/** It\'s not repeating */ \\\n"\
2544"/******************** */\\\n"\
2545"/* Now the path will be: */ \\\n"\
2546" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Call.h */ \\\n"\
2547"/**\n"\
2548"\n"\
2549" * @file Call.h\n"\
2550" * @author ae2f\n"\
2551" * @brief \n"\
2552" * @date 2025-02-01\n"\
2553" * \n"\
2554" * @copyright Copyright (c) 2025\n"\
2555" * \n"\
2556" */\n"\
2557"\n"\
2558"#ifndef ae2f_Call_h\n"\
2559"#define ae2f_Call_h\n"\
2560"\n"\
2561"/** include detected */ \\\n"\
2562"/** Path cursor */ \\\n"\
2563"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Platform.h */ \\\n"\
2564"/** first fp: 0x55e37e25cce0 */ \\\n"\
2565"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Platform.h */ \\\n"\
2566"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
2567"/** Found something. Now let\'s validate. */ \\\n"\
2568"/** It\'s not repeating */ \\\n"\
2569"/******************** */\\\n"\
2570"/* Now the path will be: */ \\\n"\
2571" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Platform.h */ \\\n"\
2572"#define ON 1\n"\
2573"#define OFF 0\n"\
2574"\n"\
2575"#if (defined(_WIN32) || defined(_WIN64))\n"\
2576"#define ae2f_IS_WIN 1\n"\
2577"#else \n"\
2578"#define ae2f_IS_WIN 0\n"\
2579"#endif\n"\
2580"\n"\
2581"#if (defined(__linux__))\n"\
2582"#define ae2f_IS_LINUX 1\n"\
2583"#else \n"\
2584"#define ae2f_IS_LINUX 0\n"\
2585"#endif\n"\
2586"\n"\
2587"#if defined(__MACH__) || defined(__APPLE__)\n"\
2588"#define ae2f_IS_APPLE 1\n"\
2589"#else\n"\
2590"#define ae2f_IS_APPLE 0\n"\
2591"#endif\n"\
2592"\n"\
2593"#if (ae2f_IS_WIN == ae2f_IS_LINUX) && (ae2f_IS_LINUX == ae2f_IS_APPLE) && (ae2f_IS_APPLE == ae2f_IS_WIN)\n"\
2594"/** PLATFORM NOT SPECIFIED. */\n"\
2595"\n"\
2596"/**** @brief UNSPECIFIED */\n"\
2597"#define ae2f_IDK 1\n"\
2598"#else\n"\
2599"/**** @brief UNSPECIFIED */\n"\
2600"#define ae2f_IDK 0\n"\
2601"#endif\n"\
2602"/** One eof gracefully */ \\\n"\
2603"\n"\
2604"/** include detected */ \\\n"\
2605"/** Path cursor */ \\\n"\
2606"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Call.auto.h */ \\\n"\
2607"/** first fp: 0x55e37e25cce0 */ \\\n"\
2608"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Call.auto.h */ \\\n"\
2609"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
2610"/** Found something. Now let\'s validate. */ \\\n"\
2611"/** It\'s not repeating */ \\\n"\
2612"/******************** */\\\n"\
2613"/* Now the path will be: */ \\\n"\
2614" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Call.auto.h */ \\\n"\
2615"/**\n"\
2616"\n"\
2617" * @file Call.h\n"\
2618" * @author ae2f\n"\
2619" * @brief \n"\
2620" * @date 2025-02-01\n"\
2621" * \n"\
2622" * @copyright Copyright (c) 2025\n"\
2623" * \n"\
2624" */\n"\
2625"\n"\
2626"/** @brief Is a library shared */\n"\
2627"#define ae2f_IS_SHARED ON\n"\
2628"/** One eof gracefully */ \\\n"\
2629"\n"\
2630"\n"\
2631"#if ae2f_IS_SHARED\n"\
2632"\n"\
2633"#if ae2f_IS_WIN\n"\
2634"/// @brief\n"\
2635"/// # For Windows\n"\
2636"/// \n"\
2637"/// shared function imp\n"\
2638"#define ae2f_SHAREDEXPORT __declspec(dllexport)\n"\
2639"\n"\
2640"/// @brief\n"\
2641"/// # For Windows\n"\
2642"/// \n"\
2643"/// Function api call\n"\
2644"#define ae2f_SHAREDCALL \n"\
2645"#endif\n"\
2646"\n"\
2647"#if ae2f_IS_LINUX || ae2f_IS_APPLE\n"\
2648"/// @brief\n"\
2649"/// # For Linux, gcc based.\n"\
2650"/// \n"\
2651"/// shared function imp\n"\
2652"#define ae2f_SHAREDEXPORT __attribute__((visibility(\"default\")))\n"\
2653"\n"\
2654"/// @brief\n"\
2655"/// # For Linux, gcc based.\n"\
2656"///\n"\
2657"/// Function api call\n"\
2658"#define ae2f_SHAREDCALL\n"\
2659"#endif\n"\
2660"\n"\
2661"\n"\
2662"\n"\
2663"#else\n"\
2664"\n"\
2665"/// @brief\n"\
2666"/// # It is no shared library.\n"\
2667"/// \n"\
2668"/// shared function imp\n"\
2669"#define ae2f_SHAREDEXPORT\n"\
2670"/// @brief \n"\
2671"/// # It is no shared library.\n"\
2672"///\n"\
2673"/// Function api call\n"\
2674"#define ae2f_SHAREDCALL\n"\
2675"#endif\n"\
2676"\n"\
2677"#endif\n"\
2678"/** One eof gracefully */ \\\n"\
2679"\n"\
2680"\n"\
2681"#ifndef ae2f_MAC_BUILD\n"\
2682"#define\tae2f_MAC_BUILD ON\n"\
2683"#endif\n"\
2684"\n"\
2685"/** One eof gracefully */ \\\n"\
2686"\n"\
2687"\n"\
2688"#define ae2f_AnnUtilPtr2Name(A_t, B_t) \\\n"\
2689"\tae2f_AnnUtilPtr__##A_t##B_t\n"\
2690"\n"\
2691"#define ae2f_AnnUtilV2Name(A_t, B_t) \\\n"\
2692"\tae2f_AnnUtilV2Name__##A_t##B_t\n"\
2693"\n"\
2694"#define ae2f_AnnUtilV2(A_LEFT, A_t, A_POST, B_LEFT, B_t, B_POST) \\\n"\
2695"\tae2f_structdef(union, ae2f_AnnUtilV2Name(A_t, B_t)) \\\n"\
2696"{ A_LEFT A_t A_POST a; B_LEFT B_t B_POST b; }\n"\
2697"\n"\
2698"#define ae2f_AnnUtilPtr2(A_t, B_t, ...) \\\n"\
2699"\tae2f_structdef(union, ae2f_AnnUtilPtr2Name(A_t, B_t)) \\\n"\
2700"{ A_t* a; B_t* b; }\n"\
2701"\n"\
2702"/** include detected */ \\\n"\
2703"/** Path cursor */ \\\n"\
2704"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Pack/End.h */ \\\n"\
2705"/** first fp: (nil) */ \\\n"\
2706"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Pack/End.h */ \\\n"\
2707"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Pack/End.h */ \\\n"\
2708"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/End.h */ \\\n"\
2709"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/End.h */ \\\n"\
2710"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
2711"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
2712"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/ */ \\\n"\
2713"/** Found something. Now let\'s validate. */ \\\n"\
2714"/** It\'s not repeating */ \\\n"\
2715"/******************** */\\\n"\
2716"/* Now the path will be: */ \\\n"\
2717" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
2718"/**\n"\
2719"\n"\
2720" * @file End.h\n"\
2721" * @author ae2f\n"\
2722" * @brief \n"\
2723" * @date 2025-02-01\n"\
2724" * \n"\
2725" * @copyright Copyright (c) 2025\n"\
2726" * \n"\
2727" */\n"\
2728"\n"\
2729"#if ae2f_PackCount\n"\
2730"#pragma pack(pop)\n"\
2731"#endif\n"\
2732"/** One eof gracefully */ \\\n"\
2733"\n"\
2734"\n"\
2735"#endif\n"\
2736"/** One eof gracefully */ \\\n"\
2737"\n"\
2738"\n"\
2739"/**\n"\
2740"\n"\
2741" * @brief\n"\
2742" * # Single Layered Perceptron\n"\
2743" *\n"\
2744"\n"\
2745" * Multiple input, multiple output. \\n\n"\
2746" * For predicting & training operations are able to be parallel.\n"\
2747" */\n"\
2748"ae2f_structdef(struct, ae2f_AnnSlp_t) {\n"\
2749"\t/**\n"\
2750"\n"\
2751"\t * @brief \n"\
2752"\t * input count\n"\
2753"\t */\n"\
2754"\tsize_t m_inc;\n"\
2755"\n"\
2756"\t/**\n"\
2757"\n"\
2758"\t * @brief \n"\
2759"\t * output count\n"\
2760"\t */\n"\
2761"\tsize_t m_outc;\n"\
2762"};\n"\
2763"\n"\
2764"/**\n"\
2765"\n"\
2766" * @brief\n"\
2767" * Structure for SLP prediction and training data.\n"\
2768" */\n"\
2769"ae2f_structdef(struct, ae2f_AnnSlpPredict_t) {\n"\
2770"\t/**\n"\
2771"\n"\
2772"\t * @brief\n"\
2773"\t * Loop counters and layer sizes.\n"\
2774"\t */\n"\
2775"\tsize_t\t\t\tm_i, m_j;\n"\
2776"\n"\
2777"\tae2f_float_t\t\tm_ret;\n"\
2778"\tae2f_float_t\t\tm_tmp;\n"\
2779"};\n"\
2780"\n"\
2781"ae2f_structdef(struct, ae2f_AnnSlpTrain_t) {\n"\
2782"\t/**\n"\
2783"\n"\
2784"\t * @brief\n"\
2785"\t * Loop counters and layer sizes.\n"\
2786"\t */\n"\
2787"\tsize_t\t\t\tm_i, m_j;\n"\
2788"\n"\
2789"\tae2f_float_t\t\tm_ret;\n"\
2790"\tae2f_float_t\t\tm_tmp, m_tmp1;\n"\
2791"};\n"\
2792"\n"\
2793"ae2f_structdef(struct, ae2f_AnnSlpPredictOne_t) {\n"\
2794"\tsize_t\t\tm_j;\n"\
2795"\tae2f_float_t\tm_ret;\n"\
2796"\tae2f_float_t\tm_tmp;\n"\
2797"};\n"\
2798"\n"\
2799"ae2f_structdef(struct, ae2f_AnnSlpTrainOne_t) {\n"\
2800"\tsize_t\t\tm_j;\n"\
2801"\tae2f_float_t\tm_ret;\n"\
2802"\tae2f_float_t\tm_tmp, m_tmp1;\n"\
2803"};\n"\
2804"\n"\
2805"/**\n"\
2806"\n"\
2807" * @brief\n"\
2808" * Structure for a single step of the follow operation.\n"\
2809" */\n"\
2810"ae2f_structdef_n(struct, ae2f_AnnSlpFollowOne_t, ae2f_AnnSlpFitOne_t) {\n"\
2811"\t/**\n"\
2812"\n"\
2813"\t * @brief\n"\
2814"\t * Loop counter.\n"\
2815"\t */\n"\
2816"\tsize_t\t\t\tm_j;\n"\
2817"\tae2f_float_t\t\tm_tmp, m_tmp1;\n"\
2818"};\n"\
2819"\n"\
2820"\n"\
2821"/**\n"\
2822"\n"\
2823" * @brief\n"\
2824" * Structure for SLP follow, fit, and fetch delta operations.\n"\
2825" */\n"\
2826"ae2f_structdef_n(struct, ae2f_AnnSlpFollow_t, ae2f_AnnSlpFit_t, ae2f_AnnSlpFetchDelta_t) {\n"\
2827"\t/**\n"\
2828"\n"\
2829"\t * @brief\n"\
2830"\t * Loop counters and layer sizes.\n"\
2831"\t */\n"\
2832"\tsize_t\t\t\tm_i, m_j;\n"\
2833"\tae2f_float_t\t\tm_tmp, m_tmp1;\n"\
2834"};\n"\
2835"\n"\
2836"/** include detected */ \\\n"\
2837"/** Path cursor */ \\\n"\
2838"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Pack/End.h */ \\\n"\
2839"/** first fp: (nil) */ \\\n"\
2840"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Pack/End.h */ \\\n"\
2841"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Pack/End.h */ \\\n"\
2842"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/End.h */ \\\n"\
2843"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/End.h */ \\\n"\
2844"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
2845"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
2846"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/ */ \\\n"\
2847"/** Found something. Now let\'s validate. */ \\\n"\
2848"/** It\'s not repeating */ \\\n"\
2849"/******************** */\\\n"\
2850"/* Now the path will be: */ \\\n"\
2851" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
2852"/**\n"\
2853"\n"\
2854" * @file End.h\n"\
2855" * @author ae2f\n"\
2856" * @brief \n"\
2857" * @date 2025-02-01\n"\
2858" * \n"\
2859" * @copyright Copyright (c) 2025\n"\
2860" * \n"\
2861" */\n"\
2862"\n"\
2863"#if ae2f_PackCount\n"\
2864"#pragma pack(pop)\n"\
2865"#endif\n"\
2866"/** One eof gracefully */ \\\n"\
2867"\n"\
2868"\n"\
2869"#endif\n"\
2870"/** One eof gracefully */ \\\n"\
2871"\n"\
2872"#undef __ae2f_MACRO_GENERATED\n"\
2873"#define __ae2f_MACRO_GENERATED 1\n"\
2874"/** include detected */ \\\n"\
2875"/** Path cursor */ \\\n"\
2876"/* Opening: ./ae2f/Ann/Slp.auto.h */ \\\n"\
2877"/** first fp: (nil) */ \\\n"\
2878"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Slp.auto.h */ \\\n"\
2879"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Slp.auto.h */ \\\n"\
2880"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ */ \\\n"\
2881"/** Found something. Now let\'s validate. */ \\\n"\
2882"/** It\'s not repeating */ \\\n"\
2883"/******************** */\\\n"\
2884"/* Now the path will be: */ \\\n"\
2885" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Slp.auto.h */ \\\n"\
2886"#undef\t__ae2f_MACRO_GENERATED\n"\
2887"#define\t__ae2f_MACRO_GENERATED\t1\n"\
2888"#ifndef ae2f_Ann_Slp_c\n"\
2889"#if !__ae2f_MACRO_GENERATED\n"\
2890"/** include detected */ \\\n"\
2891"/** Path cursor */ \\\n"\
2892"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Ann/Slp.h */ \\\n"\
2893"/** first fp: (nil) */ \\\n"\
2894"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Slp.h */ \\\n"\
2895"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Slp.h */ \\\n"\
2896"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ */ \\\n"\
2897"/** Found something. Now let\'s validate. */ \\\n"\
2898"/** It\'s not repeating */ \\\n"\
2899"/******************** */\\\n"\
2900"/* Now the path will be: */ \\\n"\
2901" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Slp.h */ \\\n"\
2902"#ifndef ae2f_NEED_CLASS\n"\
2903"#define ae2f_NEED_CLASS\t1\n"\
2904"#endif\n"\
2905"\n"\
2906"\n"\
2907"#ifndef ae2f_Ann_Slp_h\n"\
2908"#define ae2f_Ann_Slp_h\n"\
2909"\n"\
2910"/** include detected */ \\\n"\
2911"/** Path cursor */ \\\n"\
2912"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./Slp.core.h */ \\\n"\
2913"/** first fp: 0x55e37e25a900 */ \\\n"\
2914"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./Slp.core.h */ \\\n"\
2915"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ */ \\\n"\
2916"/** Found something. Now let\'s validate. */ \\\n"\
2917"/** It\'s not repeating */ \\\n"\
2918"/******************** */\\\n"\
2919"/* Now the path will be: */ \\\n"\
2920" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./Slp.core.h */ \\\n"\
2921"#ifndef ae2f_Ann_Slp_Core_h\n"\
2922"#define ae2f_Ann_Slp_Core_h\n"\
2923"\n"\
2924"/** include detected */ \\\n"\
2925"/** Path cursor */ \\\n"\
2926"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ae2f/Float.h */ \\\n"\
2927"/** first fp: (nil) */ \\\n"\
2928"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Float.h */ \\\n"\
2929"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Float.h */ \\\n"\
2930"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Float.h */ \\\n"\
2931"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Float.h */ \\\n"\
2932"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Float.h */ \\\n"\
2933"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Float.h */ \\\n"\
2934"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
2935"/** Found something. Now let\'s validate. */ \\\n"\
2936"/** It\'s not repeating */ \\\n"\
2937"/******************** */\\\n"\
2938"/* Now the path will be: */ \\\n"\
2939" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Float.h */ \\\n"\
2940"/**\n"\
2941"\n"\
2942" * @file Float.h\n"\
2943" * @brief\n"\
2944" * Here, float will be treated as bit vector with four attributes:\n"\
2945" *\n"\
2946"\n"\
2947" * sign: \\n\t\n"\
2948" * \t> Whether it has sign or not. \\n\n"\
2949" *\n"\
2950"\n"\
2951" * exp:\t\\n\n"\
2952" * \t> Exponent. It will be considered as unsigned integer, \\n\n"\
2953" * \t> Which is the exponent of the [frac]\n"\
2954" *\n"\
2955"\n"\
2956" * expbiasp: \\n\n"\
2957" * \t> Exponent bias in order to be considered as zero. \\n\n"\
2958" * \t> For handling possibly negative values of [exp] (such as 0.5) \\n\n"\
2959" *\n"\
2960"\n"\
2961" * \t> Here, the value of exponent bias is limited with following rules:\n"\
2962" * \t\t- It must be (2^([expbiasp]) - 1), and you are actually setting [expbiasp].\n"\
2963" * \t\t- [expbiasp] must be between 1 and [exp].\n"\
2964" *\n"\
2965"\n"\
2966" * frac: \\n\n"\
2967" * \t> The actual \"value\" for floating point.\n"\
2968" *\n"\
2969"\n"\
2970" * ==================\n"\
2971" *\n"\
2972"\n"\
2973" * Following is the expected structure as bit vector: \\n\n"\
2974" * [frac | exp | sign]\n"\
2975" * \n"\
2976" * Size of this will be calculated as: \\n\n"\
2977" * [sign] + [exp] + [frac]\n"\
2978" */\n"\
2979"\n"\
2980"#ifndef ae2f_Float_h\n"\
2981"#define ae2f_Float_h\n"\
2982"\n"\
2983"/** include detected */ \\\n"\
2984"/** Path cursor */ \\\n"\
2985"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Float.auto.h */ \\\n"\
2986"/** first fp: 0x55e37e25cce0 */ \\\n"\
2987"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Float.auto.h */ \\\n"\
2988"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
2989"/** Found something. Now let\'s validate. */ \\\n"\
2990"/** It\'s not repeating */ \\\n"\
2991"/******************** */\\\n"\
2992"/* Now the path will be: */ \\\n"\
2993" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Float.auto.h */ \\\n"\
2994"/**\n"\
2995"\n"\
2996" * @file Float.h\n"\
2997" * @author ae2f\n"\
2998" * @brief \n"\
2999" * @date 2025-02-01\n"\
3000" * \n"\
3001" * @copyright Copyright (c) 2025\n"\
3002" * \n"\
3003" */\n"\
3004"#ifndef ae2f_float_h\n"\
3005"#define ae2f_float_h\n"\
3006"\n"\
3007"/// @brief \n"\
3008"/// Predefined floating point type.\n"\
3009"/// \n"\
3010"/// See @ref ___DOC_CMAKE::ae2f_float\n"\
3011"#define ae2f_float float\n"\
3012"\n"\
3013"#endif \n"\
3014"/** One eof gracefully */ \\\n"\
3015"\n"\
3016"\n"\
3017"typedef ae2f_float ae2f_float_t;\n"\
3018"\n"\
3019"#endif\n"\
3020"/** One eof gracefully */ \\\n"\
3021"\n"\
3022"/** include detected */ \\\n"\
3023"/** Path cursor */ \\\n"\
3024"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ae2f/errGlob.h */ \\\n"\
3025"/** first fp: (nil) */ \\\n"\
3026"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/errGlob.h */ \\\n"\
3027"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/errGlob.h */ \\\n"\
3028"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/errGlob.h */ \\\n"\
3029"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/errGlob.h */ \\\n"\
3030"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/errGlob.h */ \\\n"\
3031"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/errGlob.h */ \\\n"\
3032"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
3033"/** Found something. Now let\'s validate. */ \\\n"\
3034"/** It\'s not repeating */ \\\n"\
3035"/******************** */\\\n"\
3036"/* Now the path will be: */ \\\n"\
3037" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/errGlob.h */ \\\n"\
3038"/**\n"\
3039"\n"\
3040" * @file errGlob.h\n"\
3041" * @author ae2f\n"\
3042" * @brief \n"\
3043" * Those numbers with [ @ref ae2f_err_t ] will be the state.\n"\
3044" * \n"\
3045" * @date 2025-02-01\n"\
3046" * \n"\
3047" * @copyright Copyright (c) 2025\n"\
3048" */\n"\
3049"\n"\
3050"#if !defined(ae2f_errGlobal_h)\n"\
3051"#define ae2f_errGlobal_h\n"\
3052"\n"\
3053"/** include detected */ \\\n"\
3054"/** Path cursor */ \\\n"\
3055"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/stdint.h */ \\\n"\
3056"/** first fp: (nil) */ \\\n"\
3057"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stdint.h */ \\\n"\
3058"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stdint.h */ \\\n"\
3059"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdint.h */ \\\n"\
3060"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdint.h */ \\\n"\
3061"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stdint.h */ \\\n"\
3062"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstdint.h */ \\\n"\
3063"/** Failed but ignoring it. */ \\\n"\
3064"\n"\
3065"\n"\
3066"/// @brief\n"\
3067"/// Informs that this number represents the error.\n"\
3068"typedef uint8_t ae2f_err_t;\n"\
3069"\n"\
3070"/// @brief\n"\
3071"/// The Operation you\'ve wanted went successful. \n"\
3072"#define ae2f_errGlob_OK 0\n"\
3073"\n"\
3074"/// @brief\n"\
3075"/// Failed to find the function on preprocessor which is callable for some reason\n"\
3076"/// No operation has beed done.\n"\
3077"#define ae2f_errGlob_IMP_NOT_FOUND 0b1\n"\
3078"\n"\
3079"/// @brief\n"\
3080"/// Failed to refer the pointer either l-value inside the function.\n"\
3081"#define ae2f_errGlob_PTR_IS_NULL 0b10\n"\
3082"\n"\
3083"/// @brief\n"\
3084"/// Failed freeing the memory.\n"\
3085"#define ae2f_errGlob_FLUSH_FAILED 0b100\n"\
3086"\n"\
3087"/// @brief\n"\
3088"/// stdlib allocating functions (malloc, calloc, realloc) has been failed.\n"\
3089"#define ae2f_errGlob_ALLOC_FAILED 0b1000\n"\
3090"\n"\
3091"/// @brief\n"\
3092"/// Found that parameter sent by programmer is invalid.\n"\
3093"/// The operation may have been ceased while the middle.\n"\
3094"#define ae2f_errGlob_WRONG_OPERATION 0b10000\n"\
3095"\n"\
3096"/// @brief\n"\
3097"/// Found some errors, but not by parameters.\n"\
3098"/// The operation has failed.\n"\
3099"#define ae2f_errGlob_NFOUND 0b100000\n"\
3100"\n"\
3101"/// @brief\n"\
3102"/// Means that error was not critical.\n"\
3103"/// \n"\
3104"/// The operation went done. \\n\n"\
3105"/// Note that operation may not be valid.\n"\
3106"#define ae2f_errGlob_DONE_HOWEV 0b1000000\n"\
3107"\n"\
3108"/// @brief\n"\
3109"/// Check if the state code is a critical error.\n"\
3110"/// @param n {ae2f_err_t} Error code\n"\
3111"/// @return If it is not zero, it is a critical error.\n"\
3112"#define ae2f_errGlobNormalised(n) (((n) & ae2f_errGlob_DONE_HOWEV) ? ae2f_errGlob_OK : (n))\n"\
3113"\n"\
3114"#endif/** One eof gracefully */ \\\n"\
3115"\n"\
3116"/** include detected */ \\\n"\
3117"/** Path cursor */ \\\n"\
3118"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ae2f/Cast.h */ \\\n"\
3119"/** first fp: (nil) */ \\\n"\
3120"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Cast.h */ \\\n"\
3121"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Cast.h */ \\\n"\
3122"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Cast.h */ \\\n"\
3123"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Cast.h */ \\\n"\
3124"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cast.h */ \\\n"\
3125"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cast.h */ \\\n"\
3126"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
3127"/** Found something. Now let\'s validate. */ \\\n"\
3128"/** It\'s not repeating */ \\\n"\
3129"/******************** */\\\n"\
3130"/* Now the path will be: */ \\\n"\
3131" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cast.h */ \\\n"\
3132"/**\n"\
3133"\n"\
3134" * @file Cast.h\n"\
3135" * @author ae2f\n"\
3136" * @brief\n"\
3137" * @date 2025-02-01\n"\
3138" *\n"\
3139"\n"\
3140" * @copyright Copyright (c) 2025\n"\
3141" *\n"\
3142"\n"\
3143" */\n"\
3144"\n"\
3145"#if !defined(ae2f_Cast_h)\n"\
3146"\n"\
3147"/// @brief\n"\
3148"/// asdf\n"\
3149"#define ae2f_Cast_h\n"\
3150"\n"\
3151"/// @brief\n"\
3152"/// ANSI Code for clearing the console.\n"\
3153"/// Clearing all display, moving the cursor on the top.\n"\
3154"#define ae2f_CastCCls \"\\033[2J\\033[H\"\n"\
3155"\n"\
3156"/// @brief\n"\
3157"/// simply merge all text inside the round bracket, counting them as a single\n"\
3158"/// text block.\n"\
3159"#define ae2f_CastMerge(...) __VA_ARGS__\n"\
3160"\n"\
3161"/** include detected */ \\\n"\
3162"/** Path cursor */ \\\n"\
3163"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/CasterUnion.hpp */ \\\n"\
3164"/** first fp: 0x55e37e25cce0 */ \\\n"\
3165"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/CasterUnion.hpp */ \\\n"\
3166"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/ */ \\\n"\
3167"/** Found something. Now let\'s validate. */ \\\n"\
3168"/** It\'s not repeating */ \\\n"\
3169"/******************** */\\\n"\
3170"/* Now the path will be: */ \\\n"\
3171" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/CasterUnion.hpp */ \\\n"\
3172"/**\n"\
3173"\n"\
3174" * @file CasterUnion.hpp\n"\
3175" * @author ae2f\n"\
3176" * @brief\n"\
3177" * @date 2025-02-01\n"\
3178" *\n"\
3179"\n"\
3180" * @copyright Copyright (c) 2025\n"\
3181" *\n"\
3182"\n"\
3183" */\n"\
3184"\n"\
3185"#if !defined(ae2f_Cast_CasterUnion_hpp) && defined(__cplusplus)\n"\
3186"#define ae2f_Cast_CasterUnion_hpp\n"\
3187"/** include detected */ \\\n"\
3188"/** Path cursor */ \\\n"\
3189"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./Constexpr.hpp */ \\\n"\
3190"/** first fp: 0x55e37e25ded0 */ \\\n"\
3191"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./Constexpr.hpp */ \\\n"\
3192"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./ */ \\\n"\
3193"/** Found something. Now let\'s validate. */ \\\n"\
3194"/** It\'s not repeating */ \\\n"\
3195"/******************** */\\\n"\
3196"/* Now the path will be: */ \\\n"\
3197" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./Constexpr.hpp */ \\\n"\
3198"/**\n"\
3199"\n"\
3200" * @file consteval.hpp\n"\
3201" * @author ae2f\n"\
3202" * @brief\n"\
3203" * @date 2025-02-01\n"\
3204" *\n"\
3205"\n"\
3206" * @copyright Copyright (c) 2025\n"\
3207" *\n"\
3208"\n"\
3209" */\n"\
3210"#ifndef ae2f_Cast_consteval_hpp\n"\
3211"#define ae2f_Cast_consteval_hpp\n"\
3212"/** include detected */ \\\n"\
3213"/** Path cursor */ \\\n"\
3214"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../LangVer.h */ \\\n"\
3215"/** first fp: 0x55e37e25f0c0 */ \\\n"\
3216"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../LangVer.h */ \\\n"\
3217"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../ */ \\\n"\
3218"/** Found something. Now let\'s validate. */ \\\n"\
3219"/** It\'s not repeating */ \\\n"\
3220"/******************** */\\\n"\
3221"/* Now the path will be: */ \\\n"\
3222" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../LangVer.h */ \\\n"\
3223"/** include detected */ \\\n"\
3224"/** Path cursor */ \\\n"\
3225"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././LangVer.auto.h */ \\\n"\
3226"/** first fp: 0x55e37e2602b0 */ \\\n"\
3227"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././LangVer.auto.h */ \\\n"\
3228"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././ */ \\\n"\
3229"/** Found something. Now let\'s validate. */ \\\n"\
3230"/** It\'s not repeating */ \\\n"\
3231"/******************** */\\\n"\
3232"/* Now the path will be: */ \\\n"\
3233" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././LangVer.auto.h */ \\\n"\
3234"#if 90 >= 50\n"\
3235"#define ae2f_LangVer_C 1990\n"\
3236"#else\n"\
3237"#define ae2f_LangVer_C 2090\n"\
3238"#endif\n"\
3239"\n"\
3240"#if 11 >= 50\n"\
3241"#define ae2f_LangVer_CC 1911\n"\
3242"#else\n"\
3243"#define ae2f_LangVer_CC 2011\n"\
3244"#endif\n"\
3245"\n"\
3246"#define __ae2f_lvcheck_c(v) (ae2f_LangVer_C >= (v))\n"\
3247"#define __ae2f_lvcheck_cc(v) (ae2f_LangVer_CC >= (v))\n"\
3248"/** One eof gracefully */ \\\n"\
3249"\n"\
3250"\n"\
3251"#ifdef\t__cplusplus\n"\
3252"#undef\tae2f_stdcc_v\n"\
3253"#define\tae2f_stdcc_v\t(__cplusplus)\n"\
3254"#else\n"\
3255"\n"\
3256"#undef\tae2f_stdcc_v\n"\
3257"#define\tae2f_stdcc_v\t(199711L)\n"\
3258"\n"\
3259"#if __ae2f_lvcheck_cc(2011)\n"\
3260"#undef\tae2f_stdcc_v\n"\
3261"#define\tae2f_stdcc_v\t(201103L)\n"\
3262"#endif\n"\
3263"\n"\
3264"#if __ae2f_lvcheck_cc(2014)\n"\
3265"#undef\tae2f_stdcc_v\n"\
3266"#define\tae2f_stdcc_v\t(201402L)\n"\
3267"#endif\n"\
3268"\n"\
3269"#if __ae2f_lvcheck_cc(2017)\n"\
3270"#undef\tae2f_stdcc_v\n"\
3271"#define\tae2f_stdcc_v\t(201703L)\n"\
3272"#endif\n"\
3273"\n"\
3274"#if __ae2f_lvcheck_cc(2020)\n"\
3275"#undef\tae2f_stdcc_v\n"\
3276"#define\tae2f_stdcc_v\t(202002L)\n"\
3277"#endif\n"\
3278"\n"\
3279"#if __ae2f_lvcheck_cc(2023)\n"\
3280"#undef\tae2f_stdcc_v\n"\
3281"#define\tae2f_stdcc_v\t(202302L)\n"\
3282"#endif\n"\
3283"\n"\
3284"#endif\n"\
3285"\n"\
3286"#ifdef\t__STDC_VERSION__\n"\
3287"#undef\tae2f_stdc_v\n"\
3288"#define ae2f_stdc_v\t(__STDC_VERSION__)\n"\
3289"#else\n"\
3290"\n"\
3291"#undef\tae2f_stdc_v\n"\
3292"#define ae2f_stdc_v\t(199001L)\n"\
3293"\n"\
3294"#if __ae2f_lvcheck_c(1999)\n"\
3295"#undef\tae2f_stdc_v\n"\
3296"#define ae2f_stdc_v\t(199901L)\n"\
3297"#endif\n"\
3298"\n"\
3299"#if __ae2f_lvcheck_c(2011)\n"\
3300"#undef\tae2f_stdc_v\n"\
3301"#define ae2f_stdc_v\t(201112L)\n"\
3302"#endif\n"\
3303"\n"\
3304"#if __ae2f_lvcheck_c(2017)\n"\
3305"#undef\tae2f_stdc_v\n"\
3306"#define ae2f_stdc_v\t(201710L)\n"\
3307"#endif\n"\
3308"\n"\
3309"#if __ae2f_lvcheck_c(2023)\n"\
3310"#undef\tae2f_stdc_v\n"\
3311"#define ae2f_stdc_v\t(202311L)\n"\
3312"#endif\n"\
3313"\n"\
3314"#endif\n"\
3315"\n"\
3316"#undef\t__ae2f_stdcheck_C\n"\
3317"#undef\t__ae2f_stdcheck_CC\n"\
3318"\n"\
3319"#define __ae2f_stdcheck_C(v)\t(ae2f_stdc_v >= (v))\n"\
3320"#define __ae2f_stdcheck_CC(v)\t(ae2f_stdcc_v >= (v))\n"\
3321"/** One eof gracefully */ \\\n"\
3322"\n"\
3323"\n"\
3324"#if __ae2f_stdcheck_CC(201703L)\n"\
3325"#define if_constexpr if constexpr\n"\
3326"#else\n"\
3327"#define if_constexpr if\n"\
3328"#endif\n"\
3329"\n"\
3330"#if __ae2f_stdcheck_CC(202002L)\n"\
3331"#define if_consteval if consteval\n"\
3332"#else\n"\
3333"#define if_consteval if (0)\n"\
3334"#endif\n"\
3335"\n"\
3336"#if __ae2f_stdcheck_CC(202002L)\n"\
3337"#define constexprvirtual constexpr virtual\n"\
3338"/** constinit */\n"\
3339"#else\n"\
3340"#define constexprvirtual virtual\n"\
3341"#define constinit\t/* not available */\n"\
3342"#endif /* C++20 */\n"\
3343"\n"\
3344"#if __ae2f_stdcheck_CC(201402L)\n"\
3345"#define constextendedfun\tconstexpr\n"\
3346"#define constextendedeval \tconstexpr\n"\
3347"\n"\
3348"#define constextendedmethod\tconstexpr\n"\
3349"#define constextendedmethodeval\tconstexpr\n"\
3350"\n"\
3351"#else\n"\
3352"#define constextendedfun\tinline\n"\
3353"#define constextendedmethod\tinline\n"\
3354"\n"\
3355"#define constextendedeval\tinline\n"\
3356"#define constextendedmethodeval\tinline\n"\
3357"#endif // C++14\n"\
3358"\n"\
3359"#if __ae2f_stdcheck_CC(201103L)\n"\
3360"#define constexprmethod\t\tconstexpr\n"\
3361"#define constexprfun\t\tconstexpr\n"\
3362"#define constevalmethod\t\tconstexpr\n"\
3363"\n"\
3364"#else\n"\
3365"#define constexprmethod\t\tinline\n"\
3366"#define constexprfun\t\tinline\n"\
3367"#define constevalmethod\t\tinline\n"\
3368"#define virtual\n"\
3369"\n"\
3370"#if !defined(__cplusplus) /* C */\n"\
3371"\n"\
3372"#if !defined(__cplusplus) && __ae2f_lvcheck_c(2023)\n"\
3373"/** cosntexpr variable */\n"\
3374"#else\n"\
3375"#define constexpr\n"\
3376"#endif /* C23 */\n"\
3377"\n"\
3378"\n"\
3379"#endif /* C */\n"\
3380"\n"\
3381"#endif // C++11\n"\
3382"\n"\
3383"#if __ae2f_stdcheck_CC(202002L)\n"\
3384"#undef constevalmethod\n"\
3385"#define constevalmethod consteval /* C++20 */\n"\
3386"#elif __ae2f_stdcheck_CC(0)\n"\
3387"\n"\
3388"#undef constevalmethod\n"\
3389"/// @brief\n"\
3390"/// C++ keyword for constant-time functions.\n"\
3391"#define consteval\n"\
3392"#define constevalmethod constexprmethod\n"\
3393"\n"\
3394"#else\n"\
3395"\n"\
3396"#define consteval\n"\
3397"#endif // C++20\n"\
3398"\n"\
3399"#endif\n"\
3400"/** One eof gracefully */ \\\n"\
3401"\n"\
3402"\n"\
3403"/// @brief\n"\
3404"/// C++ union definition for @ref ae2f_union_cast\n"\
3405"/// @tparam t\n"\
3406"/// @tparam k\n"\
3407"/// @see\n"\
3408"/// @ref ae2f_union_cast\n"\
3409"template <typename t, typename k> union ae2f_UnionCaster {\n"\
3410" t a;\n"\
3411" k b;\n"\
3412" constexprmethod ae2f_UnionCaster(t _) : a(_) {}\n"\
3413" constexprmethod k _b() const { return b; }\n"\
3414"};\n"\
3415"\n"\
3416"#endif\n"\
3417"/** One eof gracefully */ \\\n"\
3418"\n"\
3419"/** include detected */ \\\n"\
3420"/** Path cursor */ \\\n"\
3421"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/Constexpr.hpp */ \\\n"\
3422"/** first fp: 0x55e37e25cce0 */ \\\n"\
3423"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/Constexpr.hpp */ \\\n"\
3424"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/ */ \\\n"\
3425"/** Found something. Now let\'s validate. */ \\\n"\
3426"/** It\'s not repeating */ \\\n"\
3427"/******************** */\\\n"\
3428"/* Now the path will be: */ \\\n"\
3429" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/Constexpr.hpp */ \\\n"\
3430"/**\n"\
3431"\n"\
3432" * @file consteval.hpp\n"\
3433" * @author ae2f\n"\
3434" * @brief\n"\
3435" * @date 2025-02-01\n"\
3436" *\n"\
3437"\n"\
3438" * @copyright Copyright (c) 2025\n"\
3439" *\n"\
3440"\n"\
3441" */\n"\
3442"#ifndef ae2f_Cast_consteval_hpp\n"\
3443"#define ae2f_Cast_consteval_hpp\n"\
3444"/** include detected */ \\\n"\
3445"/** Path cursor */ \\\n"\
3446"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../LangVer.h */ \\\n"\
3447"/** first fp: 0x55e37e25ded0 */ \\\n"\
3448"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../LangVer.h */ \\\n"\
3449"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../ */ \\\n"\
3450"/** Found something. Now let\'s validate. */ \\\n"\
3451"/** It\'s not repeating */ \\\n"\
3452"/******************** */\\\n"\
3453"/* Now the path will be: */ \\\n"\
3454" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../LangVer.h */ \\\n"\
3455"/** include detected */ \\\n"\
3456"/** Path cursor */ \\\n"\
3457"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././LangVer.auto.h */ \\\n"\
3458"/** first fp: 0x55e37e25f0c0 */ \\\n"\
3459"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././LangVer.auto.h */ \\\n"\
3460"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././ */ \\\n"\
3461"/** Found something. Now let\'s validate. */ \\\n"\
3462"/** It\'s not repeating */ \\\n"\
3463"/******************** */\\\n"\
3464"/* Now the path will be: */ \\\n"\
3465" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././LangVer.auto.h */ \\\n"\
3466"#if 90 >= 50\n"\
3467"#define ae2f_LangVer_C 1990\n"\
3468"#else\n"\
3469"#define ae2f_LangVer_C 2090\n"\
3470"#endif\n"\
3471"\n"\
3472"#if 11 >= 50\n"\
3473"#define ae2f_LangVer_CC 1911\n"\
3474"#else\n"\
3475"#define ae2f_LangVer_CC 2011\n"\
3476"#endif\n"\
3477"\n"\
3478"#define __ae2f_lvcheck_c(v) (ae2f_LangVer_C >= (v))\n"\
3479"#define __ae2f_lvcheck_cc(v) (ae2f_LangVer_CC >= (v))\n"\
3480"/** One eof gracefully */ \\\n"\
3481"\n"\
3482"\n"\
3483"#ifdef\t__cplusplus\n"\
3484"#undef\tae2f_stdcc_v\n"\
3485"#define\tae2f_stdcc_v\t(__cplusplus)\n"\
3486"#else\n"\
3487"\n"\
3488"#undef\tae2f_stdcc_v\n"\
3489"#define\tae2f_stdcc_v\t(199711L)\n"\
3490"\n"\
3491"#if __ae2f_lvcheck_cc(2011)\n"\
3492"#undef\tae2f_stdcc_v\n"\
3493"#define\tae2f_stdcc_v\t(201103L)\n"\
3494"#endif\n"\
3495"\n"\
3496"#if __ae2f_lvcheck_cc(2014)\n"\
3497"#undef\tae2f_stdcc_v\n"\
3498"#define\tae2f_stdcc_v\t(201402L)\n"\
3499"#endif\n"\
3500"\n"\
3501"#if __ae2f_lvcheck_cc(2017)\n"\
3502"#undef\tae2f_stdcc_v\n"\
3503"#define\tae2f_stdcc_v\t(201703L)\n"\
3504"#endif\n"\
3505"\n"\
3506"#if __ae2f_lvcheck_cc(2020)\n"\
3507"#undef\tae2f_stdcc_v\n"\
3508"#define\tae2f_stdcc_v\t(202002L)\n"\
3509"#endif\n"\
3510"\n"\
3511"#if __ae2f_lvcheck_cc(2023)\n"\
3512"#undef\tae2f_stdcc_v\n"\
3513"#define\tae2f_stdcc_v\t(202302L)\n"\
3514"#endif\n"\
3515"\n"\
3516"#endif\n"\
3517"\n"\
3518"#ifdef\t__STDC_VERSION__\n"\
3519"#undef\tae2f_stdc_v\n"\
3520"#define ae2f_stdc_v\t(__STDC_VERSION__)\n"\
3521"#else\n"\
3522"\n"\
3523"#undef\tae2f_stdc_v\n"\
3524"#define ae2f_stdc_v\t(199001L)\n"\
3525"\n"\
3526"#if __ae2f_lvcheck_c(1999)\n"\
3527"#undef\tae2f_stdc_v\n"\
3528"#define ae2f_stdc_v\t(199901L)\n"\
3529"#endif\n"\
3530"\n"\
3531"#if __ae2f_lvcheck_c(2011)\n"\
3532"#undef\tae2f_stdc_v\n"\
3533"#define ae2f_stdc_v\t(201112L)\n"\
3534"#endif\n"\
3535"\n"\
3536"#if __ae2f_lvcheck_c(2017)\n"\
3537"#undef\tae2f_stdc_v\n"\
3538"#define ae2f_stdc_v\t(201710L)\n"\
3539"#endif\n"\
3540"\n"\
3541"#if __ae2f_lvcheck_c(2023)\n"\
3542"#undef\tae2f_stdc_v\n"\
3543"#define ae2f_stdc_v\t(202311L)\n"\
3544"#endif\n"\
3545"\n"\
3546"#endif\n"\
3547"\n"\
3548"#undef\t__ae2f_stdcheck_C\n"\
3549"#undef\t__ae2f_stdcheck_CC\n"\
3550"\n"\
3551"#define __ae2f_stdcheck_C(v)\t(ae2f_stdc_v >= (v))\n"\
3552"#define __ae2f_stdcheck_CC(v)\t(ae2f_stdcc_v >= (v))\n"\
3553"/** One eof gracefully */ \\\n"\
3554"\n"\
3555"\n"\
3556"#if __ae2f_stdcheck_CC(201703L)\n"\
3557"#define if_constexpr if constexpr\n"\
3558"#else\n"\
3559"#define if_constexpr if\n"\
3560"#endif\n"\
3561"\n"\
3562"#if __ae2f_stdcheck_CC(202002L)\n"\
3563"#define if_consteval if consteval\n"\
3564"#else\n"\
3565"#define if_consteval if (0)\n"\
3566"#endif\n"\
3567"\n"\
3568"#if __ae2f_stdcheck_CC(202002L)\n"\
3569"#define constexprvirtual constexpr virtual\n"\
3570"/** constinit */\n"\
3571"#else\n"\
3572"#define constexprvirtual virtual\n"\
3573"#define constinit\t/* not available */\n"\
3574"#endif /* C++20 */\n"\
3575"\n"\
3576"#if __ae2f_stdcheck_CC(201402L)\n"\
3577"#define constextendedfun\tconstexpr\n"\
3578"#define constextendedeval \tconstexpr\n"\
3579"\n"\
3580"#define constextendedmethod\tconstexpr\n"\
3581"#define constextendedmethodeval\tconstexpr\n"\
3582"\n"\
3583"#else\n"\
3584"#define constextendedfun\tinline\n"\
3585"#define constextendedmethod\tinline\n"\
3586"\n"\
3587"#define constextendedeval\tinline\n"\
3588"#define constextendedmethodeval\tinline\n"\
3589"#endif // C++14\n"\
3590"\n"\
3591"#if __ae2f_stdcheck_CC(201103L)\n"\
3592"#define constexprmethod\t\tconstexpr\n"\
3593"#define constexprfun\t\tconstexpr\n"\
3594"#define constevalmethod\t\tconstexpr\n"\
3595"\n"\
3596"#else\n"\
3597"#define constexprmethod\t\tinline\n"\
3598"#define constexprfun\t\tinline\n"\
3599"#define constevalmethod\t\tinline\n"\
3600"#define virtual\n"\
3601"\n"\
3602"#if !defined(__cplusplus) /* C */\n"\
3603"\n"\
3604"#if !defined(__cplusplus) && __ae2f_lvcheck_c(2023)\n"\
3605"/** cosntexpr variable */\n"\
3606"#else\n"\
3607"#define constexpr\n"\
3608"#endif /* C23 */\n"\
3609"\n"\
3610"\n"\
3611"#endif /* C */\n"\
3612"\n"\
3613"#endif // C++11\n"\
3614"\n"\
3615"#if __ae2f_stdcheck_CC(202002L)\n"\
3616"#undef constevalmethod\n"\
3617"#define constevalmethod consteval /* C++20 */\n"\
3618"#elif __ae2f_stdcheck_CC(0)\n"\
3619"\n"\
3620"#undef constevalmethod\n"\
3621"/// @brief\n"\
3622"/// C++ keyword for constant-time functions.\n"\
3623"#define consteval\n"\
3624"#define constevalmethod constexprmethod\n"\
3625"\n"\
3626"#else\n"\
3627"\n"\
3628"#define consteval\n"\
3629"#endif // C++20\n"\
3630"\n"\
3631"#endif\n"\
3632"/** One eof gracefully */ \\\n"\
3633"\n"\
3634"/** include detected */ \\\n"\
3635"/** Path cursor */ \\\n"\
3636"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./LangVer.auto.h */ \\\n"\
3637"/** first fp: 0x55e37e25cce0 */ \\\n"\
3638"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./LangVer.auto.h */ \\\n"\
3639"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
3640"/** Found something. Now let\'s validate. */ \\\n"\
3641"/** It\'s not repeating */ \\\n"\
3642"/******************** */\\\n"\
3643"/* Now the path will be: */ \\\n"\
3644" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./LangVer.auto.h */ \\\n"\
3645"#if 90 >= 50\n"\
3646"#define ae2f_LangVer_C 1990\n"\
3647"#else\n"\
3648"#define ae2f_LangVer_C 2090\n"\
3649"#endif\n"\
3650"\n"\
3651"#if 11 >= 50\n"\
3652"#define ae2f_LangVer_CC 1911\n"\
3653"#else\n"\
3654"#define ae2f_LangVer_CC 2011\n"\
3655"#endif\n"\
3656"\n"\
3657"#define __ae2f_lvcheck_c(v) (ae2f_LangVer_C >= (v))\n"\
3658"#define __ae2f_lvcheck_cc(v) (ae2f_LangVer_CC >= (v))\n"\
3659"/** One eof gracefully */ \\\n"\
3660"\n"\
3661"/** include detected */ \\\n"\
3662"/** Path cursor */ \\\n"\
3663"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cxx.h */ \\\n"\
3664"/** first fp: 0x55e37e25cce0 */ \\\n"\
3665"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cxx.h */ \\\n"\
3666"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
3667"/** Found something. Now let\'s validate. */ \\\n"\
3668"/** It\'s not repeating */ \\\n"\
3669"/******************** */\\\n"\
3670"/* Now the path will be: */ \\\n"\
3671" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cxx.h */ \\\n"\
3672"/**\n"\
3673"\n"\
3674" * @file Cxx.h\n"\
3675" * @author ae2f\n"\
3676" * @brief \n"\
3677" * @date 2025-02-01\n"\
3678" * \n"\
3679" * @copyright Copyright (c) 2025\n"\
3680" * \n"\
3681" */\n"\
3682"\n"\
3683"/// @brief\n"\
3684"/// Literally nothing.\n"\
3685"#define ae2f_NONE\n"\
3686"\n"\
3687"#if __cplusplus\n"\
3688"\n"\
3689"/// @def ae2f_WhenCXX \n"\
3690"/// @brief\n"\
3691"/// Appears when the current language is C++.\n"\
3692"#define ae2f_WhenCXX(...) __VA_ARGS__\n"\
3693"\n"\
3694"/// @brief\n"\
3695"/// Appears when the current language is C.\n"\
3696"#define ae2f_WhenC(...) ae2f_NONE\n"\
3697"\n"\
3698"#else\n"\
3699"\n"\
3700"/// @brief\n"\
3701"/// Appears when the current language is C++.\n"\
3702"#define ae2f_WhenC(...) __VA_ARGS__\n"\
3703"\n"\
3704"/// @brief\n"\
3705"/// Appears when the current language is C.\n"\
3706"#define ae2f_WhenCXX(...) ae2f_NONE\n"\
3707"\n"\
3708"#endif\n"\
3709"\n"\
3710"/// @brief\n"\
3711"/// \n"\
3712"#define ae2f_is_cxx ae2f_WhenC(0) ae2f_WhenCXX(1)\n"\
3713"\n"\
3714"/// @brief\n"\
3715"/// Putting it after one condition in #if will find if the script\'s language considered as [C], while doxygen does not notice.\n"\
3716"/// \n"\
3717"/// For alter, see @ref ae2f_cxx_check\n"\
3718"#define ae2f_c_check && !ae2f_is_cxx\n"\
3719"\n"\
3720"/// @brief\n"\
3721"/// Putting it after one condition in #if will find if the script\'s language considered as [C++], while doxygen does not notice.\n"\
3722"/// \n"\
3723"/// For alter, see @ref ae2f_c_check\n"\
3724"#define ae2f_cxx_check && ae2f_is_cxx/** One eof gracefully */ \\\n"\
3725"\n"\
3726"/** include detected */ \\\n"\
3727"/** Path cursor */ \\\n"\
3728"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/stdbool.h */ \\\n"\
3729"/** first fp: (nil) */ \\\n"\
3730"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stdbool.h */ \\\n"\
3731"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stdbool.h */ \\\n"\
3732"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdbool.h */ \\\n"\
3733"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdbool.h */ \\\n"\
3734"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stdbool.h */ \\\n"\
3735"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstdbool.h */ \\\n"\
3736"/** Failed but ignoring it. */ \\\n"\
3737"\n"\
3738"/** include detected */ \\\n"\
3739"/** Path cursor */ \\\n"\
3740"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/stddef.h */ \\\n"\
3741"/** first fp: (nil) */ \\\n"\
3742"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stddef.h */ \\\n"\
3743"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stddef.h */ \\\n"\
3744"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
3745"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
3746"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stddef.h */ \\\n"\
3747"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstddef.h */ \\\n"\
3748"/** Failed but ignoring it. */ \\\n"\
3749"\n"\
3750"/** include detected */ \\\n"\
3751"/** Path cursor */ \\\n"\
3752"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Guide.h */ \\\n"\
3753"/** first fp: 0x55e37e25cce0 */ \\\n"\
3754"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Guide.h */ \\\n"\
3755"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
3756"/** Found something. Now let\'s validate. */ \\\n"\
3757"/** It\'s not repeating */ \\\n"\
3758"/******************** */\\\n"\
3759"/* Now the path will be: */ \\\n"\
3760" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Guide.h */ \\\n"\
3761"/**\n"\
3762"\n"\
3763" * @file ae2f/Guide.h\n"\
3764" * @brief\n"\
3765" * Guide markers for conventions.\n"\
3766" * */\n"\
3767"#undef ae2f_LP\n"\
3768"#undef ae2f_NONE\n"\
3769"#undef ae2f_opt\n"\
3770"\n"\
3771"/** @def ae2f_NONE @brief nothing. */\n"\
3772"#define ae2f_NONE\n"\
3773"\n"\
3774"/** \n"\
3775" * @def ae2f_LP\n"\
3776" *\n"\
3777"\n"\
3778" * @brief \n"\
3779" * Desired count required. \n"\
3780" * \n"\
3781" * @param ...\n"\
3782" * Parameter with this preprocessor means \\n\n"\
3783" * the pointer is considered as list, and inside of this is a desired size.\n"\
3784" * */\n"\
3785"#define\tae2f_LP(...) ae2f_NONE\n"\
3786"\n"\
3787"/** @def ae2f_opt @brief Optional. */\n"\
3788"#define ae2f_opt ae2f_NONE\n"\
3789"\n"\
3790"/** \n"\
3791" * @def ae2f_FREE \n"\
3792" * @brief Use this marker to show the desired functions\n"\
3793" * \tto effectively free the resources.\n"\
3794" * */\n"\
3795"#define ae2f_FREE(...) ae2f_NONE\n"\
3796"\n"\
3797"/** @brief l_value. */\n"\
3798"#define ae2f_v ae2f_NONE\n"\
3799"/** One eof gracefully */ \\\n"\
3800"\n"\
3801"\n"\
3802"/// @brief\n"\
3803"/// Initialiser for trivial structures / classes.\n"\
3804"#define ae2f_RecordMk(type, ...) \\\n"\
3805" (ae2f_WhenC((type){__VA_ARGS__}) ae2f_WhenCXX(type{__VA_ARGS__}))\n"\
3806"\n"\
3807"/// @brief\n"\
3808"/// # static_cast\n"\
3809"#define ae2f_static_cast(t, v) \\\n"\
3810" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(static_cast<t>(v))\n"\
3811"\n"\
3812"/// @brief\n"\
3813"/// # dynamic_cast\n"\
3814"#define ae2f_dynamic_cast(t, v) \\\n"\
3815" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(dynamic_cast<t>(v))\n"\
3816"\n"\
3817"/// @brief\n"\
3818"/// # reinterpret_cast\n"\
3819"#define ae2f_reinterpret_cast(t, v) \\\n"\
3820" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(reinterpret_cast<t>(v))\n"\
3821"\n"\
3822"/// @brief\n"\
3823"/// # const_cast\n"\
3824"#define ae2f_const_cast(t, v) \\\n"\
3825" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(const_cast<t>(v))\n"\
3826"\n"\
3827"/// @brief\n"\
3828"/// Makes a union that reads a memory in two methods. \\n\n"\
3829"/// `tThen` -> `tNow`\n"\
3830"/// @tparam tThen\n"\
3831"/// The existing data\'s type as input.\n"\
3832"///\n"\
3833"/// @tparam tNow\n"\
3834"/// Wanted output datatype for casting.\n"\
3835"///\n"\
3836"/// @param v\n"\
3837"/// Input value\n"\
3838"#define ae2f_union_cast(tThen, tNow, v) \\\n"\
3839" ae2f_WhenC((union { \\\n"\
3840" tThen a; \\\n"\
3841" tNow b; \\\n"\
3842" }){v}) ae2f_WhenCXX(ae2f_UnionCaster<tThen, tNow>(v)) \\\n"\
3843" ._b()\n"\
3844"\n"\
3845"/// @brief\n"\
3846"/// In C, keyword \'struct\' must be written in front of the structure\'s name in\n"\
3847"/// order to use as a type name. \\n In C++ that keyword is not required.\n"\
3848"///\n"\
3849"/// This keyword resolves the difference of the rules of two.\n"\
3850"#define ae2f_struct ae2f_WhenC(struct)\n"\
3851"\n"\
3852"/// @brief\n"\
3853"/// Suggests the existence of external variable or function, in naming of C.\n"\
3854"/// [non-mangling]\n"\
3855"#define ae2f_extern ae2f_WhenC(extern) ae2f_WhenCXX(extern \"C\")\n"\
3856"\n"\
3857"/// @brief\n"\
3858"/// Class\n"\
3859"#define ae2f_class ae2f_WhenC(struct) ae2f_WhenCXX(class)\n"\
3860"\n"\
3861"/// @brief\n"\
3862"/// Makes the global variable in naming of C. [non-mangling]\n"\
3863"#define ae2f_var ae2f_WhenCXX(extern \"C\")\n"\
3864"\n"\
3865"/// @brief\n"\
3866"/// Function definitions\n"\
3867"#define ae2f_fdef(rtn_t, name, ...) rtn_t (*name)(__VA_ARGS__)\n"\
3868"\n"\
3869"/** @brief Invokes when condition is `false`. */\n"\
3870"#define unless(...) if (!(__VA_ARGS__))\n"\
3871"\n"\
3872"#define ae2f_structdef_v(key, name, ...) \\\n"\
3873" typedef key name __VA_ARGS__; \\\n"\
3874" key name\n"\
3875"\n"\
3876"#define ae2f_structdef_n(key, name, ...)\tae2f_structdef_v(key, name, name, __VA_ARGS__)\n"\
3877"#define ae2f_structdef(key, name)\t\tae2f_structdef_v(key, name, name)\n"\
3878"#define ae2f_enumdef(name, ...)\t\t\ttypedef enum name __VA_ARGS__ name\n"\
3879"\n"\
3880"#define ae2f_tmpldef(...) template<__VA_ARGS__>\n"\
3881"#define ae2f_tmpluse(...) <__VA_ARGS__>\n"\
3882"\n"\
3883"/**\n"\
3884"\n"\
3885" * @brief\n"\
3886" * Make two pair of function as [eval] and [expr]. \\n\n"\
3887" * [expr] will just call [eval]. \\n\n"\
3888" * You will implement the body of [eval].\n"\
3889" *\n"\
3890"\n"\
3891" * Following is an use case.\n"\
3892" * @code\n"\
3893" * ae2f_evaldef(\n"\
3894"\t\ttemplate<int a>, <0>\n"\
3895"\t\t, consteval, constexprfun\n"\
3896"\t\t, int, Hello, _Hello, char v, v) \n"\
3897"\t\t{ return v; }\n"\
3898" * */\n"\
3899"#define ae2f_evaldef(tmpldef, tmpluse, keyeval, keyexpr, ret_t, nameeval, nameexpr, prmdef, prmuse) \\\n"\
3900"\ttmpldef keyeval ret_t nameeval(prmdef); \\\n"\
3901"\ttmpldef keyexpr ret_t nameexpr(prmdef) { \\\n"\
3902"\t\treturn nameeval tmpluse (prmuse); \\\n"\
3903"\t} \\\n"\
3904"\ttmpldef keyeval ret_t nameeval(prmdef)\n"\
3905"\n"\
3906"#if !__ae2f_stdcheck_CC(201103L)\n"\
3907"#undef\tnoexcept\n"\
3908"#define noexcept\n"\
3909"#endif\n"\
3910"\n"\
3911"\n"\
3912"#undef\trestrict /** First declaration */\n"\
3913"#if ae2f_stdc_v < 199901L\n"\
3914"#undef\trestrict\n"\
3915"#define restrict\n"\
3916"#endif // C>=99\n"\
3917"\n"\
3918"#if __cplusplus\n"\
3919"#undef\trestrict\n"\
3920"#define restrict\n"\
3921"#endif // C++\n"\
3922"\n"\
3923"#if !__ae2f_stdcheck_CC(201103L)\n"\
3924"/// @brief\n"\
3925"/// Means that there will be no exception thrown written in code.\n"\
3926"#define noexcept\n"\
3927"#define constexpr\n"\
3928"#endif /* C++<=11 */\n"\
3929"\n"\
3930"#if ae2f_WhenC(!)0\n"\
3931"#undef noexcept\n"\
3932"#define noexcept\n"\
3933"#endif\n"\
3934"\n"\
3935"#endif\n"\
3936"/** One eof gracefully */ \\\n"\
3937"\n"\
3938"/** include detected */ \\\n"\
3939"/** Path cursor */ \\\n"\
3940"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ae2f/Call.h */ \\\n"\
3941"/** first fp: (nil) */ \\\n"\
3942"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Call.h */ \\\n"\
3943"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Call.h */ \\\n"\
3944"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Call.h */ \\\n"\
3945"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Call.h */ \\\n"\
3946"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Call.h */ \\\n"\
3947"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Call.h */ \\\n"\
3948"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
3949"/** Found something. Now let\'s validate. */ \\\n"\
3950"/** It\'s not repeating */ \\\n"\
3951"/******************** */\\\n"\
3952"/* Now the path will be: */ \\\n"\
3953" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Call.h */ \\\n"\
3954"/**\n"\
3955"\n"\
3956" * @file Call.h\n"\
3957" * @author ae2f\n"\
3958" * @brief \n"\
3959" * @date 2025-02-01\n"\
3960" * \n"\
3961" * @copyright Copyright (c) 2025\n"\
3962" * \n"\
3963" */\n"\
3964"\n"\
3965"#ifndef ae2f_Call_h\n"\
3966"#define ae2f_Call_h\n"\
3967"\n"\
3968"/** include detected */ \\\n"\
3969"/** Path cursor */ \\\n"\
3970"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Platform.h */ \\\n"\
3971"/** first fp: 0x55e37e25cce0 */ \\\n"\
3972"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Platform.h */ \\\n"\
3973"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
3974"/** Found something. Now let\'s validate. */ \\\n"\
3975"/** It\'s not repeating */ \\\n"\
3976"/******************** */\\\n"\
3977"/* Now the path will be: */ \\\n"\
3978" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Platform.h */ \\\n"\
3979"#define ON 1\n"\
3980"#define OFF 0\n"\
3981"\n"\
3982"#if (defined(_WIN32) || defined(_WIN64))\n"\
3983"#define ae2f_IS_WIN 1\n"\
3984"#else \n"\
3985"#define ae2f_IS_WIN 0\n"\
3986"#endif\n"\
3987"\n"\
3988"#if (defined(__linux__))\n"\
3989"#define ae2f_IS_LINUX 1\n"\
3990"#else \n"\
3991"#define ae2f_IS_LINUX 0\n"\
3992"#endif\n"\
3993"\n"\
3994"#if defined(__MACH__) || defined(__APPLE__)\n"\
3995"#define ae2f_IS_APPLE 1\n"\
3996"#else\n"\
3997"#define ae2f_IS_APPLE 0\n"\
3998"#endif\n"\
3999"\n"\
4000"#if (ae2f_IS_WIN == ae2f_IS_LINUX) && (ae2f_IS_LINUX == ae2f_IS_APPLE) && (ae2f_IS_APPLE == ae2f_IS_WIN)\n"\
4001"/** PLATFORM NOT SPECIFIED. */\n"\
4002"\n"\
4003"/**** @brief UNSPECIFIED */\n"\
4004"#define ae2f_IDK 1\n"\
4005"#else\n"\
4006"/**** @brief UNSPECIFIED */\n"\
4007"#define ae2f_IDK 0\n"\
4008"#endif\n"\
4009"/** One eof gracefully */ \\\n"\
4010"\n"\
4011"/** include detected */ \\\n"\
4012"/** Path cursor */ \\\n"\
4013"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Call.auto.h */ \\\n"\
4014"/** first fp: 0x55e37e25cce0 */ \\\n"\
4015"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Call.auto.h */ \\\n"\
4016"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
4017"/** Found something. Now let\'s validate. */ \\\n"\
4018"/** It\'s not repeating */ \\\n"\
4019"/******************** */\\\n"\
4020"/* Now the path will be: */ \\\n"\
4021" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Call.auto.h */ \\\n"\
4022"/**\n"\
4023"\n"\
4024" * @file Call.h\n"\
4025" * @author ae2f\n"\
4026" * @brief \n"\
4027" * @date 2025-02-01\n"\
4028" * \n"\
4029" * @copyright Copyright (c) 2025\n"\
4030" * \n"\
4031" */\n"\
4032"\n"\
4033"/** @brief Is a library shared */\n"\
4034"#define ae2f_IS_SHARED ON\n"\
4035"/** One eof gracefully */ \\\n"\
4036"\n"\
4037"\n"\
4038"#if ae2f_IS_SHARED\n"\
4039"\n"\
4040"#if ae2f_IS_WIN\n"\
4041"/// @brief\n"\
4042"/// # For Windows\n"\
4043"/// \n"\
4044"/// shared function imp\n"\
4045"#define ae2f_SHAREDEXPORT __declspec(dllexport)\n"\
4046"\n"\
4047"/// @brief\n"\
4048"/// # For Windows\n"\
4049"/// \n"\
4050"/// Function api call\n"\
4051"#define ae2f_SHAREDCALL \n"\
4052"#endif\n"\
4053"\n"\
4054"#if ae2f_IS_LINUX || ae2f_IS_APPLE\n"\
4055"/// @brief\n"\
4056"/// # For Linux, gcc based.\n"\
4057"/// \n"\
4058"/// shared function imp\n"\
4059"#define ae2f_SHAREDEXPORT __attribute__((visibility(\"default\")))\n"\
4060"\n"\
4061"/// @brief\n"\
4062"/// # For Linux, gcc based.\n"\
4063"///\n"\
4064"/// Function api call\n"\
4065"#define ae2f_SHAREDCALL\n"\
4066"#endif\n"\
4067"\n"\
4068"\n"\
4069"\n"\
4070"#else\n"\
4071"\n"\
4072"/// @brief\n"\
4073"/// # It is no shared library.\n"\
4074"/// \n"\
4075"/// shared function imp\n"\
4076"#define ae2f_SHAREDEXPORT\n"\
4077"/// @brief \n"\
4078"/// # It is no shared library.\n"\
4079"///\n"\
4080"/// Function api call\n"\
4081"#define ae2f_SHAREDCALL\n"\
4082"#endif\n"\
4083"\n"\
4084"#endif\n"\
4085"/** One eof gracefully */ \\\n"\
4086"\n"\
4087"/** include detected */ \\\n"\
4088"/** Path cursor */ \\\n"\
4089"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ae2f/Macro.h */ \\\n"\
4090"/** first fp: (nil) */ \\\n"\
4091"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Macro.h */ \\\n"\
4092"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Macro.h */ \\\n"\
4093"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Macro.h */ \\\n"\
4094"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Macro.h */ \\\n"\
4095"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Macro.h */ \\\n"\
4096"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clae2f/Macro.h */ \\\n"\
4097"/** Failed but ignoring it. */ \\\n"\
4098"\n"\
4099"/** include detected */ \\\n"\
4100"/** Path cursor */ \\\n"\
4101"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ae2f/Guide.h */ \\\n"\
4102"/** first fp: (nil) */ \\\n"\
4103"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Guide.h */ \\\n"\
4104"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Guide.h */ \\\n"\
4105"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Guide.h */ \\\n"\
4106"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Guide.h */ \\\n"\
4107"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Guide.h */ \\\n"\
4108"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Guide.h */ \\\n"\
4109"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
4110"/** Found something. Now let\'s validate. */ \\\n"\
4111"/** It\'s not repeating */ \\\n"\
4112"/******************** */\\\n"\
4113"/* Now the path will be: */ \\\n"\
4114" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Guide.h */ \\\n"\
4115"/**\n"\
4116"\n"\
4117" * @file ae2f/Guide.h\n"\
4118" * @brief\n"\
4119" * Guide markers for conventions.\n"\
4120" * */\n"\
4121"#undef ae2f_LP\n"\
4122"#undef ae2f_NONE\n"\
4123"#undef ae2f_opt\n"\
4124"\n"\
4125"/** @def ae2f_NONE @brief nothing. */\n"\
4126"#define ae2f_NONE\n"\
4127"\n"\
4128"/** \n"\
4129" * @def ae2f_LP\n"\
4130" *\n"\
4131"\n"\
4132" * @brief \n"\
4133" * Desired count required. \n"\
4134" * \n"\
4135" * @param ...\n"\
4136" * Parameter with this preprocessor means \\n\n"\
4137" * the pointer is considered as list, and inside of this is a desired size.\n"\
4138" * */\n"\
4139"#define\tae2f_LP(...) ae2f_NONE\n"\
4140"\n"\
4141"/** @def ae2f_opt @brief Optional. */\n"\
4142"#define ae2f_opt ae2f_NONE\n"\
4143"\n"\
4144"/** \n"\
4145" * @def ae2f_FREE \n"\
4146" * @brief Use this marker to show the desired functions\n"\
4147" * \tto effectively free the resources.\n"\
4148" * */\n"\
4149"#define ae2f_FREE(...) ae2f_NONE\n"\
4150"\n"\
4151"/** @brief l_value. */\n"\
4152"#define ae2f_v ae2f_NONE\n"\
4153"/** One eof gracefully */ \\\n"\
4154"\n"\
4155"\n"\
4156"/** include detected */ \\\n"\
4157"/** Path cursor */ \\\n"\
4158"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ae2f/Ann/Act.h */ \\\n"\
4159"/** first fp: (nil) */ \\\n"\
4160"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Act.h */ \\\n"\
4161"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Act.h */ \\\n"\
4162"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ */ \\\n"\
4163"/** Found something. Now let\'s validate. */ \\\n"\
4164"/** It\'s not repeating */ \\\n"\
4165"/******************** */\\\n"\
4166"/* Now the path will be: */ \\\n"\
4167" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Act.h */ \\\n"\
4168"/**\n"\
4169"\n"\
4170" * @file vAct.h\n"\
4171" * @author ae2f\n"\
4172" * @brief \n"\
4173" * @version 0.1\n"\
4174" * @date 2025-02-13\n"\
4175" * \n"\
4176" * @copyright Copyright (c) 2025\n"\
4177" * \n"\
4178" */\n"\
4179"\n"\
4180"#ifndef ae2fCL_AnnAct_h\n"\
4181"#define ae2fCL_AnnAct_h\n"\
4182"\n"\
4183"/** include detected */ \\\n"\
4184"/** Path cursor */ \\\n"\
4185"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/stddef.h */ \\\n"\
4186"/** first fp: (nil) */ \\\n"\
4187"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stddef.h */ \\\n"\
4188"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stddef.h */ \\\n"\
4189"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
4190"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
4191"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stddef.h */ \\\n"\
4192"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstddef.h */ \\\n"\
4193"/** Failed but ignoring it. */ \\\n"\
4194"\n"\
4195"/** include detected */ \\\n"\
4196"/** Path cursor */ \\\n"\
4197"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Float.h */ \\\n"\
4198"/** first fp: (nil) */ \\\n"\
4199"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Float.h */ \\\n"\
4200"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Float.h */ \\\n"\
4201"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Float.h */ \\\n"\
4202"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Float.h */ \\\n"\
4203"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Float.h */ \\\n"\
4204"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Float.h */ \\\n"\
4205"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
4206"/** Found something. Now let\'s validate. */ \\\n"\
4207"/** It\'s not repeating */ \\\n"\
4208"/******************** */\\\n"\
4209"/* Now the path will be: */ \\\n"\
4210" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Float.h */ \\\n"\
4211"/**\n"\
4212"\n"\
4213" * @file Float.h\n"\
4214" * @brief\n"\
4215" * Here, float will be treated as bit vector with four attributes:\n"\
4216" *\n"\
4217"\n"\
4218" * sign: \\n\t\n"\
4219" * \t> Whether it has sign or not. \\n\n"\
4220" *\n"\
4221"\n"\
4222" * exp:\t\\n\n"\
4223" * \t> Exponent. It will be considered as unsigned integer, \\n\n"\
4224" * \t> Which is the exponent of the [frac]\n"\
4225" *\n"\
4226"\n"\
4227" * expbiasp: \\n\n"\
4228" * \t> Exponent bias in order to be considered as zero. \\n\n"\
4229" * \t> For handling possibly negative values of [exp] (such as 0.5) \\n\n"\
4230" *\n"\
4231"\n"\
4232" * \t> Here, the value of exponent bias is limited with following rules:\n"\
4233" * \t\t- It must be (2^([expbiasp]) - 1), and you are actually setting [expbiasp].\n"\
4234" * \t\t- [expbiasp] must be between 1 and [exp].\n"\
4235" *\n"\
4236"\n"\
4237" * frac: \\n\n"\
4238" * \t> The actual \"value\" for floating point.\n"\
4239" *\n"\
4240"\n"\
4241" * ==================\n"\
4242" *\n"\
4243"\n"\
4244" * Following is the expected structure as bit vector: \\n\n"\
4245" * [frac | exp | sign]\n"\
4246" * \n"\
4247" * Size of this will be calculated as: \\n\n"\
4248" * [sign] + [exp] + [frac]\n"\
4249" */\n"\
4250"\n"\
4251"#ifndef ae2f_Float_h\n"\
4252"#define ae2f_Float_h\n"\
4253"\n"\
4254"/** include detected */ \\\n"\
4255"/** Path cursor */ \\\n"\
4256"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Float.auto.h */ \\\n"\
4257"/** first fp: 0x55e37e25ded0 */ \\\n"\
4258"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Float.auto.h */ \\\n"\
4259"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
4260"/** Found something. Now let\'s validate. */ \\\n"\
4261"/** It\'s not repeating */ \\\n"\
4262"/******************** */\\\n"\
4263"/* Now the path will be: */ \\\n"\
4264" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Float.auto.h */ \\\n"\
4265"/**\n"\
4266"\n"\
4267" * @file Float.h\n"\
4268" * @author ae2f\n"\
4269" * @brief \n"\
4270" * @date 2025-02-01\n"\
4271" * \n"\
4272" * @copyright Copyright (c) 2025\n"\
4273" * \n"\
4274" */\n"\
4275"#ifndef ae2f_float_h\n"\
4276"#define ae2f_float_h\n"\
4277"\n"\
4278"/// @brief \n"\
4279"/// Predefined floating point type.\n"\
4280"/// \n"\
4281"/// See @ref ___DOC_CMAKE::ae2f_float\n"\
4282"#define ae2f_float float\n"\
4283"\n"\
4284"#endif \n"\
4285"/** One eof gracefully */ \\\n"\
4286"\n"\
4287"\n"\
4288"typedef ae2f_float ae2f_float_t;\n"\
4289"\n"\
4290"#endif\n"\
4291"/** One eof gracefully */ \\\n"\
4292"\n"\
4293"\n"\
4294"/// @brief Customisable activasion function type.\n"\
4295"typedef void ae2f_AnnAct_t (ae2f_float_t* ret, ae2f_float_t x);\n"\
4296"\n"\
4297"/// @brief\n"\
4298"/// Specify the way of calculating loss.\n"\
4299"/// \n"\
4300"/// This will be multiplied with learning rate, \\n\n"\
4301"/// and that value will be added to each weights field and bias.\n"\
4302"/// @param out Predicted value\n"\
4303"/// @param goal Expected value (wanted)\n"\
4304"/// @return Calculated loss.\n"\
4305"typedef void ae2f_AnnLoss_t (\n"\
4306"\t\tae2f_float_t*\t\tret,\n"\
4307"\t\tconst ae2f_float_t*\tout, \n"\
4308"\t\tconst ae2f_float_t* \tgoal,\n"\
4309"\t\tsize_t\t\t\tindex,\n"\
4310"\t\tsize_t\t\t\tcount\n"\
4311"\t\t);\n"\
4312"\n"\
4313"#endif\n"\
4314"/** One eof gracefully */ \\\n"\
4315"\n"\
4316"/** include detected */ \\\n"\
4317"/** Path cursor */ \\\n"\
4318"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ae2f/Pack/Beg.h */ \\\n"\
4319"/** first fp: (nil) */ \\\n"\
4320"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Pack/Beg.h */ \\\n"\
4321"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Pack/Beg.h */ \\\n"\
4322"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/Beg.h */ \\\n"\
4323"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/Beg.h */ \\\n"\
4324"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
4325"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
4326"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/ */ \\\n"\
4327"/** Found something. Now let\'s validate. */ \\\n"\
4328"/** It\'s not repeating */ \\\n"\
4329"/******************** */\\\n"\
4330"/* Now the path will be: */ \\\n"\
4331" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
4332"/**\n"\
4333"\n"\
4334" * @file Beg.h\n"\
4335" * @author ae2f\n"\
4336" * @brief\n"\
4337" * @date 2025-02-01\n"\
4338" * \n"\
4339" * @copyright Copyright (c) 2025\n"\
4340" * \n"\
4341" */\n"\
4342"\n"\
4343"/** include detected */ \\\n"\
4344"/** Path cursor */ \\\n"\
4345"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
4346"/** first fp: 0x55e37e25cce0 */ \\\n"\
4347"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
4348"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./ */ \\\n"\
4349"/** Found something. Now let\'s validate. */ \\\n"\
4350"/** It\'s not repeating */ \\\n"\
4351"/******************** */\\\n"\
4352"/* Now the path will be: */ \\\n"\
4353" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
4354"/**\n"\
4355"\n"\
4356" * @file Num.h\n"\
4357" * @author ae2f\n"\
4358" * @brief \n"\
4359" * @date 2025-02-01\n"\
4360" * \n"\
4361" * @copyright Copyright (c) 2025\n"\
4362" * \n"\
4363" */\n"\
4364"\n"\
4365"/// @brief\n"\
4366"/// Pre-defined structure packed byte count.\n"\
4367"/// \n"\
4368"/// See @ref ___DOC_CMAKE::ae2f_packcount\n"\
4369"#define ae2f_PackCount 0\n"\
4370"/** One eof gracefully */ \\\n"\
4371"\n"\
4372"\n"\
4373"#if ae2f_PackCount\n"\
4374"#pragma pack(push, 0)\n"\
4375"#endif\n"\
4376"/** One eof gracefully */ \\\n"\
4377"\n"\
4378"/** include detected */ \\\n"\
4379"/** Path cursor */ \\\n"\
4380"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ae2f/Ann/Util.h */ \\\n"\
4381"/** first fp: (nil) */ \\\n"\
4382"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Util.h */ \\\n"\
4383"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Util.h */ \\\n"\
4384"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ */ \\\n"\
4385"/** Found something. Now let\'s validate. */ \\\n"\
4386"/** It\'s not repeating */ \\\n"\
4387"/******************** */\\\n"\
4388"/* Now the path will be: */ \\\n"\
4389" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Util.h */ \\\n"\
4390"#ifndef ae2f_Ann_Util_h\n"\
4391"#define ae2f_Ann_Util_h\n"\
4392"\n"\
4393"/** include detected */ \\\n"\
4394"/** Path cursor */ \\\n"\
4395"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Cast.h */ \\\n"\
4396"/** first fp: (nil) */ \\\n"\
4397"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Cast.h */ \\\n"\
4398"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Cast.h */ \\\n"\
4399"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Cast.h */ \\\n"\
4400"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Cast.h */ \\\n"\
4401"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cast.h */ \\\n"\
4402"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cast.h */ \\\n"\
4403"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
4404"/** Found something. Now let\'s validate. */ \\\n"\
4405"/** It\'s not repeating */ \\\n"\
4406"/******************** */\\\n"\
4407"/* Now the path will be: */ \\\n"\
4408" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cast.h */ \\\n"\
4409"/**\n"\
4410"\n"\
4411" * @file Cast.h\n"\
4412" * @author ae2f\n"\
4413" * @brief\n"\
4414" * @date 2025-02-01\n"\
4415" *\n"\
4416"\n"\
4417" * @copyright Copyright (c) 2025\n"\
4418" *\n"\
4419"\n"\
4420" */\n"\
4421"\n"\
4422"#if !defined(ae2f_Cast_h)\n"\
4423"\n"\
4424"/// @brief\n"\
4425"/// asdf\n"\
4426"#define ae2f_Cast_h\n"\
4427"\n"\
4428"/// @brief\n"\
4429"/// ANSI Code for clearing the console.\n"\
4430"/// Clearing all display, moving the cursor on the top.\n"\
4431"#define ae2f_CastCCls \"\\033[2J\\033[H\"\n"\
4432"\n"\
4433"/// @brief\n"\
4434"/// simply merge all text inside the round bracket, counting them as a single\n"\
4435"/// text block.\n"\
4436"#define ae2f_CastMerge(...) __VA_ARGS__\n"\
4437"\n"\
4438"/** include detected */ \\\n"\
4439"/** Path cursor */ \\\n"\
4440"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/CasterUnion.hpp */ \\\n"\
4441"/** first fp: 0x55e37e25ded0 */ \\\n"\
4442"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/CasterUnion.hpp */ \\\n"\
4443"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/ */ \\\n"\
4444"/** Found something. Now let\'s validate. */ \\\n"\
4445"/** It\'s not repeating */ \\\n"\
4446"/******************** */\\\n"\
4447"/* Now the path will be: */ \\\n"\
4448" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/CasterUnion.hpp */ \\\n"\
4449"/**\n"\
4450"\n"\
4451" * @file CasterUnion.hpp\n"\
4452" * @author ae2f\n"\
4453" * @brief\n"\
4454" * @date 2025-02-01\n"\
4455" *\n"\
4456"\n"\
4457" * @copyright Copyright (c) 2025\n"\
4458" *\n"\
4459"\n"\
4460" */\n"\
4461"\n"\
4462"#if !defined(ae2f_Cast_CasterUnion_hpp) && defined(__cplusplus)\n"\
4463"#define ae2f_Cast_CasterUnion_hpp\n"\
4464"/** include detected */ \\\n"\
4465"/** Path cursor */ \\\n"\
4466"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./Constexpr.hpp */ \\\n"\
4467"/** first fp: 0x55e37e25f0c0 */ \\\n"\
4468"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./Constexpr.hpp */ \\\n"\
4469"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./ */ \\\n"\
4470"/** Found something. Now let\'s validate. */ \\\n"\
4471"/** It\'s not repeating */ \\\n"\
4472"/******************** */\\\n"\
4473"/* Now the path will be: */ \\\n"\
4474" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./Constexpr.hpp */ \\\n"\
4475"/**\n"\
4476"\n"\
4477" * @file consteval.hpp\n"\
4478" * @author ae2f\n"\
4479" * @brief\n"\
4480" * @date 2025-02-01\n"\
4481" *\n"\
4482"\n"\
4483" * @copyright Copyright (c) 2025\n"\
4484" *\n"\
4485"\n"\
4486" */\n"\
4487"#ifndef ae2f_Cast_consteval_hpp\n"\
4488"#define ae2f_Cast_consteval_hpp\n"\
4489"/** include detected */ \\\n"\
4490"/** Path cursor */ \\\n"\
4491"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../LangVer.h */ \\\n"\
4492"/** first fp: 0x55e37e2602b0 */ \\\n"\
4493"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../LangVer.h */ \\\n"\
4494"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../ */ \\\n"\
4495"/** Found something. Now let\'s validate. */ \\\n"\
4496"/** It\'s not repeating */ \\\n"\
4497"/******************** */\\\n"\
4498"/* Now the path will be: */ \\\n"\
4499" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./../LangVer.h */ \\\n"\
4500"/** include detected */ \\\n"\
4501"/** Path cursor */ \\\n"\
4502"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././LangVer.auto.h */ \\\n"\
4503"/** first fp: 0x55e37e2614a0 */ \\\n"\
4504"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././LangVer.auto.h */ \\\n"\
4505"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././ */ \\\n"\
4506"/** Found something. Now let\'s validate. */ \\\n"\
4507"/** It\'s not repeating */ \\\n"\
4508"/******************** */\\\n"\
4509"/* Now the path will be: */ \\\n"\
4510" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/./.././LangVer.auto.h */ \\\n"\
4511"#if 90 >= 50\n"\
4512"#define ae2f_LangVer_C 1990\n"\
4513"#else\n"\
4514"#define ae2f_LangVer_C 2090\n"\
4515"#endif\n"\
4516"\n"\
4517"#if 11 >= 50\n"\
4518"#define ae2f_LangVer_CC 1911\n"\
4519"#else\n"\
4520"#define ae2f_LangVer_CC 2011\n"\
4521"#endif\n"\
4522"\n"\
4523"#define __ae2f_lvcheck_c(v) (ae2f_LangVer_C >= (v))\n"\
4524"#define __ae2f_lvcheck_cc(v) (ae2f_LangVer_CC >= (v))\n"\
4525"/** One eof gracefully */ \\\n"\
4526"\n"\
4527"\n"\
4528"#ifdef\t__cplusplus\n"\
4529"#undef\tae2f_stdcc_v\n"\
4530"#define\tae2f_stdcc_v\t(__cplusplus)\n"\
4531"#else\n"\
4532"\n"\
4533"#undef\tae2f_stdcc_v\n"\
4534"#define\tae2f_stdcc_v\t(199711L)\n"\
4535"\n"\
4536"#if __ae2f_lvcheck_cc(2011)\n"\
4537"#undef\tae2f_stdcc_v\n"\
4538"#define\tae2f_stdcc_v\t(201103L)\n"\
4539"#endif\n"\
4540"\n"\
4541"#if __ae2f_lvcheck_cc(2014)\n"\
4542"#undef\tae2f_stdcc_v\n"\
4543"#define\tae2f_stdcc_v\t(201402L)\n"\
4544"#endif\n"\
4545"\n"\
4546"#if __ae2f_lvcheck_cc(2017)\n"\
4547"#undef\tae2f_stdcc_v\n"\
4548"#define\tae2f_stdcc_v\t(201703L)\n"\
4549"#endif\n"\
4550"\n"\
4551"#if __ae2f_lvcheck_cc(2020)\n"\
4552"#undef\tae2f_stdcc_v\n"\
4553"#define\tae2f_stdcc_v\t(202002L)\n"\
4554"#endif\n"\
4555"\n"\
4556"#if __ae2f_lvcheck_cc(2023)\n"\
4557"#undef\tae2f_stdcc_v\n"\
4558"#define\tae2f_stdcc_v\t(202302L)\n"\
4559"#endif\n"\
4560"\n"\
4561"#endif\n"\
4562"\n"\
4563"#ifdef\t__STDC_VERSION__\n"\
4564"#undef\tae2f_stdc_v\n"\
4565"#define ae2f_stdc_v\t(__STDC_VERSION__)\n"\
4566"#else\n"\
4567"\n"\
4568"#undef\tae2f_stdc_v\n"\
4569"#define ae2f_stdc_v\t(199001L)\n"\
4570"\n"\
4571"#if __ae2f_lvcheck_c(1999)\n"\
4572"#undef\tae2f_stdc_v\n"\
4573"#define ae2f_stdc_v\t(199901L)\n"\
4574"#endif\n"\
4575"\n"\
4576"#if __ae2f_lvcheck_c(2011)\n"\
4577"#undef\tae2f_stdc_v\n"\
4578"#define ae2f_stdc_v\t(201112L)\n"\
4579"#endif\n"\
4580"\n"\
4581"#if __ae2f_lvcheck_c(2017)\n"\
4582"#undef\tae2f_stdc_v\n"\
4583"#define ae2f_stdc_v\t(201710L)\n"\
4584"#endif\n"\
4585"\n"\
4586"#if __ae2f_lvcheck_c(2023)\n"\
4587"#undef\tae2f_stdc_v\n"\
4588"#define ae2f_stdc_v\t(202311L)\n"\
4589"#endif\n"\
4590"\n"\
4591"#endif\n"\
4592"\n"\
4593"#undef\t__ae2f_stdcheck_C\n"\
4594"#undef\t__ae2f_stdcheck_CC\n"\
4595"\n"\
4596"#define __ae2f_stdcheck_C(v)\t(ae2f_stdc_v >= (v))\n"\
4597"#define __ae2f_stdcheck_CC(v)\t(ae2f_stdcc_v >= (v))\n"\
4598"/** One eof gracefully */ \\\n"\
4599"\n"\
4600"\n"\
4601"#if __ae2f_stdcheck_CC(201703L)\n"\
4602"#define if_constexpr if constexpr\n"\
4603"#else\n"\
4604"#define if_constexpr if\n"\
4605"#endif\n"\
4606"\n"\
4607"#if __ae2f_stdcheck_CC(202002L)\n"\
4608"#define if_consteval if consteval\n"\
4609"#else\n"\
4610"#define if_consteval if (0)\n"\
4611"#endif\n"\
4612"\n"\
4613"#if __ae2f_stdcheck_CC(202002L)\n"\
4614"#define constexprvirtual constexpr virtual\n"\
4615"/** constinit */\n"\
4616"#else\n"\
4617"#define constexprvirtual virtual\n"\
4618"#define constinit\t/* not available */\n"\
4619"#endif /* C++20 */\n"\
4620"\n"\
4621"#if __ae2f_stdcheck_CC(201402L)\n"\
4622"#define constextendedfun\tconstexpr\n"\
4623"#define constextendedeval \tconstexpr\n"\
4624"\n"\
4625"#define constextendedmethod\tconstexpr\n"\
4626"#define constextendedmethodeval\tconstexpr\n"\
4627"\n"\
4628"#else\n"\
4629"#define constextendedfun\tinline\n"\
4630"#define constextendedmethod\tinline\n"\
4631"\n"\
4632"#define constextendedeval\tinline\n"\
4633"#define constextendedmethodeval\tinline\n"\
4634"#endif // C++14\n"\
4635"\n"\
4636"#if __ae2f_stdcheck_CC(201103L)\n"\
4637"#define constexprmethod\t\tconstexpr\n"\
4638"#define constexprfun\t\tconstexpr\n"\
4639"#define constevalmethod\t\tconstexpr\n"\
4640"\n"\
4641"#else\n"\
4642"#define constexprmethod\t\tinline\n"\
4643"#define constexprfun\t\tinline\n"\
4644"#define constevalmethod\t\tinline\n"\
4645"#define virtual\n"\
4646"\n"\
4647"#if !defined(__cplusplus) /* C */\n"\
4648"\n"\
4649"#if !defined(__cplusplus) && __ae2f_lvcheck_c(2023)\n"\
4650"/** cosntexpr variable */\n"\
4651"#else\n"\
4652"#define constexpr\n"\
4653"#endif /* C23 */\n"\
4654"\n"\
4655"\n"\
4656"#endif /* C */\n"\
4657"\n"\
4658"#endif // C++11\n"\
4659"\n"\
4660"#if __ae2f_stdcheck_CC(202002L)\n"\
4661"#undef constevalmethod\n"\
4662"#define constevalmethod consteval /* C++20 */\n"\
4663"#elif __ae2f_stdcheck_CC(0)\n"\
4664"\n"\
4665"#undef constevalmethod\n"\
4666"/// @brief\n"\
4667"/// C++ keyword for constant-time functions.\n"\
4668"#define consteval\n"\
4669"#define constevalmethod constexprmethod\n"\
4670"\n"\
4671"#else\n"\
4672"\n"\
4673"#define consteval\n"\
4674"#endif // C++20\n"\
4675"\n"\
4676"#endif\n"\
4677"/** One eof gracefully */ \\\n"\
4678"\n"\
4679"\n"\
4680"/// @brief\n"\
4681"/// C++ union definition for @ref ae2f_union_cast\n"\
4682"/// @tparam t\n"\
4683"/// @tparam k\n"\
4684"/// @see\n"\
4685"/// @ref ae2f_union_cast\n"\
4686"template <typename t, typename k> union ae2f_UnionCaster {\n"\
4687" t a;\n"\
4688" k b;\n"\
4689" constexprmethod ae2f_UnionCaster(t _) : a(_) {}\n"\
4690" constexprmethod k _b() const { return b; }\n"\
4691"};\n"\
4692"\n"\
4693"#endif\n"\
4694"/** One eof gracefully */ \\\n"\
4695"\n"\
4696"/** include detected */ \\\n"\
4697"/** Path cursor */ \\\n"\
4698"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/Constexpr.hpp */ \\\n"\
4699"/** first fp: 0x55e37e25ded0 */ \\\n"\
4700"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/Constexpr.hpp */ \\\n"\
4701"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/ */ \\\n"\
4702"/** Found something. Now let\'s validate. */ \\\n"\
4703"/** It\'s not repeating */ \\\n"\
4704"/******************** */\\\n"\
4705"/* Now the path will be: */ \\\n"\
4706" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/Constexpr.hpp */ \\\n"\
4707"/**\n"\
4708"\n"\
4709" * @file consteval.hpp\n"\
4710" * @author ae2f\n"\
4711" * @brief\n"\
4712" * @date 2025-02-01\n"\
4713" *\n"\
4714"\n"\
4715" * @copyright Copyright (c) 2025\n"\
4716" *\n"\
4717"\n"\
4718" */\n"\
4719"#ifndef ae2f_Cast_consteval_hpp\n"\
4720"#define ae2f_Cast_consteval_hpp\n"\
4721"/** include detected */ \\\n"\
4722"/** Path cursor */ \\\n"\
4723"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../LangVer.h */ \\\n"\
4724"/** first fp: 0x55e37e25f0c0 */ \\\n"\
4725"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../LangVer.h */ \\\n"\
4726"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../ */ \\\n"\
4727"/** Found something. Now let\'s validate. */ \\\n"\
4728"/** It\'s not repeating */ \\\n"\
4729"/******************** */\\\n"\
4730"/* Now the path will be: */ \\\n"\
4731" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/../LangVer.h */ \\\n"\
4732"/** include detected */ \\\n"\
4733"/** Path cursor */ \\\n"\
4734"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././LangVer.auto.h */ \\\n"\
4735"/** first fp: 0x55e37e2602b0 */ \\\n"\
4736"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././LangVer.auto.h */ \\\n"\
4737"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././ */ \\\n"\
4738"/** Found something. Now let\'s validate. */ \\\n"\
4739"/** It\'s not repeating */ \\\n"\
4740"/******************** */\\\n"\
4741"/* Now the path will be: */ \\\n"\
4742" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Cast/.././LangVer.auto.h */ \\\n"\
4743"#if 90 >= 50\n"\
4744"#define ae2f_LangVer_C 1990\n"\
4745"#else\n"\
4746"#define ae2f_LangVer_C 2090\n"\
4747"#endif\n"\
4748"\n"\
4749"#if 11 >= 50\n"\
4750"#define ae2f_LangVer_CC 1911\n"\
4751"#else\n"\
4752"#define ae2f_LangVer_CC 2011\n"\
4753"#endif\n"\
4754"\n"\
4755"#define __ae2f_lvcheck_c(v) (ae2f_LangVer_C >= (v))\n"\
4756"#define __ae2f_lvcheck_cc(v) (ae2f_LangVer_CC >= (v))\n"\
4757"/** One eof gracefully */ \\\n"\
4758"\n"\
4759"\n"\
4760"#ifdef\t__cplusplus\n"\
4761"#undef\tae2f_stdcc_v\n"\
4762"#define\tae2f_stdcc_v\t(__cplusplus)\n"\
4763"#else\n"\
4764"\n"\
4765"#undef\tae2f_stdcc_v\n"\
4766"#define\tae2f_stdcc_v\t(199711L)\n"\
4767"\n"\
4768"#if __ae2f_lvcheck_cc(2011)\n"\
4769"#undef\tae2f_stdcc_v\n"\
4770"#define\tae2f_stdcc_v\t(201103L)\n"\
4771"#endif\n"\
4772"\n"\
4773"#if __ae2f_lvcheck_cc(2014)\n"\
4774"#undef\tae2f_stdcc_v\n"\
4775"#define\tae2f_stdcc_v\t(201402L)\n"\
4776"#endif\n"\
4777"\n"\
4778"#if __ae2f_lvcheck_cc(2017)\n"\
4779"#undef\tae2f_stdcc_v\n"\
4780"#define\tae2f_stdcc_v\t(201703L)\n"\
4781"#endif\n"\
4782"\n"\
4783"#if __ae2f_lvcheck_cc(2020)\n"\
4784"#undef\tae2f_stdcc_v\n"\
4785"#define\tae2f_stdcc_v\t(202002L)\n"\
4786"#endif\n"\
4787"\n"\
4788"#if __ae2f_lvcheck_cc(2023)\n"\
4789"#undef\tae2f_stdcc_v\n"\
4790"#define\tae2f_stdcc_v\t(202302L)\n"\
4791"#endif\n"\
4792"\n"\
4793"#endif\n"\
4794"\n"\
4795"#ifdef\t__STDC_VERSION__\n"\
4796"#undef\tae2f_stdc_v\n"\
4797"#define ae2f_stdc_v\t(__STDC_VERSION__)\n"\
4798"#else\n"\
4799"\n"\
4800"#undef\tae2f_stdc_v\n"\
4801"#define ae2f_stdc_v\t(199001L)\n"\
4802"\n"\
4803"#if __ae2f_lvcheck_c(1999)\n"\
4804"#undef\tae2f_stdc_v\n"\
4805"#define ae2f_stdc_v\t(199901L)\n"\
4806"#endif\n"\
4807"\n"\
4808"#if __ae2f_lvcheck_c(2011)\n"\
4809"#undef\tae2f_stdc_v\n"\
4810"#define ae2f_stdc_v\t(201112L)\n"\
4811"#endif\n"\
4812"\n"\
4813"#if __ae2f_lvcheck_c(2017)\n"\
4814"#undef\tae2f_stdc_v\n"\
4815"#define ae2f_stdc_v\t(201710L)\n"\
4816"#endif\n"\
4817"\n"\
4818"#if __ae2f_lvcheck_c(2023)\n"\
4819"#undef\tae2f_stdc_v\n"\
4820"#define ae2f_stdc_v\t(202311L)\n"\
4821"#endif\n"\
4822"\n"\
4823"#endif\n"\
4824"\n"\
4825"#undef\t__ae2f_stdcheck_C\n"\
4826"#undef\t__ae2f_stdcheck_CC\n"\
4827"\n"\
4828"#define __ae2f_stdcheck_C(v)\t(ae2f_stdc_v >= (v))\n"\
4829"#define __ae2f_stdcheck_CC(v)\t(ae2f_stdcc_v >= (v))\n"\
4830"/** One eof gracefully */ \\\n"\
4831"\n"\
4832"\n"\
4833"#if __ae2f_stdcheck_CC(201703L)\n"\
4834"#define if_constexpr if constexpr\n"\
4835"#else\n"\
4836"#define if_constexpr if\n"\
4837"#endif\n"\
4838"\n"\
4839"#if __ae2f_stdcheck_CC(202002L)\n"\
4840"#define if_consteval if consteval\n"\
4841"#else\n"\
4842"#define if_consteval if (0)\n"\
4843"#endif\n"\
4844"\n"\
4845"#if __ae2f_stdcheck_CC(202002L)\n"\
4846"#define constexprvirtual constexpr virtual\n"\
4847"/** constinit */\n"\
4848"#else\n"\
4849"#define constexprvirtual virtual\n"\
4850"#define constinit\t/* not available */\n"\
4851"#endif /* C++20 */\n"\
4852"\n"\
4853"#if __ae2f_stdcheck_CC(201402L)\n"\
4854"#define constextendedfun\tconstexpr\n"\
4855"#define constextendedeval \tconstexpr\n"\
4856"\n"\
4857"#define constextendedmethod\tconstexpr\n"\
4858"#define constextendedmethodeval\tconstexpr\n"\
4859"\n"\
4860"#else\n"\
4861"#define constextendedfun\tinline\n"\
4862"#define constextendedmethod\tinline\n"\
4863"\n"\
4864"#define constextendedeval\tinline\n"\
4865"#define constextendedmethodeval\tinline\n"\
4866"#endif // C++14\n"\
4867"\n"\
4868"#if __ae2f_stdcheck_CC(201103L)\n"\
4869"#define constexprmethod\t\tconstexpr\n"\
4870"#define constexprfun\t\tconstexpr\n"\
4871"#define constevalmethod\t\tconstexpr\n"\
4872"\n"\
4873"#else\n"\
4874"#define constexprmethod\t\tinline\n"\
4875"#define constexprfun\t\tinline\n"\
4876"#define constevalmethod\t\tinline\n"\
4877"#define virtual\n"\
4878"\n"\
4879"#if !defined(__cplusplus) /* C */\n"\
4880"\n"\
4881"#if !defined(__cplusplus) && __ae2f_lvcheck_c(2023)\n"\
4882"/** cosntexpr variable */\n"\
4883"#else\n"\
4884"#define constexpr\n"\
4885"#endif /* C23 */\n"\
4886"\n"\
4887"\n"\
4888"#endif /* C */\n"\
4889"\n"\
4890"#endif // C++11\n"\
4891"\n"\
4892"#if __ae2f_stdcheck_CC(202002L)\n"\
4893"#undef constevalmethod\n"\
4894"#define constevalmethod consteval /* C++20 */\n"\
4895"#elif __ae2f_stdcheck_CC(0)\n"\
4896"\n"\
4897"#undef constevalmethod\n"\
4898"/// @brief\n"\
4899"/// C++ keyword for constant-time functions.\n"\
4900"#define consteval\n"\
4901"#define constevalmethod constexprmethod\n"\
4902"\n"\
4903"#else\n"\
4904"\n"\
4905"#define consteval\n"\
4906"#endif // C++20\n"\
4907"\n"\
4908"#endif\n"\
4909"/** One eof gracefully */ \\\n"\
4910"\n"\
4911"/** include detected */ \\\n"\
4912"/** Path cursor */ \\\n"\
4913"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./LangVer.auto.h */ \\\n"\
4914"/** first fp: 0x55e37e25ded0 */ \\\n"\
4915"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./LangVer.auto.h */ \\\n"\
4916"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
4917"/** Found something. Now let\'s validate. */ \\\n"\
4918"/** It\'s not repeating */ \\\n"\
4919"/******************** */\\\n"\
4920"/* Now the path will be: */ \\\n"\
4921" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./LangVer.auto.h */ \\\n"\
4922"#if 90 >= 50\n"\
4923"#define ae2f_LangVer_C 1990\n"\
4924"#else\n"\
4925"#define ae2f_LangVer_C 2090\n"\
4926"#endif\n"\
4927"\n"\
4928"#if 11 >= 50\n"\
4929"#define ae2f_LangVer_CC 1911\n"\
4930"#else\n"\
4931"#define ae2f_LangVer_CC 2011\n"\
4932"#endif\n"\
4933"\n"\
4934"#define __ae2f_lvcheck_c(v) (ae2f_LangVer_C >= (v))\n"\
4935"#define __ae2f_lvcheck_cc(v) (ae2f_LangVer_CC >= (v))\n"\
4936"/** One eof gracefully */ \\\n"\
4937"\n"\
4938"/** include detected */ \\\n"\
4939"/** Path cursor */ \\\n"\
4940"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cxx.h */ \\\n"\
4941"/** first fp: 0x55e37e25ded0 */ \\\n"\
4942"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cxx.h */ \\\n"\
4943"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
4944"/** Found something. Now let\'s validate. */ \\\n"\
4945"/** It\'s not repeating */ \\\n"\
4946"/******************** */\\\n"\
4947"/* Now the path will be: */ \\\n"\
4948" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Cxx.h */ \\\n"\
4949"/**\n"\
4950"\n"\
4951" * @file Cxx.h\n"\
4952" * @author ae2f\n"\
4953" * @brief \n"\
4954" * @date 2025-02-01\n"\
4955" * \n"\
4956" * @copyright Copyright (c) 2025\n"\
4957" * \n"\
4958" */\n"\
4959"\n"\
4960"/// @brief\n"\
4961"/// Literally nothing.\n"\
4962"#define ae2f_NONE\n"\
4963"\n"\
4964"#if __cplusplus\n"\
4965"\n"\
4966"/// @def ae2f_WhenCXX \n"\
4967"/// @brief\n"\
4968"/// Appears when the current language is C++.\n"\
4969"#define ae2f_WhenCXX(...) __VA_ARGS__\n"\
4970"\n"\
4971"/// @brief\n"\
4972"/// Appears when the current language is C.\n"\
4973"#define ae2f_WhenC(...) ae2f_NONE\n"\
4974"\n"\
4975"#else\n"\
4976"\n"\
4977"/// @brief\n"\
4978"/// Appears when the current language is C++.\n"\
4979"#define ae2f_WhenC(...) __VA_ARGS__\n"\
4980"\n"\
4981"/// @brief\n"\
4982"/// Appears when the current language is C.\n"\
4983"#define ae2f_WhenCXX(...) ae2f_NONE\n"\
4984"\n"\
4985"#endif\n"\
4986"\n"\
4987"/// @brief\n"\
4988"/// \n"\
4989"#define ae2f_is_cxx ae2f_WhenC(0) ae2f_WhenCXX(1)\n"\
4990"\n"\
4991"/// @brief\n"\
4992"/// Putting it after one condition in #if will find if the script\'s language considered as [C], while doxygen does not notice.\n"\
4993"/// \n"\
4994"/// For alter, see @ref ae2f_cxx_check\n"\
4995"#define ae2f_c_check && !ae2f_is_cxx\n"\
4996"\n"\
4997"/// @brief\n"\
4998"/// Putting it after one condition in #if will find if the script\'s language considered as [C++], while doxygen does not notice.\n"\
4999"/// \n"\
5000"/// For alter, see @ref ae2f_c_check\n"\
5001"#define ae2f_cxx_check && ae2f_is_cxx/** One eof gracefully */ \\\n"\
5002"\n"\
5003"/** include detected */ \\\n"\
5004"/** Path cursor */ \\\n"\
5005"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/stdbool.h */ \\\n"\
5006"/** first fp: (nil) */ \\\n"\
5007"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stdbool.h */ \\\n"\
5008"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stdbool.h */ \\\n"\
5009"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdbool.h */ \\\n"\
5010"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdbool.h */ \\\n"\
5011"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stdbool.h */ \\\n"\
5012"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstdbool.h */ \\\n"\
5013"/** Failed but ignoring it. */ \\\n"\
5014"\n"\
5015"/** include detected */ \\\n"\
5016"/** Path cursor */ \\\n"\
5017"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/stddef.h */ \\\n"\
5018"/** first fp: (nil) */ \\\n"\
5019"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stddef.h */ \\\n"\
5020"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stddef.h */ \\\n"\
5021"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
5022"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstddef.h */ \\\n"\
5023"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stddef.h */ \\\n"\
5024"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstddef.h */ \\\n"\
5025"/** Failed but ignoring it. */ \\\n"\
5026"\n"\
5027"/** include detected */ \\\n"\
5028"/** Path cursor */ \\\n"\
5029"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Guide.h */ \\\n"\
5030"/** first fp: 0x55e37e25ded0 */ \\\n"\
5031"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Guide.h */ \\\n"\
5032"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
5033"/** Found something. Now let\'s validate. */ \\\n"\
5034"/** It\'s not repeating */ \\\n"\
5035"/******************** */\\\n"\
5036"/* Now the path will be: */ \\\n"\
5037" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Guide.h */ \\\n"\
5038"/**\n"\
5039"\n"\
5040" * @file ae2f/Guide.h\n"\
5041" * @brief\n"\
5042" * Guide markers for conventions.\n"\
5043" * */\n"\
5044"#undef ae2f_LP\n"\
5045"#undef ae2f_NONE\n"\
5046"#undef ae2f_opt\n"\
5047"\n"\
5048"/** @def ae2f_NONE @brief nothing. */\n"\
5049"#define ae2f_NONE\n"\
5050"\n"\
5051"/** \n"\
5052" * @def ae2f_LP\n"\
5053" *\n"\
5054"\n"\
5055" * @brief \n"\
5056" * Desired count required. \n"\
5057" * \n"\
5058" * @param ...\n"\
5059" * Parameter with this preprocessor means \\n\n"\
5060" * the pointer is considered as list, and inside of this is a desired size.\n"\
5061" * */\n"\
5062"#define\tae2f_LP(...) ae2f_NONE\n"\
5063"\n"\
5064"/** @def ae2f_opt @brief Optional. */\n"\
5065"#define ae2f_opt ae2f_NONE\n"\
5066"\n"\
5067"/** \n"\
5068" * @def ae2f_FREE \n"\
5069" * @brief Use this marker to show the desired functions\n"\
5070" * \tto effectively free the resources.\n"\
5071" * */\n"\
5072"#define ae2f_FREE(...) ae2f_NONE\n"\
5073"\n"\
5074"/** @brief l_value. */\n"\
5075"#define ae2f_v ae2f_NONE\n"\
5076"/** One eof gracefully */ \\\n"\
5077"\n"\
5078"\n"\
5079"/// @brief\n"\
5080"/// Initialiser for trivial structures / classes.\n"\
5081"#define ae2f_RecordMk(type, ...) \\\n"\
5082" (ae2f_WhenC((type){__VA_ARGS__}) ae2f_WhenCXX(type{__VA_ARGS__}))\n"\
5083"\n"\
5084"/// @brief\n"\
5085"/// # static_cast\n"\
5086"#define ae2f_static_cast(t, v) \\\n"\
5087" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(static_cast<t>(v))\n"\
5088"\n"\
5089"/// @brief\n"\
5090"/// # dynamic_cast\n"\
5091"#define ae2f_dynamic_cast(t, v) \\\n"\
5092" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(dynamic_cast<t>(v))\n"\
5093"\n"\
5094"/// @brief\n"\
5095"/// # reinterpret_cast\n"\
5096"#define ae2f_reinterpret_cast(t, v) \\\n"\
5097" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(reinterpret_cast<t>(v))\n"\
5098"\n"\
5099"/// @brief\n"\
5100"/// # const_cast\n"\
5101"#define ae2f_const_cast(t, v) \\\n"\
5102" ae2f_WhenC(((t)(v))) ae2f_WhenCXX(const_cast<t>(v))\n"\
5103"\n"\
5104"/// @brief\n"\
5105"/// Makes a union that reads a memory in two methods. \\n\n"\
5106"/// `tThen` -> `tNow`\n"\
5107"/// @tparam tThen\n"\
5108"/// The existing data\'s type as input.\n"\
5109"///\n"\
5110"/// @tparam tNow\n"\
5111"/// Wanted output datatype for casting.\n"\
5112"///\n"\
5113"/// @param v\n"\
5114"/// Input value\n"\
5115"#define ae2f_union_cast(tThen, tNow, v) \\\n"\
5116" ae2f_WhenC((union { \\\n"\
5117" tThen a; \\\n"\
5118" tNow b; \\\n"\
5119" }){v}) ae2f_WhenCXX(ae2f_UnionCaster<tThen, tNow>(v)) \\\n"\
5120" ._b()\n"\
5121"\n"\
5122"/// @brief\n"\
5123"/// In C, keyword \'struct\' must be written in front of the structure\'s name in\n"\
5124"/// order to use as a type name. \\n In C++ that keyword is not required.\n"\
5125"///\n"\
5126"/// This keyword resolves the difference of the rules of two.\n"\
5127"#define ae2f_struct ae2f_WhenC(struct)\n"\
5128"\n"\
5129"/// @brief\n"\
5130"/// Suggests the existence of external variable or function, in naming of C.\n"\
5131"/// [non-mangling]\n"\
5132"#define ae2f_extern ae2f_WhenC(extern) ae2f_WhenCXX(extern \"C\")\n"\
5133"\n"\
5134"/// @brief\n"\
5135"/// Class\n"\
5136"#define ae2f_class ae2f_WhenC(struct) ae2f_WhenCXX(class)\n"\
5137"\n"\
5138"/// @brief\n"\
5139"/// Makes the global variable in naming of C. [non-mangling]\n"\
5140"#define ae2f_var ae2f_WhenCXX(extern \"C\")\n"\
5141"\n"\
5142"/// @brief\n"\
5143"/// Function definitions\n"\
5144"#define ae2f_fdef(rtn_t, name, ...) rtn_t (*name)(__VA_ARGS__)\n"\
5145"\n"\
5146"/** @brief Invokes when condition is `false`. */\n"\
5147"#define unless(...) if (!(__VA_ARGS__))\n"\
5148"\n"\
5149"#define ae2f_structdef_v(key, name, ...) \\\n"\
5150" typedef key name __VA_ARGS__; \\\n"\
5151" key name\n"\
5152"\n"\
5153"#define ae2f_structdef_n(key, name, ...)\tae2f_structdef_v(key, name, name, __VA_ARGS__)\n"\
5154"#define ae2f_structdef(key, name)\t\tae2f_structdef_v(key, name, name)\n"\
5155"#define ae2f_enumdef(name, ...)\t\t\ttypedef enum name __VA_ARGS__ name\n"\
5156"\n"\
5157"#define ae2f_tmpldef(...) template<__VA_ARGS__>\n"\
5158"#define ae2f_tmpluse(...) <__VA_ARGS__>\n"\
5159"\n"\
5160"/**\n"\
5161"\n"\
5162" * @brief\n"\
5163" * Make two pair of function as [eval] and [expr]. \\n\n"\
5164" * [expr] will just call [eval]. \\n\n"\
5165" * You will implement the body of [eval].\n"\
5166" *\n"\
5167"\n"\
5168" * Following is an use case.\n"\
5169" * @code\n"\
5170" * ae2f_evaldef(\n"\
5171"\t\ttemplate<int a>, <0>\n"\
5172"\t\t, consteval, constexprfun\n"\
5173"\t\t, int, Hello, _Hello, char v, v) \n"\
5174"\t\t{ return v; }\n"\
5175" * */\n"\
5176"#define ae2f_evaldef(tmpldef, tmpluse, keyeval, keyexpr, ret_t, nameeval, nameexpr, prmdef, prmuse) \\\n"\
5177"\ttmpldef keyeval ret_t nameeval(prmdef); \\\n"\
5178"\ttmpldef keyexpr ret_t nameexpr(prmdef) { \\\n"\
5179"\t\treturn nameeval tmpluse (prmuse); \\\n"\
5180"\t} \\\n"\
5181"\ttmpldef keyeval ret_t nameeval(prmdef)\n"\
5182"\n"\
5183"#if !__ae2f_stdcheck_CC(201103L)\n"\
5184"#undef\tnoexcept\n"\
5185"#define noexcept\n"\
5186"#endif\n"\
5187"\n"\
5188"\n"\
5189"#undef\trestrict /** First declaration */\n"\
5190"#if ae2f_stdc_v < 199901L\n"\
5191"#undef\trestrict\n"\
5192"#define restrict\n"\
5193"#endif // C>=99\n"\
5194"\n"\
5195"#if __cplusplus\n"\
5196"#undef\trestrict\n"\
5197"#define restrict\n"\
5198"#endif // C++\n"\
5199"\n"\
5200"#if !__ae2f_stdcheck_CC(201103L)\n"\
5201"/// @brief\n"\
5202"/// Means that there will be no exception thrown written in code.\n"\
5203"#define noexcept\n"\
5204"#define constexpr\n"\
5205"#endif /* C++<=11 */\n"\
5206"\n"\
5207"#if ae2f_WhenC(!)0\n"\
5208"#undef noexcept\n"\
5209"#define noexcept\n"\
5210"#endif\n"\
5211"\n"\
5212"#endif\n"\
5213"/** One eof gracefully */ \\\n"\
5214"\n"\
5215"/** include detected */ \\\n"\
5216"/** Path cursor */ \\\n"\
5217"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Pack/Beg.h */ \\\n"\
5218"/** first fp: (nil) */ \\\n"\
5219"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Pack/Beg.h */ \\\n"\
5220"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Pack/Beg.h */ \\\n"\
5221"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/Beg.h */ \\\n"\
5222"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/Beg.h */ \\\n"\
5223"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
5224"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
5225"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/ */ \\\n"\
5226"/** Found something. Now let\'s validate. */ \\\n"\
5227"/** It\'s not repeating */ \\\n"\
5228"/******************** */\\\n"\
5229"/* Now the path will be: */ \\\n"\
5230" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
5231"/**\n"\
5232"\n"\
5233" * @file Beg.h\n"\
5234" * @author ae2f\n"\
5235" * @brief\n"\
5236" * @date 2025-02-01\n"\
5237" * \n"\
5238" * @copyright Copyright (c) 2025\n"\
5239" * \n"\
5240" */\n"\
5241"\n"\
5242"/** include detected */ \\\n"\
5243"/** Path cursor */ \\\n"\
5244"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
5245"/** first fp: 0x55e37e25ded0 */ \\\n"\
5246"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
5247"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./ */ \\\n"\
5248"/** Found something. Now let\'s validate. */ \\\n"\
5249"/** It\'s not repeating */ \\\n"\
5250"/******************** */\\\n"\
5251"/* Now the path will be: */ \\\n"\
5252" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
5253"/**\n"\
5254"\n"\
5255" * @file Num.h\n"\
5256" * @author ae2f\n"\
5257" * @brief \n"\
5258" * @date 2025-02-01\n"\
5259" * \n"\
5260" * @copyright Copyright (c) 2025\n"\
5261" * \n"\
5262" */\n"\
5263"\n"\
5264"/// @brief\n"\
5265"/// Pre-defined structure packed byte count.\n"\
5266"/// \n"\
5267"/// See @ref ___DOC_CMAKE::ae2f_packcount\n"\
5268"#define ae2f_PackCount 0\n"\
5269"/** One eof gracefully */ \\\n"\
5270"\n"\
5271"\n"\
5272"#if ae2f_PackCount\n"\
5273"#pragma pack(push, 0)\n"\
5274"#endif\n"\
5275"/** One eof gracefully */ \\\n"\
5276"\n"\
5277"/** include detected */ \\\n"\
5278"/** Path cursor */ \\\n"\
5279"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/MMap/Util.h */ \\\n"\
5280"/** first fp: (nil) */ \\\n"\
5281"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/MMap/Util.h */ \\\n"\
5282"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/MMap/Util.h */ \\\n"\
5283"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/MMap/ */ \\\n"\
5284"/** Found something. Now let\'s validate. */ \\\n"\
5285"/** It\'s not repeating */ \\\n"\
5286"/******************** */\\\n"\
5287"/* Now the path will be: */ \\\n"\
5288" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/MMap/Util.h */ \\\n"\
5289"/** include detected */ \\\n"\
5290"/** Path cursor */ \\\n"\
5291"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/MMap/ae2f/Call.h */ \\\n"\
5292"/** first fp: (nil) */ \\\n"\
5293"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Call.h */ \\\n"\
5294"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Call.h */ \\\n"\
5295"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Call.h */ \\\n"\
5296"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Call.h */ \\\n"\
5297"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Call.h */ \\\n"\
5298"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Call.h */ \\\n"\
5299"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/ */ \\\n"\
5300"/** Found something. Now let\'s validate. */ \\\n"\
5301"/** It\'s not repeating */ \\\n"\
5302"/******************** */\\\n"\
5303"/* Now the path will be: */ \\\n"\
5304" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Call.h */ \\\n"\
5305"/**\n"\
5306"\n"\
5307" * @file Call.h\n"\
5308" * @author ae2f\n"\
5309" * @brief \n"\
5310" * @date 2025-02-01\n"\
5311" * \n"\
5312" * @copyright Copyright (c) 2025\n"\
5313" * \n"\
5314" */\n"\
5315"\n"\
5316"#ifndef ae2f_Call_h\n"\
5317"#define ae2f_Call_h\n"\
5318"\n"\
5319"/** include detected */ \\\n"\
5320"/** Path cursor */ \\\n"\
5321"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Platform.h */ \\\n"\
5322"/** first fp: 0x55e37e25f0c0 */ \\\n"\
5323"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Platform.h */ \\\n"\
5324"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
5325"/** Found something. Now let\'s validate. */ \\\n"\
5326"/** It\'s not repeating */ \\\n"\
5327"/******************** */\\\n"\
5328"/* Now the path will be: */ \\\n"\
5329" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Platform.h */ \\\n"\
5330"#define ON 1\n"\
5331"#define OFF 0\n"\
5332"\n"\
5333"#if (defined(_WIN32) || defined(_WIN64))\n"\
5334"#define ae2f_IS_WIN 1\n"\
5335"#else \n"\
5336"#define ae2f_IS_WIN 0\n"\
5337"#endif\n"\
5338"\n"\
5339"#if (defined(__linux__))\n"\
5340"#define ae2f_IS_LINUX 1\n"\
5341"#else \n"\
5342"#define ae2f_IS_LINUX 0\n"\
5343"#endif\n"\
5344"\n"\
5345"#if defined(__MACH__) || defined(__APPLE__)\n"\
5346"#define ae2f_IS_APPLE 1\n"\
5347"#else\n"\
5348"#define ae2f_IS_APPLE 0\n"\
5349"#endif\n"\
5350"\n"\
5351"#if (ae2f_IS_WIN == ae2f_IS_LINUX) && (ae2f_IS_LINUX == ae2f_IS_APPLE) && (ae2f_IS_APPLE == ae2f_IS_WIN)\n"\
5352"/** PLATFORM NOT SPECIFIED. */\n"\
5353"\n"\
5354"/**** @brief UNSPECIFIED */\n"\
5355"#define ae2f_IDK 1\n"\
5356"#else\n"\
5357"/**** @brief UNSPECIFIED */\n"\
5358"#define ae2f_IDK 0\n"\
5359"#endif\n"\
5360"/** One eof gracefully */ \\\n"\
5361"\n"\
5362"/** include detected */ \\\n"\
5363"/** Path cursor */ \\\n"\
5364"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Call.auto.h */ \\\n"\
5365"/** first fp: 0x55e37e25f0c0 */ \\\n"\
5366"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Call.auto.h */ \\\n"\
5367"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./ */ \\\n"\
5368"/** Found something. Now let\'s validate. */ \\\n"\
5369"/** It\'s not repeating */ \\\n"\
5370"/******************** */\\\n"\
5371"/* Now the path will be: */ \\\n"\
5372" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/./Call.auto.h */ \\\n"\
5373"/**\n"\
5374"\n"\
5375" * @file Call.h\n"\
5376" * @author ae2f\n"\
5377" * @brief \n"\
5378" * @date 2025-02-01\n"\
5379" * \n"\
5380" * @copyright Copyright (c) 2025\n"\
5381" * \n"\
5382" */\n"\
5383"\n"\
5384"/** @brief Is a library shared */\n"\
5385"#define ae2f_IS_SHARED ON\n"\
5386"/** One eof gracefully */ \\\n"\
5387"\n"\
5388"\n"\
5389"#if ae2f_IS_SHARED\n"\
5390"\n"\
5391"#if ae2f_IS_WIN\n"\
5392"/// @brief\n"\
5393"/// # For Windows\n"\
5394"/// \n"\
5395"/// shared function imp\n"\
5396"#define ae2f_SHAREDEXPORT __declspec(dllexport)\n"\
5397"\n"\
5398"/// @brief\n"\
5399"/// # For Windows\n"\
5400"/// \n"\
5401"/// Function api call\n"\
5402"#define ae2f_SHAREDCALL \n"\
5403"#endif\n"\
5404"\n"\
5405"#if ae2f_IS_LINUX || ae2f_IS_APPLE\n"\
5406"/// @brief\n"\
5407"/// # For Linux, gcc based.\n"\
5408"/// \n"\
5409"/// shared function imp\n"\
5410"#define ae2f_SHAREDEXPORT __attribute__((visibility(\"default\")))\n"\
5411"\n"\
5412"/// @brief\n"\
5413"/// # For Linux, gcc based.\n"\
5414"///\n"\
5415"/// Function api call\n"\
5416"#define ae2f_SHAREDCALL\n"\
5417"#endif\n"\
5418"\n"\
5419"\n"\
5420"\n"\
5421"#else\n"\
5422"\n"\
5423"/// @brief\n"\
5424"/// # It is no shared library.\n"\
5425"/// \n"\
5426"/// shared function imp\n"\
5427"#define ae2f_SHAREDEXPORT\n"\
5428"/// @brief \n"\
5429"/// # It is no shared library.\n"\
5430"///\n"\
5431"/// Function api call\n"\
5432"#define ae2f_SHAREDCALL\n"\
5433"#endif\n"\
5434"\n"\
5435"#endif\n"\
5436"/** One eof gracefully */ \\\n"\
5437"\n"\
5438"\n"\
5439"#ifndef ae2f_MAC_BUILD\n"\
5440"#define\tae2f_MAC_BUILD ON\n"\
5441"#endif\n"\
5442"\n"\
5443"/** One eof gracefully */ \\\n"\
5444"\n"\
5445"\n"\
5446"#define ae2f_AnnUtilPtr2Name(A_t, B_t) \\\n"\
5447"\tae2f_AnnUtilPtr__##A_t##B_t\n"\
5448"\n"\
5449"#define ae2f_AnnUtilV2Name(A_t, B_t) \\\n"\
5450"\tae2f_AnnUtilV2Name__##A_t##B_t\n"\
5451"\n"\
5452"#define ae2f_AnnUtilV2(A_LEFT, A_t, A_POST, B_LEFT, B_t, B_POST) \\\n"\
5453"\tae2f_structdef(union, ae2f_AnnUtilV2Name(A_t, B_t)) \\\n"\
5454"{ A_LEFT A_t A_POST a; B_LEFT B_t B_POST b; }\n"\
5455"\n"\
5456"#define ae2f_AnnUtilPtr2(A_t, B_t, ...) \\\n"\
5457"\tae2f_structdef(union, ae2f_AnnUtilPtr2Name(A_t, B_t)) \\\n"\
5458"{ A_t* a; B_t* b; }\n"\
5459"\n"\
5460"/** include detected */ \\\n"\
5461"/** Path cursor */ \\\n"\
5462"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Pack/End.h */ \\\n"\
5463"/** first fp: (nil) */ \\\n"\
5464"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Pack/End.h */ \\\n"\
5465"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Pack/End.h */ \\\n"\
5466"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/End.h */ \\\n"\
5467"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/End.h */ \\\n"\
5468"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
5469"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
5470"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/ */ \\\n"\
5471"/** Found something. Now let\'s validate. */ \\\n"\
5472"/** It\'s not repeating */ \\\n"\
5473"/******************** */\\\n"\
5474"/* Now the path will be: */ \\\n"\
5475" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
5476"/**\n"\
5477"\n"\
5478" * @file End.h\n"\
5479" * @author ae2f\n"\
5480" * @brief \n"\
5481" * @date 2025-02-01\n"\
5482" * \n"\
5483" * @copyright Copyright (c) 2025\n"\
5484" * \n"\
5485" */\n"\
5486"\n"\
5487"#if ae2f_PackCount\n"\
5488"#pragma pack(pop)\n"\
5489"#endif\n"\
5490"/** One eof gracefully */ \\\n"\
5491"\n"\
5492"\n"\
5493"#endif\n"\
5494"/** One eof gracefully */ \\\n"\
5495"\n"\
5496"\n"\
5497"/**\n"\
5498"\n"\
5499" * @brief\n"\
5500" * # Single Layered Perceptron\n"\
5501" *\n"\
5502"\n"\
5503" * Multiple input, multiple output. \\n\n"\
5504" * For predicting & training operations are able to be parallel.\n"\
5505" */\n"\
5506"ae2f_structdef(struct, ae2f_AnnSlp_t) {\n"\
5507"\t/**\n"\
5508"\n"\
5509"\t * @brief \n"\
5510"\t * input count\n"\
5511"\t */\n"\
5512"\tsize_t m_inc;\n"\
5513"\n"\
5514"\t/**\n"\
5515"\n"\
5516"\t * @brief \n"\
5517"\t * output count\n"\
5518"\t */\n"\
5519"\tsize_t m_outc;\n"\
5520"};\n"\
5521"\n"\
5522"/**\n"\
5523"\n"\
5524" * @brief\n"\
5525" * Structure for SLP prediction and training data.\n"\
5526" */\n"\
5527"ae2f_structdef(struct, ae2f_AnnSlpPredict_t) {\n"\
5528"\t/**\n"\
5529"\n"\
5530"\t * @brief\n"\
5531"\t * Loop counters and layer sizes.\n"\
5532"\t */\n"\
5533"\tsize_t\t\t\tm_i, m_j;\n"\
5534"\n"\
5535"\tae2f_float_t\t\tm_ret;\n"\
5536"\tae2f_float_t\t\tm_tmp;\n"\
5537"};\n"\
5538"\n"\
5539"ae2f_structdef(struct, ae2f_AnnSlpTrain_t) {\n"\
5540"\t/**\n"\
5541"\n"\
5542"\t * @brief\n"\
5543"\t * Loop counters and layer sizes.\n"\
5544"\t */\n"\
5545"\tsize_t\t\t\tm_i, m_j;\n"\
5546"\n"\
5547"\tae2f_float_t\t\tm_ret;\n"\
5548"\tae2f_float_t\t\tm_tmp, m_tmp1;\n"\
5549"};\n"\
5550"\n"\
5551"ae2f_structdef(struct, ae2f_AnnSlpPredictOne_t) {\n"\
5552"\tsize_t\t\tm_j;\n"\
5553"\tae2f_float_t\tm_ret;\n"\
5554"\tae2f_float_t\tm_tmp;\n"\
5555"};\n"\
5556"\n"\
5557"ae2f_structdef(struct, ae2f_AnnSlpTrainOne_t) {\n"\
5558"\tsize_t\t\tm_j;\n"\
5559"\tae2f_float_t\tm_ret;\n"\
5560"\tae2f_float_t\tm_tmp, m_tmp1;\n"\
5561"};\n"\
5562"\n"\
5563"/**\n"\
5564"\n"\
5565" * @brief\n"\
5566" * Structure for a single step of the follow operation.\n"\
5567" */\n"\
5568"ae2f_structdef_n(struct, ae2f_AnnSlpFollowOne_t, ae2f_AnnSlpFitOne_t) {\n"\
5569"\t/**\n"\
5570"\n"\
5571"\t * @brief\n"\
5572"\t * Loop counter.\n"\
5573"\t */\n"\
5574"\tsize_t\t\t\tm_j;\n"\
5575"\tae2f_float_t\t\tm_tmp, m_tmp1;\n"\
5576"};\n"\
5577"\n"\
5578"\n"\
5579"/**\n"\
5580"\n"\
5581" * @brief\n"\
5582" * Structure for SLP follow, fit, and fetch delta operations.\n"\
5583" */\n"\
5584"ae2f_structdef_n(struct, ae2f_AnnSlpFollow_t, ae2f_AnnSlpFit_t, ae2f_AnnSlpFetchDelta_t) {\n"\
5585"\t/**\n"\
5586"\n"\
5587"\t * @brief\n"\
5588"\t * Loop counters and layer sizes.\n"\
5589"\t */\n"\
5590"\tsize_t\t\t\tm_i, m_j;\n"\
5591"\tae2f_float_t\t\tm_tmp, m_tmp1;\n"\
5592"};\n"\
5593"\n"\
5594"/** include detected */ \\\n"\
5595"/** Path cursor */ \\\n"\
5596"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ae2f/Pack/End.h */ \\\n"\
5597"/** first fp: (nil) */ \\\n"\
5598"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Pack/End.h */ \\\n"\
5599"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Pack/End.h */ \\\n"\
5600"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/End.h */ \\\n"\
5601"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/End.h */ \\\n"\
5602"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
5603"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
5604"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/ */ \\\n"\
5605"/** Found something. Now let\'s validate. */ \\\n"\
5606"/** It\'s not repeating */ \\\n"\
5607"/******************** */\\\n"\
5608"/* Now the path will be: */ \\\n"\
5609" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
5610"/**\n"\
5611"\n"\
5612" * @file End.h\n"\
5613" * @author ae2f\n"\
5614" * @brief \n"\
5615" * @date 2025-02-01\n"\
5616" * \n"\
5617" * @copyright Copyright (c) 2025\n"\
5618" * \n"\
5619" */\n"\
5620"\n"\
5621"#if ae2f_PackCount\n"\
5622"#pragma pack(pop)\n"\
5623"#endif\n"\
5624"/** One eof gracefully */ \\\n"\
5625"\n"\
5626"\n"\
5627"#endif\n"\
5628"/** One eof gracefully */ \\\n"\
5629"\n"\
5630"/** include detected */ \\\n"\
5631"/** Path cursor */ \\\n"\
5632"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Pack/Beg.h */ \\\n"\
5633"/** first fp: (nil) */ \\\n"\
5634"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Pack/Beg.h */ \\\n"\
5635"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Pack/Beg.h */ \\\n"\
5636"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/Beg.h */ \\\n"\
5637"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/Beg.h */ \\\n"\
5638"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
5639"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
5640"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/ */ \\\n"\
5641"/** Found something. Now let\'s validate. */ \\\n"\
5642"/** It\'s not repeating */ \\\n"\
5643"/******************** */\\\n"\
5644"/* Now the path will be: */ \\\n"\
5645" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
5646"/**\n"\
5647"\n"\
5648" * @file Beg.h\n"\
5649" * @author ae2f\n"\
5650" * @brief\n"\
5651" * @date 2025-02-01\n"\
5652" * \n"\
5653" * @copyright Copyright (c) 2025\n"\
5654" * \n"\
5655" */\n"\
5656"\n"\
5657"/** include detected */ \\\n"\
5658"/** Path cursor */ \\\n"\
5659"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
5660"/** first fp: 0x55e37e25baf0 */ \\\n"\
5661"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
5662"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./ */ \\\n"\
5663"/** Found something. Now let\'s validate. */ \\\n"\
5664"/** It\'s not repeating */ \\\n"\
5665"/******************** */\\\n"\
5666"/* Now the path will be: */ \\\n"\
5667" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
5668"/**\n"\
5669"\n"\
5670" * @file Num.h\n"\
5671" * @author ae2f\n"\
5672" * @brief \n"\
5673" * @date 2025-02-01\n"\
5674" * \n"\
5675" * @copyright Copyright (c) 2025\n"\
5676" * \n"\
5677" */\n"\
5678"\n"\
5679"/// @brief\n"\
5680"/// Pre-defined structure packed byte count.\n"\
5681"/// \n"\
5682"/// See @ref ___DOC_CMAKE::ae2f_packcount\n"\
5683"#define ae2f_PackCount 0\n"\
5684"/** One eof gracefully */ \\\n"\
5685"\n"\
5686"\n"\
5687"#if ae2f_PackCount\n"\
5688"#pragma pack(push, 0)\n"\
5689"#endif\n"\
5690"/** One eof gracefully */ \\\n"\
5691"\n"\
5692"\n"\
5693"/**\n"\
5694"\n"\
5695" * @brief\n"\
5696" * # Single Layered Perceptron\n"\
5697" *\n"\
5698"\n"\
5699" * This is the main structure for the SLP.\n"\
5700" */\n"\
5701"ae2f_structdef(struct, ae2f_AnnSlp) \n"\
5702"#if ae2f_NEED_CLASS\n"\
5703"{\n"\
5704"\t/**\n"\
5705"\n"\
5706"\t * @brief\n"\
5707"\t * Weights of the network.\n"\
5708"\t */\n"\
5709"\tae2f_float_t* restrict m_weight;\n"\
5710"\t/**\n"\
5711"\n"\
5712"\t * @brief\n"\
5713"\t * Biases of the network.\n"\
5714"\t */\n"\
5715"\tae2f_float_t* restrict m_bias;\n"\
5716"\t/**\n"\
5717"\n"\
5718"\t * @brief\n"\
5719"\t * Cache for layer outputs.\n"\
5720"\t */\n"\
5721"\tae2f_float_t* restrict m_cache;\n"\
5722"\n"\
5723"\t/**\n"\
5724"\n"\
5725"\t * @brief\n"\
5726"\t * SLP data.\n"\
5727"\t */\n"\
5728"\tae2f_AnnSlp_t m_Slp[1];\n"\
5729"\n"\
5730"\t/**\n"\
5731"\n"\
5732"\t * @brief\n"\
5733"\t * Activation function.\n"\
5734"\t */\n"\
5735"\tae2f_AnnAct_t * m_act;\n"\
5736"\t/**\n"\
5737"\n"\
5738"\t * @brief\n"\
5739"\t * Derivative of the activation function.\n"\
5740"\t */\n"\
5741"\tae2f_AnnAct_t * m_actderiv;\n"\
5742"\t/**\n"\
5743"\n"\
5744"\t * @brief\n"\
5745"\t * Derivative of the loss function.\n"\
5746"\t */\n"\
5747"\tae2f_AnnLoss_t* m_lossderiv;\n"\
5748"\n"\
5749"\t/**\n"\
5750"\n"\
5751"\t * @brief\n"\
5752"\t * Learning rate for weights.\n"\
5753"\t */\n"\
5754"\tae2f_float_t m_learningrate;\n"\
5755"\t/**\n"\
5756"\n"\
5757"\t * @brief\n"\
5758"\t * Learning rate for biases.\n"\
5759"\t */\n"\
5760"\tae2f_float_t m_learningrate_bias;\n"\
5761"\n"\
5762"#if ae2f_WhenCXX(!)0\n"\
5763"#define ae2f_TMP\n"\
5764"\n"\
5765"\tinline static void ae2f_TMP operator delete(void* end);\n"\
5766"\tinline static void* ae2f_TMP operator new(\n"\
5767"\t\tsize_t oneonly\n"\
5768"\t\t, ae2f_LP(inc * outc) ae2f_float_t* restrict const\tweight_opt,\n"\
5769"\t\tae2f_LP(outc) ae2f_float_t* restrict const \t\t\tbias_opt,\n"\
5770"\t\tae2f_LP(outc) ae2f_float_t* restrict const \t\t\tcache_opt,\n"\
5771"\n"\
5772"\t\tconst size_t\t\t\t\t\tinc,\n"\
5773"\t\tconst size_t\t\t\t\t\toutc,\n"\
5774"\t\tconst size_t\t\t\t\t\toffset_opt,\n"\
5775"\n"\
5776"\t\tae2f_opt ae2f_AnnAct_t* const\t\t\tact,\n"\
5777"\t\tae2f_opt ae2f_AnnAct_t* const\t\t\tactderiv,\n"\
5778"\t\tae2f_AnnLoss_t* const\t\t\t\tlossderiv,\n"\
5779"\t\tae2f_float_t\t\t\t\t\tlearningrate,\n"\
5780"\t\tae2f_float_t\t\t\t\t\tlearningrate_bias,\n"\
5781"\t\tae2f_opt ae2f_err_t* restrict const\t\terr_opt\n"\
5782"\t\t) throw();\n"\
5783"\n"\
5784"\tinline void ae2f_TMP Predict(\n"\
5785"\t\tae2f_err_t* const err_opt\n"\
5786"\t\t, ae2f_LP(_this::inc)\n"\
5787"\t\tconst ae2f_float_t* const prm_in\n"\
5788"\t\t, ae2f_LP(_this::outc)\n"\
5789"\t\tae2f_float_t* const out\n"\
5790"\t\t) const;\n"\
5791"\n"\
5792"\tinline void ae2f_TMP Follow(\n"\
5793"\t\tae2f_err_t* const reterr_opt\n"\
5794"\t\t, ae2f_LP(_this::inc)\n"\
5795"\t\tconst ae2f_float_t* const prm_in\n"\
5796"\t\t, ae2f_LP(_this::outc) \n"\
5797"\t\tconst ae2f_float_t* const delta\n"\
5798"\t\t);\n"\
5799"\n"\
5800"\tinline void ae2f_TMP Fit(\n"\
5801"\t\tae2f_err_t* const reterr_opt\n"\
5802"\t\t, ae2f_LP(_this::inc) const ae2f_float_t* const prm_inp\n"\
5803"\t\t, ae2f_LP(_this::outc) const ae2f_float_t* const prm_out\n"\
5804"\t\t, ae2f_LP(_this::outc) const ae2f_float_t* const prm_out_desired\n"\
5805"\t\t);\n"\
5806"\n"\
5807"\tinline void ae2f_TMP Train(\n"\
5808"\t\tae2f_err_t* const\t\t\t\t\terr\n"\
5809"\t\t, ae2f_LP(slp::inc)\tconst ae2f_float_t*\tinp\n"\
5810"\t\t, ae2f_LP(slp::outc)\tconst ae2f_float_t*\tout_desired\n"\
5811"\t\t);\n"\
5812"\n"\
5813"#undef ae2f_TMP\n"\
5814"#endif \n"\
5815"}\n"\
5816"#endif\n"\
5817";\n"\
5818"\n"\
5819"/** include detected */ \\\n"\
5820"/** Path cursor */ \\\n"\
5821"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Pack/End.h */ \\\n"\
5822"/** first fp: (nil) */ \\\n"\
5823"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Pack/End.h */ \\\n"\
5824"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Pack/End.h */ \\\n"\
5825"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/End.h */ \\\n"\
5826"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/End.h */ \\\n"\
5827"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
5828"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
5829"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/ */ \\\n"\
5830"/** Found something. Now let\'s validate. */ \\\n"\
5831"/** It\'s not repeating */ \\\n"\
5832"/******************** */\\\n"\
5833"/* Now the path will be: */ \\\n"\
5834" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
5835"/**\n"\
5836"\n"\
5837" * @file End.h\n"\
5838" * @author ae2f\n"\
5839" * @brief \n"\
5840" * @date 2025-02-01\n"\
5841" * \n"\
5842" * @copyright Copyright (c) 2025\n"\
5843" * \n"\
5844" */\n"\
5845"\n"\
5846"#if ae2f_PackCount\n"\
5847"#pragma pack(pop)\n"\
5848"#endif\n"\
5849"/** One eof gracefully */ \\\n"\
5850"\n"\
5851"\n"\
5852"\n"\
5853"/* @memberof ae2f_mAnnSlp\n"\
5854" * @brief\n"\
5855" * Desired least byte size for initialising.\n"\
5856" *\n"\
5857"\n"\
5858" * Cache\t(output size)\n"\
5859" * Bias\t\t(output size)\n"\
5860" * Weight\t(input * output)\n"\
5861" */\n"\
5862"#define ae2f_AnnSlpFieldSz(inc, outc) ((((inc) + 2) * ((outc)) * sizeof(ae2f_float_t)) + sizeof(ae2f_AnnSlp))\n"\
5863"\n"\
5864"#if ae2f_NEED_CLASS\n"\
5865"\n"\
5866"/**\n"\
5867"\n"\
5868" * @brief\n"\
5869" * Initiator\n"\
5870" *\n"\
5871"\n"\
5872" * No allocation is occurred on this function.\n"\
5873" */\n"\
5874"ae2f_extern ae2f_SHAREDCALL void ae2f_AnnSlpInit(\n"\
5875"\t\tae2f_AnnSlp_t* restrict _this,\n"\
5876"\t\tconst size_t inc,\n"\
5877"\t\tconst size_t outc,\n"\
5878"\t\tconst size_t offset_opt,\n"\
5879"\t\tae2f_err_t* restrict const err_opt,\n"\
5880"\t\tsize_t* restrict const initsz_opt\n"\
5881"\t\t) noexcept;\n"\
5882"\n"\
5883"/* \n"\
5884" * @memberof ae2f_AnnSlp\n"\
5885" * @brief \n"\
5886" * Makes a typical( @ref ae2f_mAnnSp::expected ) perceptron.\n"\
5887" * See @ref ae2f_mAnnSlpInit.\n"\
5888" * \n"\
5889" * It is heap-allocated. pass the output @ref ae2f_mAnnSpDel after use.\n"\
5890" */\n"\
5891"ae2f_extern ae2f_SHAREDCALL void ae2f_AnnSlpMk(\n"\
5892"\t\tae2f_LP(inc * outc) ae2f_float_t* restrict const\tweight_opt,\n"\
5893"\t\tae2f_LP(outc) ae2f_float_t* restrict const \t\t\tbias_opt,\n"\
5894"\t\tae2f_LP(outc) ae2f_float_t* restrict const \t\t\tcache_opt,\n"\
5895"\n"\
5896"\t\tconst size_t\t\t\t\t\tinc,\n"\
5897"\t\tconst size_t\t\t\t\t\toutc,\n"\
5898"\t\tconst size_t\t\t\t\t\toffset_opt,\n"\
5899"\t\tconst size_t\t\t\t\t\textra_opt,\n"\
5900"\t\tae2f_FREE(ae2f_AnnSlpDel, __ae2f_AnnSlpDel) \n"\
5901"\t\tae2f_AnnSlp* restrict * restrict const\t\tslp,\n"\
5902"\t\tae2f_opt ae2f_AnnAct_t* const\t\t\tact,\n"\
5903"\t\tae2f_opt ae2f_AnnAct_t* const\t\t\tactderiv,\n"\
5904"\t\tae2f_AnnLoss_t* const\t\t\t\tlossderiv,\n"\
5905"\t\tae2f_float_t\t\t\t\t\tlearningrate,\n"\
5906"\t\tae2f_float_t\t\t\t\t\tlearningrate_bias,\n"\
5907"\t\tae2f_opt ae2f_err_t* restrict const\t\t\terr_opt\n"\
5908"\t\t) noexcept;\n"\
5909"\n"\
5910"ae2f_extern ae2f_SHAREDCALL void ae2f_AnnSlpDel(\n"\
5911"\t\tae2f_AnnSlp* restrict const slp\n"\
5912"\t\t) noexcept;\n"\
5913"\n"\
5914"ae2f_extern ae2f_SHAREDCALL void ae2f_AnnSlpPredict(\n"\
5915"\t\tae2f_err_t* restrict const err_opt\n"\
5916"\t\t, const ae2f_AnnSlp* restrict const _this\n"\
5917"\t\t, ae2f_LP(_this::inc)\n"\
5918"\t\tconst ae2f_float_t* restrict const prm_in\n"\
5919"\t\t, ae2f_LP(_this::outc)\n"\
5920"\t\tae2f_float_t* restrict const out\n"\
5921"\t\t) noexcept;\n"\
5922"\n"\
5923"\t/** \n"\
5924"\t * @brief \n"\
5925"\t * Adjusts the field based on delta\n"\
5926"\t *\n"\
5927"\n"\
5928"\t * @param delta\n"\
5929"\t *\n"\
5930"\n"\
5931"\t * @param prm_in\n"\
5932"\t *\n"\
5933"\n"\
5934"\t * @param field\n"\
5935"\t * Contains weights and biases\n"\
5936"\t *\n"\
5937"\n"\
5938"\t * @param learningrate\n"\
5939"\t * Learning rate for weights\n"\
5940"\t *\n"\
5941"\n"\
5942"\t * @param learningrate_bias\n"\
5943"\t * Learning rate for biases \n"\
5944"\t * */\n"\
5945"ae2f_extern ae2f_SHAREDCALL void ae2f_AnnSlpFollow(\n"\
5946"\t\tae2f_err_t* restrict const reterr_opt\n"\
5947"\t\t, const ae2f_AnnSlp* restrict const _this\n"\
5948"\t\t, ae2f_LP(_this::inc)\n"\
5949"\t\tconst ae2f_float_t* restrict const prm_in\n"\
5950"\t\t, ae2f_LP(_this::outc) \n"\
5951"\t\tconst ae2f_float_t* restrict const delta\n"\
5952"\t\t) noexcept;\n"\
5953"\n"\
5954"\t/** \n"\
5955"\t * @brief\n"\
5956"\t * Adjusts the delta based on output and desired output.\n"\
5957"\t * */\n"\
5958"\t\tae2f_extern ae2f_SHAREDCALL void ae2f_AnnSlpFit(\n"\
5959"\t\t\t\tae2f_err_t* const reterr_opt\n"\
5960"\t\t\t\t, const ae2f_AnnSlp* const _this\n"\
5961"\t\t\t\t, ae2f_LP(_this::inc) const ae2f_float_t* restrict const prm_inp\n"\
5962"\t\t\t\t, ae2f_LP(_this::outc) const ae2f_float_t* restrict const prm_out\n"\
5963"\t\t\t\t, ae2f_LP(_this::outc) const ae2f_float_t* restrict const prm_out_desired\n"\
5964"\t\t\t\t) noexcept;\n"\
5965"\n"\
5966"\t/** @brief Calculates the delta based on output and desired output. */\n"\
5967"\t\tae2f_extern ae2f_SHAREDCALL void ae2f_AnnSlpFetchDelta(\n"\
5968"\t\t\t\tae2f_opt ae2f_err_t* restrict const\t\terr\n"\
5969"\t\t\t\t, const ae2f_AnnSlp* restrict\t\t\tslp\n"\
5970"\n"\
5971"\t\t\t\t, ae2f_LP(slp::outc) const ae2f_float_t* restrict const\tout\n"\
5972"\t\t\t\t, ae2f_LP(slp::outc) const ae2f_float_t* restrict const\tout_desired\n"\
5973"\n"\
5974"\t\t\t\t, ae2f_LP(slp::outc) ae2f_float_t* restrict const\tretdelta\n"\
5975"\t\t\t\t) noexcept;\n"\
5976"\n"\
5977"\t/** @brief Adjusts the weights and biases based on predicted output from input and desired outpu. */\n"\
5978"\t\tae2f_extern ae2f_SHAREDCALL void ae2f_AnnSlpTrain(\n"\
5979"\t\t\t\tae2f_err_t* const restrict\t\t\t\t\terr\n"\
5980"\t\t\t\t, ae2f_AnnSlp*\trestrict\t\t\t\tslp\n"\
5981"\t\t\t\t, ae2f_LP(slp::inc)\tconst ae2f_float_t*\trestrict\tinp\n"\
5982"\t\t\t\t, ae2f_LP(slp::outc)\tconst ae2f_float_t*\trestrict\tout_desired\n"\
5983"\t\t\t\t) noexcept;\n"\
5984"\n"\
5985"#endif\n"\
5986"\n"\
5987"#if !(ae2f_MAC_BUILD)\n"\
5988"\n"\
5989"#define ae2f_AnnSlpInit\t\t__ae2f_AnnSlpInit_C\n"\
5990"#define ae2f_AnnSlpMk\t\t__ae2f_AnnSlpMk_C\n"\
5991"#define ae2f_AnnSlpDel\t\t__ae2f_AnnSlpDel_C\n"\
5992"#define ae2f_AnnSlpPredict\t__ae2f_AnnSlpPredict_C\n"\
5993"#define ae2f_AnnSlpFollow\t__ae2f_AnnSlpFollow_C\n"\
5994"#define ae2f_AnnSlpFit\t\t__ae2f_AnnSlpFit_C\n"\
5995"#define ae2f_AnnSlpTrain\t__ae2f_AnnSlpTrain_C\n"\
5996"#define ae2f_AnnSlpFetchDelta\t__ae2f_AnnSlpFetchDelta_C\n"\
5997"\n"\
5998"\n"\
5999"#endif /** macbuild */\n"\
6000"#endif\n"\
6001"\n"\
6002"#if !defined(ae2f_Ann_Slp_imp_h)\n"\
6003"#define ae2f_Ann_Slp_imp_h\n"\
6004"\n"\
6005"/** include detected */ \\\n"\
6006"/** Path cursor */ \\\n"\
6007"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Pack/Beg.h */ \\\n"\
6008"/** first fp: (nil) */ \\\n"\
6009"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Pack/Beg.h */ \\\n"\
6010"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Pack/Beg.h */ \\\n"\
6011"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/Beg.h */ \\\n"\
6012"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/Beg.h */ \\\n"\
6013"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
6014"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
6015"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/ */ \\\n"\
6016"/** Found something. Now let\'s validate. */ \\\n"\
6017"/** It\'s not repeating */ \\\n"\
6018"/******************** */\\\n"\
6019"/* Now the path will be: */ \\\n"\
6020" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/Beg.h */ \\\n"\
6021"/**\n"\
6022"\n"\
6023" * @file Beg.h\n"\
6024" * @author ae2f\n"\
6025" * @brief\n"\
6026" * @date 2025-02-01\n"\
6027" * \n"\
6028" * @copyright Copyright (c) 2025\n"\
6029" * \n"\
6030" */\n"\
6031"\n"\
6032"/** include detected */ \\\n"\
6033"/** Path cursor */ \\\n"\
6034"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
6035"/** first fp: 0x55e37e25baf0 */ \\\n"\
6036"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
6037"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./ */ \\\n"\
6038"/** Found something. Now let\'s validate. */ \\\n"\
6039"/** It\'s not repeating */ \\\n"\
6040"/******************** */\\\n"\
6041"/* Now the path will be: */ \\\n"\
6042" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/./Num.auto.h */ \\\n"\
6043"/**\n"\
6044"\n"\
6045" * @file Num.h\n"\
6046" * @author ae2f\n"\
6047" * @brief \n"\
6048" * @date 2025-02-01\n"\
6049" * \n"\
6050" * @copyright Copyright (c) 2025\n"\
6051" * \n"\
6052" */\n"\
6053"\n"\
6054"/// @brief\n"\
6055"/// Pre-defined structure packed byte count.\n"\
6056"/// \n"\
6057"/// See @ref ___DOC_CMAKE::ae2f_packcount\n"\
6058"#define ae2f_PackCount 0\n"\
6059"/** One eof gracefully */ \\\n"\
6060"\n"\
6061"\n"\
6062"#if ae2f_PackCount\n"\
6063"#pragma pack(push, 0)\n"\
6064"#endif\n"\
6065"/** One eof gracefully */ \\\n"\
6066"\n"\
6067"\n"\
6068"\n"\
6069"ae2f_AnnUtilV2(,ae2f_float_t,*restrict, ,ae2f_AnnSlp, *restrict);\n"\
6070"\n"\
6071"/**\n"\
6072"\n"\
6073" * @brief\n"\
6074" * Structure for SLP creation data.\n"\
6075" */\n"\
6076"ae2f_structdef(struct, ae2f_AnnSlpMk_t) {\n"\
6077"\t/**\n"\
6078"\n"\
6079"\t * @brief\n"\
6080"\t * Stack size and allocation count.\n"\
6081"\t */\n"\
6082"\tsize_t m_stack, m_alloccount;\n"\
6083"\t/**\n"\
6084"\n"\
6085"\t * @brief\n"\
6086"\t * Pointer to the created SLP.\n"\
6087"\t */\n"\
6088"\tae2f_AnnSlp* restrict m_ptr;\n"\
6089"\t/**\n"\
6090"\n"\
6091"\t * @brief\n"\
6092"\t * Field pointer for SLP data.\n"\
6093"\t */\n"\
6094"\tae2f_AnnUtilV2Name(ae2f_float_t, ae2f_AnnSlp) m_fieldptr;\n"\
6095"};\n"\
6096"\n"\
6097"/** include detected */ \\\n"\
6098"/** Path cursor */ \\\n"\
6099"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ae2f/Pack/End.h */ \\\n"\
6100"/** first fp: (nil) */ \\\n"\
6101"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Pack/End.h */ \\\n"\
6102"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/ae2f/Pack/End.h */ \\\n"\
6103"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/End.h */ \\\n"\
6104"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incae2f/Pack/End.h */ \\\n"\
6105"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
6106"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
6107"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/ */ \\\n"\
6108"/** Found something. Now let\'s validate. */ \\\n"\
6109"/** It\'s not repeating */ \\\n"\
6110"/******************** */\\\n"\
6111"/* Now the path will be: */ \\\n"\
6112" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/ae2f/Pack/End.h */ \\\n"\
6113"/**\n"\
6114"\n"\
6115" * @file End.h\n"\
6116" * @author ae2f\n"\
6117" * @brief \n"\
6118" * @date 2025-02-01\n"\
6119" * \n"\
6120" * @copyright Copyright (c) 2025\n"\
6121" * \n"\
6122" */\n"\
6123"\n"\
6124"#if ae2f_PackCount\n"\
6125"#pragma pack(pop)\n"\
6126"#endif\n"\
6127"/** One eof gracefully */ \\\n"\
6128"\n"\
6129"#endif\n"\
6130"\n"\
6131"/** include detected */ \\\n"\
6132"/** Path cursor */ \\\n"\
6133"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./Slp.auto.h */ \\\n"\
6134"/** first fp: 0x55e37e25a900 */ \\\n"\
6135"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./Slp.auto.h */ \\\n"\
6136"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ */ \\\n"\
6137"/** Found something. Now let\'s validate. */ \\\n"\
6138"/** It\'s not repeating */ \\\n"\
6139"/******************** */\\\n"\
6140"/* Now the path will be: */ \\\n"\
6141" /*/home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./Slp.auto.h */ \\\n"\
6142"#undef\t__ae2f_MACRO_GENERATED\n"\
6143"#define\t__ae2f_MACRO_GENERATED\t1\n"\
6144"#ifndef ae2f_Ann_Slp_c\n"\
6145"#if !__ae2f_MACRO_GENERATED\n"\
6146"/** include detected */ \\\n"\
6147"/** Path cursor */ \\\n"\
6148"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./ae2f/Ann/Slp.h */ \\\n"\
6149"/** first fp: (nil) */ \\\n"\
6150"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Slp.h */ \\\n"\
6151"/** Current /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/Slp.h */ \\\n"\
6152"/** Dir /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/ */ \\\n"\
6153"/** Found something. Now let\'s validate. */ \\\n"\
6154"/** It\'s repeating himself for some reason. */ \\\n"\
6155"\n"\
6156"#undef __ae2f_MACRO_GENERATED\n"\
6157"#define __ae2f_MACRO_GENERATED 1\n"\
6158"#endif\n"\
6159"\n"\
6160"#define ae2f_Ann_Slp_c\n"\
6161"\n"\
6162"#if !(ae2f_MAC_BUILD) && ae2f_NEED_CLASS || !(__ae2f_MACRO_GENERATED)\n"\
6163"/** include detected */ \\\n"\
6164"/** Path cursor */ \\\n"\
6165"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./stdlib.h */ \\\n"\
6166"/** first fp: (nil) */ \\\n"\
6167"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stdlib.h */ \\\n"\
6168"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stdlib.h */ \\\n"\
6169"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdlib.h */ \\\n"\
6170"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdlib.h */ \\\n"\
6171"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stdlib.h */ \\\n"\
6172"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstdlib.h */ \\\n"\
6173"/** Failed but ignoring it. */ \\\n"\
6174"\n"\
6175"#undef __ae2f_MACRO_GENERATED\n"\
6176"#define __ae2f_MACRO_GENERATED 1\n"\
6177"/** include detected */ \\\n"\
6178"/** Path cursor */ \\\n"\
6179"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/./assert.h */ \\\n"\
6180"/** first fp: (nil) */ \\\n"\
6181"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/assert.h */ \\\n"\
6182"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/assert.h */ \\\n"\
6183"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incassert.h */ \\\n"\
6184"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incassert.h */ \\\n"\
6185"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/assert.h */ \\\n"\
6186"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/classert.h */ \\\n"\
6187"/** Failed but ignoring it. */ \\\n"\
6188"\n"\
6189"#undef __ae2f_MACRO_GENERATED\n"\
6190"#define __ae2f_MACRO_GENERATED 1\n"\
6191"#endif /** for non-builds */\n"\
6192"\n"\
6193"#define __ae2f_AnnSlpDel\tfree\n"\
6194"#define __ae2f_AnnSlpDel_C\tfree\n"\
6195"\n"\
6196"#if ae2f_NEED_CLASS\n"\
6197"#define __ae2f_AnnSlpInitInpSz_imp( \\\n"\
6198"\t/** tparam */ \\\n"\
6199"\t\t \\\n"\
6200" \\\n"\
6201"\t/** param */ \\\n"\
6202"\t\t/* , size_t */ v_init, \\\n"\
6203"\t\t/* ae2f_float_t* const */ weight_opt, \\\n"\
6204"\t\t/* ae2f_float_t* const */ bias_opt, \\\n"\
6205"\t\t/* ae2f_float_t* const */ cache_opt, \\\n"\
6206"\t\t/* const size_t */ inc, \\\n"\
6207"\t\t/* const size_t */ outc \\\n"\
6208") \\\n"\
6209"{ \\\n"\
6210"\t(v_init) = \\\n"\
6211"\t\tsizeof(ae2f_AnnSlp) \\\n"\
6212"\t\t+ \t((weight_opt) ? 0 : (inc) * (outc)) * sizeof(ae2f_float_t) \\\n"\
6213"\t\t+\t((bias_opt) ? 0 : (outc)) * sizeof(ae2f_float_t) \\\n"\
6214"\t\t+\t((cache_opt) ? 0 : (outc) * sizeof(ae2f_float_t)) \\\n"\
6215"\t\t; \\\n"\
6216"}\n"\
6217"\n"\
6218"#define __ae2f_AnnSlpInit_imp( \\\n"\
6219"\t/** tparam */ \\\n"\
6220"\t\t \\\n"\
6221" \\\n"\
6222"\t/** param */ \\\n"\
6223"\t\t/* , size_t */ v_init, \\\n"\
6224"\t\t/* ae2f_AnnSlp_t */ _this, \\\n"\
6225"\t\t/* const size_t */ inc, \\\n"\
6226"\t\t/* const size_t */ outc, \\\n"\
6227"\t\t/* const size_t */ incmax_opt \\\n"\
6228") \\\n"\
6229"{ \\\n"\
6230"\t/* Calculate maximum input size */ \\\n"\
6231"\tunless(incmax_opt) { \\\n"\
6232"\t\t__ae2f_AnnSlpInitInpSz_imp( \\\n"\
6233"\t\t\t\tv_init, 0, 0, 0, inc, outc \\\n"\
6234"\t\t\t\t); \\\n"\
6235"\t\t(_this).m_inc\t=\t(inc); \\\n"\
6236"\t} else { \\\n"\
6237"\t\t(_this).m_inc\t=\t(incmax_opt); \\\n"\
6238"\t} \\\n"\
6239" \\\n"\
6240"\t(_this).m_outc\t=\t(outc); \\\n"\
6241"}\n"\
6242"\n"\
6243"\n"\
6244"#define __ae2f_AnnSlpInit( \\\n"\
6245"\t/** tparam */ \\\n"\
6246"\t\t \\\n"\
6247" \\\n"\
6248"\t/** param */ \\\n"\
6249"\t\t/* ,ae2f_AnnSlp_t* const */ _this, \\\n"\
6250"\t\t/* const size_t */ inc, \\\n"\
6251"\t\t/* const size_t */ outc, \\\n"\
6252"\t\t/* const size_t */ offset_opt, \\\n"\
6253"\t\t/* ae2f_err_t* const */ err_opt, \\\n"\
6254"\t\t/* size_t* const */ initsz_opt \\\n"\
6255") \\\n"\
6256"{ \\\n"\
6257"\tif((err_opt) && *(err_opt)) \\\n"\
6258"\t\t; \\\n"\
6259"\tunless(_this) \\\n"\
6260"\t\t(err_opt) && (*(err_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
6261"\telse { \\\n"\
6262"\t\tsize_t v_init; \\\n"\
6263"\t\t__ae2f_AnnSlpInit_imp( \\\n"\
6264"\t\t\t\tv_init \\\n"\
6265"\t\t\t\t, *(_this) \\\n"\
6266"\t\t\t\t, inc, outc \\\n"\
6267"\t\t\t\t, 0 \\\n"\
6268"\t\t\t\t); \\\n"\
6269"\t\t(initsz_opt) && (*(initsz_opt) = v_init + offset_opt); \\\n"\
6270"\t} \\\n"\
6271"}\n"\
6272"\n"\
6273"#else\n"\
6274"#undef\t__ae2f_AnnSlpInitInpSz_imp\n"\
6275"#define __ae2f_AnnSlpInitInpSz_imp(...) \\\n"\
6276"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
6277"\n"\
6278"#undef\t__ae2f_AnnSlpInit_imp\n"\
6279"#define __ae2f_AnnSlpInit_imp(...) \\\n"\
6280"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
6281"\n"\
6282"#undef\t__ae2f_AnnSlpInit\n"\
6283"#define __ae2f_AnnSlpInit(...) \\\n"\
6284"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
6285"#endif\n"\
6286"\n"\
6287"\n"\
6288"\n"\
6289"#define __ae2f_AnnSlpInit_C __ae2f_AnnSlpInit\n"\
6290"\n"\
6291"#if ae2f_NEED_CLASS\n"\
6292"#define __ae2f_AnnSlpMk_imp( \\\n"\
6293"\t/** tparam */ \\\n"\
6294"\t\t \\\n"\
6295" \\\n"\
6296"\t/** param */ \\\n"\
6297"\t\t/* , ae2f_AnnSlpMk_t */ v_mk, \\\n"\
6298"\t\t/* ae2f_float_t* const */ weight_opt, \\\n"\
6299"\t\t/* ae2f_float_t* const */ bias_opt, \\\n"\
6300"\t\t/* ae2f_float_t* const */ cache_opt, \\\n"\
6301"\t\t/* const size_t */ inc, \\\n"\
6302"\t\t/* const size_t */ outc, \\\n"\
6303"\t\t/* const size_t */ offset_opt, \\\n"\
6304"\t\t/* const size_t */ extra_opt, \\\n"\
6305"\t\t/* ae2f_optae2f_AnnAct_t* const */ act, \\\n"\
6306"\t\t/* ae2f_optae2f_AnnAct_t* const */ actderiv, \\\n"\
6307"\t\t/* ae2f_AnnLoss_t* const */ lossderiv, \\\n"\
6308"\t\t/* ae2f_float_t */ learningrate, \\\n"\
6309"\t\t/* ae2f_float_t */ learningrate_bias \\\n"\
6310") \\\n"\
6311"{ \\\n"\
6312"\t__ae2f_AnnSlpInitInpSz_imp(v_mk.m_stack, weight_opt, bias_opt, cache_opt, inc, outc); \\\n"\
6313"\tif((v_mk.m_ptr = ae2f_reinterpret_cast( \\\n"\
6314"\t\t\t\t\tae2f_AnnSlp* \\\n"\
6315"\t\t\t\t\t, calloc((v_mk).m_stack + (offset_opt) + (extra_opt), 1))) \\\n"\
6316"\t ) { \\\n"\
6317"\t\t(v_mk).m_alloccount = 0; \\\n"\
6318"\t\t(v_mk).m_fieldptr.b = (v_mk).m_ptr + 1; \\\n"\
6319"\t\t(v_mk).m_fieldptr.b = ae2f_reinterpret_cast( \\\n"\
6320"\t\t\t\tae2f_AnnSlp* \\\n"\
6321"\t\t\t\t, ae2f_reinterpret_cast(char*, (v_mk).m_fieldptr.b) + (offset_opt) \\\n"\
6322"\t\t\t\t); \\\n"\
6323" \\\n"\
6324"\t\tif(weight_opt) { \\\n"\
6325"\t\t\t(v_mk).m_ptr->m_weight = (weight_opt); \\\n"\
6326"\t\t} else { \\\n"\
6327"\t\t\t(v_mk).m_ptr->m_weight = ((v_mk).m_fieldptr.a); \\\n"\
6328"\t\t\t(v_mk).m_fieldptr.a += (inc) * (outc); \\\n"\
6329"\t\t} \\\n"\
6330" \\\n"\
6331"\t\tif(bias_opt) { \\\n"\
6332"\t\t\t(v_mk).m_ptr->m_bias = (bias_opt); \\\n"\
6333"\t\t} else { \\\n"\
6334"\t\t\t(v_mk).m_ptr->m_bias = (v_mk).m_fieldptr.a; \\\n"\
6335"\t\t\t(v_mk).m_fieldptr.a += (outc); \\\n"\
6336"\t\t} \\\n"\
6337" \\\n"\
6338"\t\tif(cache_opt) { \\\n"\
6339"\t\t\t(v_mk).m_ptr->m_cache = (cache_opt); \\\n"\
6340"\t\t} else { \\\n"\
6341"\t\t\t(v_mk).m_ptr->m_cache = (v_mk).m_fieldptr.a; \\\n"\
6342"\t\t} \\\n"\
6343" \\\n"\
6344"\t\t__ae2f_AnnSlpInit_imp( \\\n"\
6345"\t\t\t\t(v_mk).m_stack \\\n"\
6346"\t\t\t\t, v_mk.m_ptr->m_Slp[0] \\\n"\
6347"\t\t\t\t, inc \\\n"\
6348"\t\t\t\t, outc \\\n"\
6349"\t\t\t\t, inc \\\n"\
6350"\t\t\t\t); \\\n"\
6351" \\\n"\
6352"\t\t(v_mk).m_ptr[0].m_act = act; \\\n"\
6353"\t\t(v_mk).m_ptr[0].m_actderiv = actderiv; \\\n"\
6354"\t\t(v_mk).m_ptr[0].m_lossderiv = lossderiv; \\\n"\
6355"\t\t(v_mk).m_ptr[0].m_learningrate = learningrate; \\\n"\
6356"\t\t(v_mk).m_ptr[0].m_learningrate_bias = learningrate_bias; \\\n"\
6357"\t} \\\n"\
6358"}\n"\
6359"\n"\
6360"#define __ae2f_AnnSlpMk( \\\n"\
6361"\t/** tparam */ \\\n"\
6362"\t\t \\\n"\
6363" \\\n"\
6364"\t/** param */ \\\n"\
6365"\t\t/* ,ae2f_float_t* const */ weight_opt, \\\n"\
6366"\t\t/* ae2f_float_t* const */ bias_opt, \\\n"\
6367"\t\t/* ae2f_float_t* const */ cache_opt, \\\n"\
6368"\t\t/* const size_t */ inc, \\\n"\
6369"\t\t/* const size_t */ outc, \\\n"\
6370"\t\t/* const size_t */ offset_opt, \\\n"\
6371"\t\t/* const size_t */ extra_opt, \\\n"\
6372"\t\t/* ae2f_AnnSlp*** const */ slp, \\\n"\
6373"\t\t/* ae2f_optae2f_AnnAct_t* const */ act, \\\n"\
6374"\t\t/* ae2f_optae2f_AnnAct_t* const */ actderiv, \\\n"\
6375"\t\t/* ae2f_AnnLoss_t* const */ lossderiv, \\\n"\
6376"\t\t/* ae2f_float_t */ learningrate, \\\n"\
6377"\t\t/* ae2f_float_t */ learningrate_bias, \\\n"\
6378"\t\t/* ae2f_optae2f_err_t* const */ err_opt \\\n"\
6379") \\\n"\
6380"{ \\\n"\
6381"\tif((err_opt) && *(err_opt)) \\\n"\
6382"\t\t; \\\n"\
6383"\telse unless(slp) \\\n"\
6384"\t\t(err_opt) && (*(err_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
6385"\telse { \\\n"\
6386"\t\tae2f_AnnSlpMk_t v_mk; \\\n"\
6387"\t\t__ae2f_AnnSlpMk_imp( \\\n"\
6388"\t\t\t\tv_mk \\\n"\
6389"\t\t\t\t, weight_opt, bias_opt, cache_opt \\\n"\
6390"\t\t\t\t, inc \\\n"\
6391"\t\t\t\t, outc, offset_opt, extra_opt \\\n"\
6392" \\\n"\
6393"\t\t\t\t, act, actderiv, lossderiv \\\n"\
6394" \\\n"\
6395"\t\t\t\t, learningrate, learningrate_bias \\\n"\
6396"\t\t\t\t); \\\n"\
6397" \\\n"\
6398"\t\t(err_opt) && !(*(slp) = v_mk.m_ptr) && \\\n"\
6399"\t\t\t(*(err_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
6400"\t} \\\n"\
6401"}\n"\
6402"#else\n"\
6403"#undef\t__ae2f_AnnSlpMk_imp\n"\
6404"#define\t__ae2f_AnnSlpMk_imp(...) \\\n"\
6405"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
6406"\n"\
6407"#undef\t__ae2f_AnnSlpMk\n"\
6408"#define\t__ae2f_AnnSlpMk(...) \\\n"\
6409"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
6410"#endif\n"\
6411"\n"\
6412"#define __ae2f_AnnSlpMk_C __ae2f_AnnSlpMk\n"\
6413"\n"\
6414"/** @param v_predict has m_ret. That is the return value. */\n"\
6415"#define __ae2f_AnnSlpPredictOne_imp( \\\n"\
6416"\t/** tparam */ \\\n"\
6417"\t\t \\\n"\
6418" \\\n"\
6419"\t/** param */ \\\n"\
6420"\t\t/* , ae2f_AnnSlpPredictOne_t */ v_predict, \\\n"\
6421"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
6422"\t\t/* constae2f_float_t* const */ weight, \\\n"\
6423"\t\t/* const ae2f_float_t */ bias, \\\n"\
6424"\t\t/* ae2f_AnnAct_t */ act_opt, \\\n"\
6425"\t\t/* const size_t */ oidx, \\\n"\
6426"\t\t/* const size_t */ isz \\\n"\
6427") \\\n"\
6428"{ \\\n"\
6429"\t(v_predict).m_tmp = 0; \\\n"\
6430" \\\n"\
6431"\tfor((v_predict).m_j = (isz); (v_predict).m_j--; ) { \\\n"\
6432"\t\t(v_predict).m_tmp \\\n"\
6433"\t\t\t+= (prm_in)[(v_predict).m_j] \\\n"\
6434"\t\t\t* ((weight) + (oidx) * (isz))[(v_predict).m_j]; \\\n"\
6435"\t} \\\n"\
6436" \\\n"\
6437"\tact_opt((&(v_predict).m_ret), ((v_predict).m_tmp + (bias))); \\\n"\
6438"}\n"\
6439"\n"\
6440"#define __ae2f_AnnSlpPredict_imp( \\\n"\
6441"\t/** tparam */ \\\n"\
6442"\t\t \\\n"\
6443" \\\n"\
6444"\t/** param */ \\\n"\
6445"\t\t/* , ae2f_AnnSlpPredict_t */ v_predict, \\\n"\
6446"\t\t/* const ae2f_AnnSlp_t */ _this, \\\n"\
6447"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
6448"\t\t/* ae2f_float_t* const */ out, \\\n"\
6449"\t\t/* constae2f_float_t* const */ weight, \\\n"\
6450"\t\t/* constae2f_float_t* const */ bias, \\\n"\
6451"\t\t/* ae2f_AnnAct_t */ act_opt \\\n"\
6452") \\\n"\
6453"{ \\\n"\
6454"\tfor((v_predict).m_i = (_this).m_outc; (v_predict).m_i--; ) \\\n"\
6455"\t{ \\\n"\
6456"\t\t__ae2f_AnnSlpPredictOne_imp( \\\n"\
6457"\t\t\t\tv_predict \\\n"\
6458"\t\t\t\t, prm_in \\\n"\
6459"\t\t\t\t, weight \\\n"\
6460"\t\t\t\t, (bias)[(v_predict).m_i] \\\n"\
6461"\t\t\t\t, act_opt \\\n"\
6462"\t\t\t\t, (v_predict).m_i \\\n"\
6463"\t\t\t\t, (_this).m_inc \\\n"\
6464"\t\t\t\t); \\\n"\
6465" \\\n"\
6466"\t\t(out)[(v_predict).m_i] = (v_predict).m_ret; \\\n"\
6467"\t} \\\n"\
6468"}\n"\
6469"\n"\
6470"#define __ae2f_AnnSlpPredict( \\\n"\
6471"\t/** tparam */ \\\n"\
6472"\t\t \\\n"\
6473" \\\n"\
6474"\t/** param */ \\\n"\
6475"\t\t/* ,ae2f_err_t* const */ err_opt, \\\n"\
6476"\t\t/* constae2f_AnnSlp_t* const */ _this, \\\n"\
6477"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
6478"\t\t/* ae2f_float_t* const */ out, \\\n"\
6479"\t\t/* constae2f_float_t* const */ weight, \\\n"\
6480"\t\t/* constae2f_float_t* const */ bias, \\\n"\
6481"\t\t/* ae2f_AnnAct_t */ act_opt \\\n"\
6482") \\\n"\
6483"{ \\\n"\
6484"\tif((err_opt) && *(err_opt)) \\\n"\
6485"\t\t; \\\n"\
6486"\telse unless((_this) && (prm_in) && (out) && (weight) && (bias)) \\\n"\
6487"\t\t(err_opt) && ((err_opt) && (*(err_opt) |= ae2f_errGlob_PTR_IS_NULL)); \\\n"\
6488"\telse { \\\n"\
6489"\t\tae2f_AnnSlpPredict_t v_predict; \\\n"\
6490" \\\n"\
6491"\t\tif(act_opt) { \\\n"\
6492"\t\t\t__ae2f_AnnSlpPredict_imp( \\\n"\
6493"\t\t\t\t\t(v_predict) \\\n"\
6494"\t\t\t\t\t, *(_this), (prm_in), out \\\n"\
6495"\t\t\t\t\t, weight, bias, act_opt \\\n"\
6496"\t\t\t\t\t); \\\n"\
6497"\t\t} else { \\\n"\
6498"\t\t\t__ae2f_AnnSlpPredict_imp( \\\n"\
6499"\t\t\t\t\t(v_predict) \\\n"\
6500"\t\t\t\t\t, *(_this), prm_in, out \\\n"\
6501"\t\t\t\t\t, weight, bias, \\\n"\
6502"\t\t\t\t\t); \\\n"\
6503"\t\t} \\\n"\
6504"\t} \\\n"\
6505"}\n"\
6506"\n"\
6507"#if ae2f_NEED_CLASS\n"\
6508"#define __ae2f_AnnSlpPredict_C( \\\n"\
6509"\t/** tparam */ \\\n"\
6510"\t\t \\\n"\
6511" \\\n"\
6512"\t/** param */ \\\n"\
6513"\t\t/* ,ae2f_err_t* const */ err_opt, \\\n"\
6514"\t\t/* constae2f_AnnSlp* const */ _this, \\\n"\
6515"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
6516"\t\t/* ae2f_float_t* const */ out \\\n"\
6517") \\\n"\
6518"{ \\\n"\
6519"\tunless(_this) \\\n"\
6520"\t\t(err_opt) && (*(err_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
6521"\telse { \\\n"\
6522"\t\t__ae2f_AnnSlpPredict( \\\n"\
6523"\t\t\t\terr_opt, (_this)->m_Slp \\\n"\
6524"\t\t\t\t, prm_in, out \\\n"\
6525"\t\t\t\t, (_this)->m_weight \\\n"\
6526"\t\t\t\t, (_this)->m_bias \\\n"\
6527"\t\t\t\t, (_this)->m_act \\\n"\
6528"\t\t\t\t); \\\n"\
6529"\t} \\\n"\
6530"}\n"\
6531"#else\n"\
6532"#undef\t__ae2f_AnnSlpPredict_C\n"\
6533"#define\t__ae2f_AnnSlpPredict_C(...) \\\n"\
6534"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
6535"#endif\n"\
6536"\n"\
6537"/** @brief Weights */\n"\
6538"#define __ae2f_AnnSlpFollowOneW_imp( \\\n"\
6539"\t/** tparam */ \\\n"\
6540"\t\t \\\n"\
6541" \\\n"\
6542"\t/** param */ \\\n"\
6543"\t\t/* , const ae2f_float_t */ inp, \\\n"\
6544"\t\t/* const ae2f_float_t */ delta, \\\n"\
6545"\t\t/* ae2f_float_t* const */ weight, \\\n"\
6546"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
6547"\t\t/* const size_t */ inp_sz, \\\n"\
6548"\t\t/* const size_t */ inp_idx, \\\n"\
6549"\t\t/* const size_t */ out_sz, \\\n"\
6550"\t\t/* const size_t */ out_idx \\\n"\
6551") \\\n"\
6552"{ \\\n"\
6553"\t((weight) + (inp_sz) * (out_idx))[(inp_idx)] \\\n"\
6554"\t\t-= (delta) * (inp) * (learningrate); \\\n"\
6555"}\n"\
6556"\n"\
6557"#define __ae2f_AnnSlpFollowOneB_imp( \\\n"\
6558"\t/** tparam */ \\\n"\
6559"\t\t \\\n"\
6560" \\\n"\
6561"\t/** param */ \\\n"\
6562"\t\t/* , ae2f_float_t */ r_bias, \\\n"\
6563"\t\t/* const ae2f_float_t */ delta, \\\n"\
6564"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
6565") { (r_bias) -= (delta) * (learningrate_bias); }\n"\
6566"\n"\
6567"#define __ae2f_AnnSlpFollowOne_imp( \\\n"\
6568"\t/** tparam */ \\\n"\
6569"\t\t \\\n"\
6570" \\\n"\
6571"\t/** param */ \\\n"\
6572"\t\t/* , ae2f_AnnSlpFollowOne_t */ v_follow, \\\n"\
6573"\t\t/* constae2f_float_t* */ prm_in, \\\n"\
6574"\t\t/* const ae2f_float_t */ delta, \\\n"\
6575"\t\t/* ae2f_float_t* const */ weight, \\\n"\
6576"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
6577"\t\t/* const ae2f_float_t */ learningrate_bias, \\\n"\
6578"\t\t/* const size_t */ inp_sz, \\\n"\
6579"\t\t/* const size_t */ out_idx, \\\n"\
6580"\t\t/* ae2f_float_t */ v_bias \\\n"\
6581") \\\n"\
6582"{ \\\n"\
6583"\tfor((v_follow).m_j = 0; (v_follow).m_j < (inp_sz); ++(v_follow).m_j) { \\\n"\
6584"\t\t((weight) + (inp_sz) * (out_idx))[(v_follow).m_j] \\\n"\
6585"\t\t\t-= (delta) * (prm_in)[(v_follow).m_j] * (learningrate); \\\n"\
6586"\t} \\\n"\
6587" \\\n"\
6588"\t(v_bias) -= (delta) * (learningrate_bias); \\\n"\
6589"}\n"\
6590"\n"\
6591"\n"\
6592"#define __ae2f_AnnSlpFollow_imp( \\\n"\
6593"\t/** tparam */ \\\n"\
6594"\t\t \\\n"\
6595" \\\n"\
6596"\t/** param */ \\\n"\
6597"\t\t/* , ae2f_AnnSlpFollow_t */ v_follow, \\\n"\
6598"\t\t/* const ae2f_AnnSlp_t */ _this, \\\n"\
6599"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
6600"\t\t/* constae2f_float_t* const */ delta, \\\n"\
6601"\t\t/* ae2f_float_t* const */ weight, \\\n"\
6602"\t\t/* ae2f_float_t* const */ bias, \\\n"\
6603"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
6604"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
6605") \\\n"\
6606"{ \\\n"\
6607"\tfor(v_follow.m_i = (_this).m_outc; (v_follow).m_i--; ) { \\\n"\
6608"\t\t__ae2f_AnnSlpFollowOne_imp( \\\n"\
6609"\t\t\t\tv_follow \\\n"\
6610"\t\t\t\t, prm_in \\\n"\
6611"\t\t\t\t, (delta)[v_follow.m_i] \\\n"\
6612"\t\t\t\t, ((weight)) \\\n"\
6613"\t\t\t\t, learningrate, learningrate_bias \\\n"\
6614"\t\t\t\t, (_this).m_inc \\\n"\
6615"\t\t\t\t, (v_follow).m_i \\\n"\
6616"\t\t\t\t, (bias)[v_follow.m_i] \\\n"\
6617"\t\t\t\t); \\\n"\
6618"\t} \\\n"\
6619"}\n"\
6620"\n"\
6621"#define __ae2f_AnnSlpFollow( \\\n"\
6622"\t/** tparam */ \\\n"\
6623"\t\t \\\n"\
6624" \\\n"\
6625"\t/** param */ \\\n"\
6626"\t\t/* ,ae2f_err_t* const */ reterr_opt, \\\n"\
6627"\t\t/* constae2f_AnnSlp_t* const */ _this, \\\n"\
6628"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
6629"\t\t/* constae2f_float_t* const */ delta, \\\n"\
6630"\t\t/* ae2f_float_t* const */ weight, \\\n"\
6631"\t\t/* ae2f_float_t* const */ bias, \\\n"\
6632"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
6633"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
6634") \\\n"\
6635"{ \\\n"\
6636"\tif((reterr_opt) && *(reterr_opt)) \\\n"\
6637"\t\t; \\\n"\
6638"\telse if(learningrate == 0 && learningrate_bias == 0) \\\n"\
6639"\t\t; \\\n"\
6640"\telse unless((_this) && (prm_in) && (delta) && (weight) && (bias)) \\\n"\
6641"\t\t(reterr_opt) && (*(reterr_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
6642"\telse { \\\n"\
6643"\t\tae2f_AnnSlpFollow_t v_follow; \\\n"\
6644"\t\t__ae2f_AnnSlpFollow_imp( \\\n"\
6645"\t\t\t\tv_follow \\\n"\
6646"\t\t\t\t, *(_this) \\\n"\
6647"\t\t\t\t, prm_in \\\n"\
6648"\t\t\t\t, delta \\\n"\
6649"\t\t\t\t, weight, bias \\\n"\
6650"\t\t\t\t, learningrate \\\n"\
6651"\t\t\t\t, learningrate_bias \\\n"\
6652"\t\t\t\t); \\\n"\
6653"\t} \\\n"\
6654"}\n"\
6655"\n"\
6656"#if ae2f_NEED_CLASS\n"\
6657"#define __ae2f_AnnSlpFollow_C( \\\n"\
6658"\t/** tparam */ \\\n"\
6659"\t\t \\\n"\
6660" \\\n"\
6661"\t/** param */ \\\n"\
6662"\t\t/* ,ae2f_err_t* const */ reterr_opt, \\\n"\
6663"\t\t/* constae2f_AnnSlp* const */ _this, \\\n"\
6664"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
6665"\t\t/* constae2f_float_t* const */ delta \\\n"\
6666") { \\\n"\
6667"\tunless((_this)) \\\n"\
6668"\t\t(reterr_opt) && (*(reterr_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
6669"\telse { \\\n"\
6670"\t\t__ae2f_AnnSlpFollow( \\\n"\
6671"\t\t\t\treterr_opt, _this->m_Slp \\\n"\
6672"\t\t\t\t, prm_in, delta \\\n"\
6673"\t\t\t\t, _this->m_weight \\\n"\
6674"\t\t\t\t, (_this)->m_bias \\\n"\
6675"\t\t\t\t, (_this)->m_learningrate, (_this)->m_learningrate_bias \\\n"\
6676"\t\t\t\t); \\\n"\
6677"\t} \\\n"\
6678"}\n"\
6679"#else\n"\
6680"#undef\t__ae2f_AnnSlpFollow_C\n"\
6681"#define __ae2f_AnnSlpFollow_C(...) \\\n"\
6682"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
6683"#endif\n"\
6684"\n"\
6685"#define __ae2f_AnnSlpFetchDeltaOne_imp( \\\n"\
6686"\t/** tparam */ \\\n"\
6687"\t\t \\\n"\
6688" \\\n"\
6689"\t/** param */ \\\n"\
6690"\t\t/* , ae2f_float_t */ v_fetchdelta_0, \\\n"\
6691"\t\t/* ae2f_float_t */ v_fetchdelta_1, \\\n"\
6692"\t\t/* constae2f_float_t* const */ out, \\\n"\
6693"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
6694"\t\t/* ae2f_AnnAct_t */ actderiv_opt, \\\n"\
6695"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
6696"\t\t/* ae2f_float_t */ retdelta, \\\n"\
6697"\t\t/* const size_t */ oidx, \\\n"\
6698"\t\t/* const size_t */ osz \\\n"\
6699") \\\n"\
6700"{ \\\n"\
6701"\tactderiv_opt(&(v_fetchdelta_0), (out)[oidx]); \\\n"\
6702"\tlossderiv((&(v_fetchdelta_1)), (out), (out_desired), (oidx), (osz)); \\\n"\
6703" \\\n"\
6704"\t(retdelta) = \\\n"\
6705"\t\t(v_fetchdelta_0) * \\\n"\
6706"\t\t(v_fetchdelta_1) \\\n"\
6707"\t\t; \\\n"\
6708"}\n"\
6709"\n"\
6710"#define __ae2f_AnnSlpFetchDelta_imp( \\\n"\
6711"\t/** tparam */ \\\n"\
6712"\t\t \\\n"\
6713" \\\n"\
6714"\t/** param */ \\\n"\
6715"\t\t/* , ae2f_AnnSlpFetchDelta_t */ v_delta, \\\n"\
6716"\t\t/* const ae2f_AnnSlp_t */ slp, \\\n"\
6717"\t\t/* constae2f_float_t* const */ out, \\\n"\
6718"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
6719"\t\t/* ae2f_AnnAct_t */ actderiv_opt, \\\n"\
6720"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
6721"\t\t/* ae2f_float_t* const */ retdelta \\\n"\
6722") \\\n"\
6723"{ \\\n"\
6724"\tfor((v_delta).m_i = (slp).m_outc; (v_delta).m_i--; ) \\\n"\
6725"\t\t__ae2f_AnnSlpFetchDeltaOne_imp( \\\n"\
6726"\t\t\t\t(v_delta).m_tmp, (v_delta).m_tmp1 \\\n"\
6727"\t\t\t\t, out, out_desired \\\n"\
6728"\t\t\t\t, actderiv_opt, lossderiv \\\n"\
6729"\t\t\t\t, (retdelta)[v_delta.m_i] \\\n"\
6730"\t\t\t\t, (v_delta).m_i \\\n"\
6731"\t\t\t\t, (slp).m_outc \\\n"\
6732"\t\t\t\t); \\\n"\
6733"}\n"\
6734"\n"\
6735"#define __ae2f_AnnSlpFetchDelta( \\\n"\
6736"\t/** tparam */ \\\n"\
6737"\t\t \\\n"\
6738" \\\n"\
6739"\t/** param */ \\\n"\
6740"\t\t/* , ae2f_optae2f_err_t* const */ err, \\\n"\
6741"\t\t/* constae2f_AnnSlp_t* const */ slp, \\\n"\
6742"\t\t/* constae2f_float_t* const */ out, \\\n"\
6743"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
6744"\t\t/* ae2f_AnnAct_t */ actderiv_opt, \\\n"\
6745"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
6746"\t\t/* ae2f_float_t* const */ retdelta \\\n"\
6747") \\\n"\
6748"{ \\\n"\
6749"\tif((err) && *(err)) \\\n"\
6750"\t\t; \\\n"\
6751"\telse unless((slp) && (out) && (out_desired) && (retdelta)) \\\n"\
6752"\t\t(err) && (*(err) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
6753"\telse unless(lossderiv) \\\n"\
6754"\t\t(err) && (*(err) |= ae2f_errGlob_IMP_NOT_FOUND); \\\n"\
6755" \\\n"\
6756"\telse if(actderiv_opt) { \\\n"\
6757"\t\tae2f_AnnSlpFetchDelta_t v_delta; \\\n"\
6758"\t\t__ae2f_AnnSlpFetchDelta_imp( \\\n"\
6759"\t\t\t\tv_delta, (*(slp)) \\\n"\
6760"\t\t\t\t, out, out_desired \\\n"\
6761"\t\t\t\t, actderiv_opt \\\n"\
6762"\t\t\t\t, lossderiv \\\n"\
6763"\t\t\t\t, retdelta \\\n"\
6764"\t\t\t\t); \\\n"\
6765"\t} else { \\\n"\
6766"\t\tae2f_AnnSlpFetchDelta_t v_delta; \\\n"\
6767"\t\t__ae2f_AnnSlpFetchDelta_imp( \\\n"\
6768"\t\t\t\tv_delta, (*(slp)) \\\n"\
6769"\t\t\t\t, out, out_desired \\\n"\
6770"\t\t\t\t, , lossderiv \\\n"\
6771"\t\t\t\t, retdelta \\\n"\
6772"\t\t\t\t); \\\n"\
6773"\t} \\\n"\
6774"}\n"\
6775"\n"\
6776"#if\tae2f_NEED_CLASS\n"\
6777"#define __ae2f_AnnSlpFetchDelta_C( \\\n"\
6778"\t/** tparam */ \\\n"\
6779"\t\t \\\n"\
6780" \\\n"\
6781"\t/** param */ \\\n"\
6782"\t\t/* , ae2f_optae2f_err_t* const */ err, \\\n"\
6783"\t\t/* constae2f_AnnSlp* const */ slp, \\\n"\
6784"\t\t/* constae2f_float_t* const */ out, \\\n"\
6785"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
6786"\t\t/* ae2f_float_t* const */ retdelta \\\n"\
6787") \\\n"\
6788"{ \\\n"\
6789"\tif((err) && *(err)) \\\n"\
6790"\t\t; \\\n"\
6791"\telse unless((slp) && (out) && (out_desired) && (retdelta)) \\\n"\
6792"\t\t(err) && (*(err) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
6793"\telse unless((slp)->m_lossderiv) \\\n"\
6794"\t\t(err) && (*(err) |= ae2f_errGlob_IMP_NOT_FOUND); \\\n"\
6795"\telse { \\\n"\
6796"\t\tif((slp)->m_actderiv) { \\\n"\
6797"\t\t\tae2f_AnnSlpFetchDelta_t v_delta; \\\n"\
6798"\t\t\t__ae2f_AnnSlpFetchDelta_imp( \\\n"\
6799"\t\t\t\t\tv_delta, (slp)->m_Slp[0] \\\n"\
6800"\t\t\t\t\t, out, out_desired \\\n"\
6801"\t\t\t\t\t, (slp)->m_actderiv, (slp)->m_lossderiv \\\n"\
6802"\t\t\t\t\t, retdelta \\\n"\
6803"\t\t\t\t\t); \\\n"\
6804"\t\t} else { \\\n"\
6805"\t\t\tae2f_AnnSlpFetchDelta_t v_delta; \\\n"\
6806"\t\t\t__ae2f_AnnSlpFetchDelta_imp( \\\n"\
6807"\t\t\t\t\tv_delta, (slp)->m_Slp[0] \\\n"\
6808"\t\t\t\t\t, out, out_desired \\\n"\
6809"\t\t\t\t\t, , (slp)->m_lossderiv \\\n"\
6810"\t\t\t\t\t, retdelta \\\n"\
6811"\t\t\t\t\t); \\\n"\
6812"\t\t} \\\n"\
6813"\t} \\\n"\
6814"}\n"\
6815"#else\n"\
6816"#undef\t__ae2f_AnnSlpFetchDelta_C\n"\
6817"#define __ae2f_AnnSlpFetchDelta_C(...) \\\n"\
6818"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
6819"#endif\n"\
6820"\n"\
6821"#define __ae2f_AnnSlpFitOne_imp( \\\n"\
6822"\t/** tparam */ \\\n"\
6823"\t\t \\\n"\
6824" \\\n"\
6825"\t/** param */ \\\n"\
6826"\t\t/* , ae2f_AnnSlpFitOne_t */ v_fit, \\\n"\
6827"\t\t/* constae2f_float_t* const */ inp, \\\n"\
6828"\t\t/* constae2f_float_t* const */ out, \\\n"\
6829"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
6830"\t\t/* ae2f_float_t* const */ weight, \\\n"\
6831"\t\t/* ae2f_float_t */ r_bias, \\\n"\
6832"\t\t/* ae2f_float_t */ r_cachedelta, \\\n"\
6833"\t\t/* ae2f_AnnAct_t */ actderiv_opt, \\\n"\
6834"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
6835"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
6836"\t\t/* const ae2f_float_t */ learningrate_bias, \\\n"\
6837"\t\t/* const size_t */ iidx, \\\n"\
6838"\t\t/* const size_t */ oidx, \\\n"\
6839"\t\t/* const size_t */ isz, \\\n"\
6840"\t\t/* const size_t */ osz \\\n"\
6841") \\\n"\
6842"{ \\\n"\
6843"\t__ae2f_AnnSlpFetchDeltaOne_imp( \\\n"\
6844"\t\t\t(v_fit).m_tmp, (v_fit).m_tmp1 \\\n"\
6845"\t\t\t, out, out_desired \\\n"\
6846"\t\t\t, actderiv_opt, lossderiv \\\n"\
6847"\t\t\t, r_cachedelta \\\n"\
6848"\t\t\t, oidx, osz \\\n"\
6849"\t\t\t); \\\n"\
6850" \\\n"\
6851" \\\n"\
6852"\t__ae2f_AnnSlpFollowOne_imp( \\\n"\
6853"\t\t\tv_fit, inp, r_cachedelta, weight \\\n"\
6854"\t\t\t, learningrate, learningrate_bias \\\n"\
6855"\t\t\t, isz, oidx, r_bias \\\n"\
6856"\t\t\t); \\\n"\
6857"}\n"\
6858"\n"\
6859"#define __ae2f_AnnSlpFit_imp( \\\n"\
6860"\t/** tparam */ \\\n"\
6861"\t\t \\\n"\
6862" \\\n"\
6863"\t/** param */ \\\n"\
6864"\t\t/* , ae2f_AnnSlpFit_t */ v_fit, \\\n"\
6865"\t\t/* const ae2f_AnnSlp_t */ slp, \\\n"\
6866"\t\t/* constae2f_float_t* const */ inp, \\\n"\
6867"\t\t/* constae2f_float_t* const */ out, \\\n"\
6868"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
6869"\t\t/* ae2f_float_t* const */ weights, \\\n"\
6870"\t\t/* ae2f_float_t* const */ bias, \\\n"\
6871"\t\t/* ae2f_float_t* const */ cachedelta, \\\n"\
6872"\t\t/* ae2f_AnnAct_t */ actderiv_opt, \\\n"\
6873"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
6874"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
6875"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
6876") \\\n"\
6877"{ \\\n"\
6878"\t__ae2f_AnnSlpFetchDelta_imp( \\\n"\
6879"\t\t\tv_fit, slp \\\n"\
6880"\t\t\t, out, out_desired \\\n"\
6881"\t\t\t, actderiv_opt, lossderiv \\\n"\
6882"\t\t\t, cachedelta \\\n"\
6883"\t\t\t); \\\n"\
6884" \\\n"\
6885"\t__ae2f_AnnSlpFollow_imp( \\\n"\
6886"\t\t\tv_fit, slp, inp \\\n"\
6887"\t\t\t, cachedelta, weights, bias \\\n"\
6888"\t\t\t, learningrate, learningrate_bias \\\n"\
6889"\t\t\t); \\\n"\
6890"}\n"\
6891"\n"\
6892"#define __ae2f_AnnSlpFit( \\\n"\
6893"\t/** tparam */ \\\n"\
6894"\t\t \\\n"\
6895" \\\n"\
6896"\t/** param */ \\\n"\
6897"\t\t/* ,ae2f_err_t* const ae2f_opt */ reterr_opt, \\\n"\
6898"\t\t/* constae2f_AnnSlp_t* */ _this, \\\n"\
6899"\t\t/* constae2f_float_t* const */ prm_inp, \\\n"\
6900"\t\t/* constae2f_float_t* const */ prm_out, \\\n"\
6901"\t\t/* constae2f_float_t* const */ prm_out_desired, \\\n"\
6902"\t\t/* ae2f_float_t* const */ weights, \\\n"\
6903"\t\t/* ae2f_float_t* const */ bias, \\\n"\
6904"\t\t/* ae2f_float_t* const */ cachedelta, \\\n"\
6905"\t\t/* ae2f_AnnAct_t ae2f_opt */ actderiv_opt, \\\n"\
6906"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
6907"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
6908"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
6909") \\\n"\
6910"{ \\\n"\
6911"\tif((reterr_opt) && *(reterr_opt)) \\\n"\
6912"\t\t; \\\n"\
6913"\telse unless((_this) && (prm_inp) && (prm_out_desired) && (weights) && (bias) && (cachedelta)) \\\n"\
6914"\t\t(reterr_opt) && (*(reterr_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
6915"\telse unless(lossderiv) \\\n"\
6916"\t\t(reterr_opt) && (*(reterr_opt) |= ae2f_errGlob_IMP_NOT_FOUND); \\\n"\
6917"\telse if ((learningrate) == 0 && (learningrate_bias) == 0) \\\n"\
6918"\t\t; \\\n"\
6919"\telse { \\\n"\
6920"\t\tae2f_AnnSlpFit_t v_fit; \\\n"\
6921"\t\tif(actderiv_opt) { \\\n"\
6922"\t\t\t__ae2f_AnnSlpFit_imp( \\\n"\
6923"\t\t\t\t\tv_fit \\\n"\
6924"\t\t\t\t\t, (*(_this)) \\\n"\
6925"\t\t\t\t\t, prm_inp \\\n"\
6926"\t\t\t\t\t, prm_out \\\n"\
6927"\t\t\t\t\t, prm_out_desired \\\n"\
6928"\t\t\t\t\t, weights \\\n"\
6929"\t\t\t\t\t, bias \\\n"\
6930"\t\t\t\t\t, cachedelta \\\n"\
6931"\t\t\t\t\t, actderiv_opt \\\n"\
6932"\t\t\t\t\t, lossderiv \\\n"\
6933"\t\t\t\t\t, learningrate \\\n"\
6934"\t\t\t\t\t, learningrate_bias \\\n"\
6935"\t\t\t\t\t); \\\n"\
6936"\t\t} else { \\\n"\
6937"\t\t\t__ae2f_AnnSlpFit_imp( \\\n"\
6938"\t\t\t\t\tv_fit \\\n"\
6939"\t\t\t\t\t, (*(_this)) \\\n"\
6940"\t\t\t\t\t, prm_inp \\\n"\
6941"\t\t\t\t\t, prm_out \\\n"\
6942"\t\t\t\t\t, prm_out_desired \\\n"\
6943"\t\t\t\t\t, weights \\\n"\
6944"\t\t\t\t\t, bias \\\n"\
6945"\t\t\t\t\t, cachedelta \\\n"\
6946"\t\t\t\t\t, \\\n"\
6947"\t\t\t\t\t, lossderiv \\\n"\
6948"\t\t\t\t\t, learningrate \\\n"\
6949"\t\t\t\t\t, learningrate_bias \\\n"\
6950"\t\t\t\t\t); \\\n"\
6951"\t\t} \\\n"\
6952"\t} \\\n"\
6953"}\n"\
6954"\n"\
6955"#if\tae2f_NEED_CLASS\n"\
6956"#define __ae2f_AnnSlpFit_C( \\\n"\
6957"\t/** tparam */ \\\n"\
6958"\t\t \\\n"\
6959" \\\n"\
6960"\t/** param */ \\\n"\
6961"\t\t/* ,ae2f_err_t* const */ reterr_opt, \\\n"\
6962"\t\t/* constae2f_AnnSlp* const */ _this, \\\n"\
6963"\t\t/* constae2f_float_t* const */ prm_inp, \\\n"\
6964"\t\t/* constae2f_float_t* const */ prm_out, \\\n"\
6965"\t\t/* constae2f_float_t* const */ prm_out_desired \\\n"\
6966") { \\\n"\
6967"\tunless(_this) { \\\n"\
6968"\t\t((reterr_opt) && (*(reterr_opt)|= ae2f_errGlob_PTR_IS_NULL)); \\\n"\
6969"\t} \\\n"\
6970"\telse { \\\n"\
6971"\t\t__ae2f_AnnSlpFit( \\\n"\
6972"\t\t\t\treterr_opt \\\n"\
6973"\t\t\t\t, (_this)->m_Slp \\\n"\
6974"\t\t\t\t, prm_inp \\\n"\
6975"\t\t\t\t, prm_out \\\n"\
6976"\t\t\t\t, prm_out_desired \\\n"\
6977"\t\t\t\t, (_this)->m_weight \\\n"\
6978"\t\t\t\t, (_this)->m_bias \\\n"\
6979"\t\t\t\t, (_this)->m_cache \\\n"\
6980"\t\t\t\t, (_this)->m_actderiv \\\n"\
6981"\t\t\t\t, (_this)->m_lossderiv \\\n"\
6982"\t\t\t\t, (_this)->m_learningrate \\\n"\
6983"\t\t\t\t, (_this)->m_learningrate_bias \\\n"\
6984"\t\t\t\t); \\\n"\
6985"\t} \\\n"\
6986"}\n"\
6987"#else\n"\
6988"#undef\t__ae2f_AnnSlpFit_C\n"\
6989"#define\t__ae2f_AnnSlpFit_C(...) \\\n"\
6990"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
6991"#endif\n"\
6992"\n"\
6993"#define __ae2f_AnnSlpTrainOne_imp( \\\n"\
6994"\t/** tparam */ \\\n"\
6995"\t\t \\\n"\
6996" \\\n"\
6997"\t/** param */ \\\n"\
6998"\t\t/* , ae2f_AnnSlpTrainOne_t */ v_train, \\\n"\
6999"\t\t/* ae2f_opt ae2f_AnnAct_t */ act, \\\n"\
7000"\t\t/* ae2f_opt ae2f_AnnAct_t */ actderiv, \\\n"\
7001"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
7002"\t\t/* constae2f_float_t* const */ inp, \\\n"\
7003"\t\t/* ae2f_float_t* const */ out_cache, \\\n"\
7004"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
7005"\t\t/* ae2f_float_t* const */ weight, \\\n"\
7006"\t\t/* ae2f_float_t */ v_bias, \\\n"\
7007"\t\t/* ae2f_float_t */ r_cachedelta, \\\n"\
7008"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
7009"\t\t/* const ae2f_float_t */ learningrate_bias, \\\n"\
7010"\t\t/* const size_t */ oidx, \\\n"\
7011"\t\t/* const size_t */ osz, \\\n"\
7012"\t\t/* const size_t */ isz \\\n"\
7013") \\\n"\
7014"{ \\\n"\
7015"\t__ae2f_AnnSlpPredictOne_imp( \\\n"\
7016"\t\t\tv_train \\\n"\
7017"\t\t\t, inp \\\n"\
7018"\t\t\t, weight \\\n"\
7019"\t\t\t, v_bias \\\n"\
7020"\t\t\t, act \\\n"\
7021"\t\t\t, oidx \\\n"\
7022"\t\t\t, isz \\\n"\
7023"\t\t\t); \\\n"\
7024" \\\n"\
7025"\t(out_cache)[oidx] = (v_train).m_ret; \\\n"\
7026" \\\n"\
7027"\t__ae2f_AnnSlpFitOne_imp( \\\n"\
7028"\t\t\tv_train \\\n"\
7029"\t\t\t, inp \\\n"\
7030"\t\t\t, out_cache, out_desired \\\n"\
7031"\t\t\t, weight \\\n"\
7032"\t\t\t, v_bias \\\n"\
7033"\t\t\t, r_cachedelta \\\n"\
7034"\t\t\t, actderiv, lossderiv \\\n"\
7035"\t\t\t, learningrate, learningrate_bias \\\n"\
7036"\t\t\t, iidx, oidx, isz, osz \\\n"\
7037"\t\t\t); \\\n"\
7038"}\n"\
7039"\n"\
7040"#define __ae2f_AnnSlpTrain_imp( \\\n"\
7041"\t/** tparam */ \\\n"\
7042"\t\t \\\n"\
7043" \\\n"\
7044"\t/** param */ \\\n"\
7045"\t\t/* , ae2f_AnnSlpTrain_t */ v_train, \\\n"\
7046"\t\t/* const ae2f_AnnSlp_t */ slp, \\\n"\
7047"\t\t/* constae2f_float_t* const */ inp, \\\n"\
7048"\t\t/* ae2f_float_t* const */ out_cache, \\\n"\
7049"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
7050"\t\t/* ae2f_float_t* const */ weights, \\\n"\
7051"\t\t/* ae2f_float_t* const */ bias, \\\n"\
7052"\t\t/* ae2f_float_t* const */ cachedelta, \\\n"\
7053"\t\t/* ae2f_opt ae2f_AnnAct_t */ act, \\\n"\
7054"\t\t/* ae2f_opt ae2f_AnnAct_t */ actderiv, \\\n"\
7055"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
7056"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
7057"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
7058") \\\n"\
7059"{ \\\n"\
7060"\t__ae2f_AnnSlpPredict_imp(v_train, slp, inp, out_cache, weights, bias, act); \\\n"\
7061"\t__ae2f_AnnSlpFit_imp( \\\n"\
7062"\t\t\tv_train, slp, inp, out_cache, out_desired \\\n"\
7063"\t\t\t, weights, bias, cachedelta \\\n"\
7064"\t\t\t, actderiv, lossderiv \\\n"\
7065"\t\t\t, learningrate, learningrate_bias \\\n"\
7066"\t\t\t); \\\n"\
7067"}\n"\
7068"\n"\
7069"#if ae2f_NEED_CLASS\n"\
7070"#define __ae2f_AnnSlpTrain_C( \\\n"\
7071"\t/** tparam */ \\\n"\
7072"\t\t \\\n"\
7073" \\\n"\
7074"\t/** param */ \\\n"\
7075"\t\t/* ,ae2f_err_t* const */ err, \\\n"\
7076"\t\t/* ae2f_AnnSlp* */ slp, \\\n"\
7077"\t\t/* constae2f_float_t* */ inp, \\\n"\
7078"\t\t/* constae2f_float_t* */ out_desired \\\n"\
7079") \\\n"\
7080"{ \\\n"\
7081"\tunless(slp) \\\n"\
7082"\t\t(err) && (*(err) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
7083"\telse { \\\n"\
7084"\t\t__ae2f_AnnSlpTrain( \\\n"\
7085"\t\t\t\terr, (slp)->m_Slp, inp \\\n"\
7086"\t\t\t\t, (slp)->m_cache \\\n"\
7087"\t\t\t\t, out_desired \\\n"\
7088"\t\t\t\t, (slp)->m_weight \\\n"\
7089"\t\t\t\t, (slp)->m_bias \\\n"\
7090"\t\t\t\t, (slp)->m_cache \\\n"\
7091"\t\t\t\t, (slp)->m_act \\\n"\
7092"\t\t\t\t, (slp)->m_actderiv \\\n"\
7093"\t\t\t\t, (slp)->m_lossderiv \\\n"\
7094"\t\t\t\t, (slp)->m_learningrate \\\n"\
7095"\t\t\t\t, (slp)->m_learningrate_bias \\\n"\
7096"\t\t\t\t); \\\n"\
7097"\t} \\\n"\
7098"}\n"\
7099"#else\n"\
7100"#undef\t__ae2f_AnnSlpTrain_C\n"\
7101"#define __ae2f_AnnSlpTrain_C \\\n"\
7102"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
7103"\n"\
7104"#endif\n"\
7105"\n"\
7106"#define __ae2f_AnnSlpTrain( \\\n"\
7107"\t/** tparam */ \\\n"\
7108"\t\t \\\n"\
7109" \\\n"\
7110"\t/** param */ \\\n"\
7111"\t\t/* ,ae2f_err_t* const */ err, \\\n"\
7112"\t\t/* constae2f_AnnSlp_t* const */ slp, \\\n"\
7113"\t\t/* constae2f_float_t* const */ inp, \\\n"\
7114"\t\t/* ae2f_float_t* const */ out_cache, \\\n"\
7115"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
7116"\t\t/* ae2f_float_t* const */ weights, \\\n"\
7117"\t\t/* ae2f_float_t* const */ bias, \\\n"\
7118"\t\t/* ae2f_float_t* const */ cachedelta, \\\n"\
7119"\t\t/* ae2f_optae2f_AnnAct_t* const */ act, \\\n"\
7120"\t\t/* ae2f_optae2f_AnnAct_t* const */ actderiv, \\\n"\
7121"\t\t/* ae2f_AnnLoss_t* const */ lossderiv, \\\n"\
7122"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
7123"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
7124") \\\n"\
7125"{ \\\n"\
7126"\tif((err) && *(err)) \\\n"\
7127"\t\t; \\\n"\
7128"\telse unless((slp) && (inp) && (out_cache) && (out_desired) && (weights) && (bias) && (cachedelta)) \\\n"\
7129"\t\t(err) && (*(err) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
7130"\telse unless(lossderiv) \\\n"\
7131"\t\t(err) && (*(err) |= ae2f_errGlob_IMP_NOT_FOUND); \\\n"\
7132"\telse if((learningrate) == 0 && (learningrate_bias) == 0) \\\n"\
7133"\t\t; \\\n"\
7134"\telse { \\\n"\
7135"\t\tae2f_AnnSlpTrain_t v_train; \\\n"\
7136"\t\tif (act) { \\\n"\
7137"\t\t\tif(actderiv) { \\\n"\
7138"\t\t\t\t__ae2f_AnnSlpTrain_imp( \\\n"\
7139"\t\t\t\t\t\tv_train, (*slp), inp, out_cache \\\n"\
7140"\t\t\t\t\t\t, out_desired, weights, bias \\\n"\
7141"\t\t\t\t\t\t, cachedelta, act, actderiv, lossderiv \\\n"\
7142"\t\t\t\t\t\t, learningrate, learningrate_bias \\\n"\
7143"\t\t\t\t\t\t); \\\n"\
7144"\t\t\t} else { \\\n"\
7145"\t\t\t\t__ae2f_AnnSlpTrain_imp( \\\n"\
7146"\t\t\t\t\t\tv_train, (*slp), inp, out_cache \\\n"\
7147"\t\t\t\t\t\t, out_desired, weights, bias \\\n"\
7148"\t\t\t\t\t\t, cachedelta, act, , lossderiv \\\n"\
7149"\t\t\t\t\t\t, learningrate, learningrate_bias \\\n"\
7150"\t\t\t\t\t\t); \\\n"\
7151" \\\n"\
7152"\t\t\t} \\\n"\
7153"\t\t} else { \\\n"\
7154"\t\t\tif(actderiv) { \\\n"\
7155"\t\t\t\t__ae2f_AnnSlpTrain_imp( \\\n"\
7156"\t\t\t\t\t\tv_train, (*slp), inp, out_cache \\\n"\
7157"\t\t\t\t\t\t, out_desired, weights, bias \\\n"\
7158"\t\t\t\t\t\t, cachedelta, , actderiv, lossderiv \\\n"\
7159"\t\t\t\t\t\t, learningrate, learningrate_bias \\\n"\
7160"\t\t\t\t\t\t); \\\n"\
7161"\t\t\t} else { \\\n"\
7162"\t\t\t\t__ae2f_AnnSlpTrain_imp( \\\n"\
7163"\t\t\t\t\t\tv_train, (*slp), inp, out_cache \\\n"\
7164"\t\t\t\t\t\t, out_desired, weights, bias \\\n"\
7165"\t\t\t\t\t\t, cachedelta, , , lossderiv \\\n"\
7166"\t\t\t\t\t\t, learningrate, learningrate_bias \\\n"\
7167"\t\t\t\t\t\t); \\\n"\
7168" \\\n"\
7169"\t\t\t} \\\n"\
7170"\t\t} \\\n"\
7171"\t} \\\n"\
7172"}\n"\
7173"\n"\
7174"\n"\
7175"#endif\n"\
7176"\n"\
7177"#undef\t__ae2f_MACRO_GENERATED\n"\
7178"\n"\
7179"#define\t__ae2f_MACRO_GENERATED\t0\n"\
7180"\n"\
7181"/** One eof gracefully */ \\\n"\
7182"\n"\
7183"\n"\
7184"#if ae2f_WhenCXX(!)0 && !defined(ae2f_Ann_Slp_cc) && ae2f_NEED_CLASS\n"\
7185"#define ae2f_Ann_Slp_cc\n"\
7186"\n"\
7187"#define ae2f_TMP ae2f_AnnSlp::\n"\
7188"\n"\
7189"inline void ae2f_TMP operator delete(void* end) {\n"\
7190"\tae2f_AnnSlpDel(ae2f_reinterpret_cast(ae2f_AnnSlp*, end));\n"\
7191"}\n"\
7192"\n"\
7193"inline void* ae2f_TMP operator new(\n"\
7194"\t\tsize_t oneonly\n"\
7195"\t\t, ae2f_LP(inc * outc) ae2f_float_t* const\t\tweight_opt,\n"\
7196"\t\tae2f_LP(outc) ae2f_float_t* const \t\t\tbias_opt,\n"\
7197"\t\tae2f_LP(outc) ae2f_float_t* const \t\t\tcache_opt,\n"\
7198"\n"\
7199"\t\tconst size_t\t\t\t\t\tinc,\n"\
7200"\t\tconst size_t\t\t\t\t\toutc,\n"\
7201"\t\tconst size_t\t\t\t\t\toffset_opt,\n"\
7202"\n"\
7203"\t\tae2f_opt ae2f_AnnAct_t* const\t\t\tact,\n"\
7204"\t\tae2f_opt ae2f_AnnAct_t* const\t\t\tactderiv,\n"\
7205"\t\tae2f_AnnLoss_t* const\t\t\t\tlossderiv,\n"\
7206"\t\tae2f_float_t\t\t\t\t\tlearningrate,\n"\
7207"\t\tae2f_float_t\t\t\t\t\tlearningrate_bias,\n"\
7208"\t\tae2f_opt ae2f_err_t* const\t\t\terr_opt\n"\
7209"\t\t) throw() \n"\
7210"{\n"\
7211"\tif(oneonly != sizeof(ae2f_AnnSlp)) return 0;\n"\
7212"\tae2f_AnnSlp* __v[1] = { NULL };\n"\
7213"\n"\
7214"\tae2f_AnnSlpMk(\n"\
7215"\t\t\tweight_opt, bias_opt, cache_opt, inc, outc, offset_opt, 0\n"\
7216"\t\t\t, __v, act, actderiv, lossderiv, learningrate, learningrate_bias, err_opt);\n"\
7217"\n"\
7218"\treturn __v[0];\n"\
7219"}\n"\
7220"\n"\
7221"inline void ae2f_TMP Predict(\n"\
7222"\t\tae2f_err_t* const err_opt\n"\
7223"\t\t, ae2f_LP(_this::inc)\n"\
7224"\t\tconst ae2f_float_t* const prm_in\n"\
7225"\t\t, ae2f_LP(_this::outc)\n"\
7226"\t\tae2f_float_t* const out\n"\
7227"\t\t) const \n"\
7228"{\n"\
7229"\tae2f_AnnSlpPredict(err_opt, this, prm_in, out);\n"\
7230"}\n"\
7231"\n"\
7232"inline void ae2f_TMP Follow(\n"\
7233"\t\tae2f_err_t* const reterr_opt\n"\
7234"\t\t, ae2f_LP(_this::inc)\n"\
7235"\t\tconst ae2f_float_t* const prm_in\n"\
7236"\t\t, ae2f_LP(_this::outc) \n"\
7237"\t\tconst ae2f_float_t* const delta\n"\
7238"\t\t) \n"\
7239"{\n"\
7240"\tae2f_AnnSlpFollow(reterr_opt, this, prm_in, delta);\n"\
7241"}\n"\
7242"\n"\
7243"inline void ae2f_TMP Fit(\n"\
7244"\t\tae2f_err_t* const reterr_opt\n"\
7245"\t\t, ae2f_LP(_this::inc) const ae2f_float_t* const prm_inp\n"\
7246"\t\t, ae2f_LP(_this::outc) const ae2f_float_t* const prm_out\n"\
7247"\t\t, ae2f_LP(_this::outc) const ae2f_float_t* const prm_out_desired\n"\
7248"\t\t) \n"\
7249"{\n"\
7250"\tae2f_AnnSlpFit(reterr_opt, this, prm_inp, prm_out, prm_out_desired);\n"\
7251"}\n"\
7252"\n"\
7253"inline void ae2f_TMP Train(\n"\
7254"\t\tae2f_err_t* const\t\t\t\t\terr\n"\
7255"\t\t, ae2f_LP(slp::inc)\tconst ae2f_float_t*\tinp\n"\
7256"\t\t, ae2f_LP(slp::outc)\tconst ae2f_float_t*\tout_desired\n"\
7257"\t\t) \n"\
7258"{\n"\
7259"\tae2f_AnnSlpTrain(err, this, inp, out_desired);\n"\
7260"}\n"\
7261"\n"\
7262"#undef ae2f_TMP\n"\
7263"\n"\
7264"#endif\n"\
7265"\n"\
7266"/** One eof gracefully */ \\\n"\
7267"\n"\
7268"#undef __ae2f_MACRO_GENERATED\n"\
7269"#define __ae2f_MACRO_GENERATED 1\n"\
7270"#endif\n"\
7271"\n"\
7272"#define ae2f_Ann_Slp_c\n"\
7273"\n"\
7274"#if !(ae2f_MAC_BUILD) && ae2f_NEED_CLASS || !(__ae2f_MACRO_GENERATED)\n"\
7275"/** include detected */ \\\n"\
7276"/** Path cursor */ \\\n"\
7277"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/stdlib.h */ \\\n"\
7278"/** first fp: (nil) */ \\\n"\
7279"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/stdlib.h */ \\\n"\
7280"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/stdlib.h */ \\\n"\
7281"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdlib.h */ \\\n"\
7282"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incstdlib.h */ \\\n"\
7283"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/stdlib.h */ \\\n"\
7284"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/clstdlib.h */ \\\n"\
7285"/** Failed but ignoring it. */ \\\n"\
7286"\n"\
7287"#undef __ae2f_MACRO_GENERATED\n"\
7288"#define __ae2f_MACRO_GENERATED 1\n"\
7289"/** include detected */ \\\n"\
7290"/** Path cursor */ \\\n"\
7291"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/ae2f/Ann/assert.h */ \\\n"\
7292"/** first fp: (nil) */ \\\n"\
7293"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/inc/assert.h */ \\\n"\
7294"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/VK-Core/inc/assert.h */ \\\n"\
7295"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incassert.h */ \\\n"\
7296"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/incassert.h */ \\\n"\
7297"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Core/inc/assert.h */ \\\n"\
7298"/* Opening: /home/ae2f/Dev/ae2f/ae2f/submod/ae2f/Ann/src/vk/classert.h */ \\\n"\
7299"/** Failed but ignoring it. */ \\\n"\
7300"\n"\
7301"#undef __ae2f_MACRO_GENERATED\n"\
7302"#define __ae2f_MACRO_GENERATED 1\n"\
7303"#endif /** for non-builds */\n"\
7304"\n"\
7305"#define __ae2f_AnnSlpDel\tfree\n"\
7306"#define __ae2f_AnnSlpDel_C\tfree\n"\
7307"\n"\
7308"#if ae2f_NEED_CLASS\n"\
7309"#define __ae2f_AnnSlpInitInpSz_imp( \\\n"\
7310"\t/** tparam */ \\\n"\
7311"\t\t \\\n"\
7312" \\\n"\
7313"\t/** param */ \\\n"\
7314"\t\t/* , size_t */ v_init, \\\n"\
7315"\t\t/* ae2f_float_t* const */ weight_opt, \\\n"\
7316"\t\t/* ae2f_float_t* const */ bias_opt, \\\n"\
7317"\t\t/* ae2f_float_t* const */ cache_opt, \\\n"\
7318"\t\t/* const size_t */ inc, \\\n"\
7319"\t\t/* const size_t */ outc \\\n"\
7320") \\\n"\
7321"{ \\\n"\
7322"\t(v_init) = \\\n"\
7323"\t\tsizeof(ae2f_AnnSlp) \\\n"\
7324"\t\t+ \t((weight_opt) ? 0 : (inc) * (outc)) * sizeof(ae2f_float_t) \\\n"\
7325"\t\t+\t((bias_opt) ? 0 : (outc)) * sizeof(ae2f_float_t) \\\n"\
7326"\t\t+\t((cache_opt) ? 0 : (outc) * sizeof(ae2f_float_t)) \\\n"\
7327"\t\t; \\\n"\
7328"}\n"\
7329"\n"\
7330"#define __ae2f_AnnSlpInit_imp( \\\n"\
7331"\t/** tparam */ \\\n"\
7332"\t\t \\\n"\
7333" \\\n"\
7334"\t/** param */ \\\n"\
7335"\t\t/* , size_t */ v_init, \\\n"\
7336"\t\t/* ae2f_AnnSlp_t */ _this, \\\n"\
7337"\t\t/* const size_t */ inc, \\\n"\
7338"\t\t/* const size_t */ outc, \\\n"\
7339"\t\t/* const size_t */ incmax_opt \\\n"\
7340") \\\n"\
7341"{ \\\n"\
7342"\t/* Calculate maximum input size */ \\\n"\
7343"\tunless(incmax_opt) { \\\n"\
7344"\t\t__ae2f_AnnSlpInitInpSz_imp( \\\n"\
7345"\t\t\t\tv_init, 0, 0, 0, inc, outc \\\n"\
7346"\t\t\t\t); \\\n"\
7347"\t\t(_this).m_inc\t=\t(inc); \\\n"\
7348"\t} else { \\\n"\
7349"\t\t(_this).m_inc\t=\t(incmax_opt); \\\n"\
7350"\t} \\\n"\
7351" \\\n"\
7352"\t(_this).m_outc\t=\t(outc); \\\n"\
7353"}\n"\
7354"\n"\
7355"\n"\
7356"#define __ae2f_AnnSlpInit( \\\n"\
7357"\t/** tparam */ \\\n"\
7358"\t\t \\\n"\
7359" \\\n"\
7360"\t/** param */ \\\n"\
7361"\t\t/* ,ae2f_AnnSlp_t* const */ _this, \\\n"\
7362"\t\t/* const size_t */ inc, \\\n"\
7363"\t\t/* const size_t */ outc, \\\n"\
7364"\t\t/* const size_t */ offset_opt, \\\n"\
7365"\t\t/* ae2f_err_t* const */ err_opt, \\\n"\
7366"\t\t/* size_t* const */ initsz_opt \\\n"\
7367") \\\n"\
7368"{ \\\n"\
7369"\tif((err_opt) && *(err_opt)) \\\n"\
7370"\t\t; \\\n"\
7371"\tunless(_this) \\\n"\
7372"\t\t(err_opt) && (*(err_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
7373"\telse { \\\n"\
7374"\t\tsize_t v_init; \\\n"\
7375"\t\t__ae2f_AnnSlpInit_imp( \\\n"\
7376"\t\t\t\tv_init \\\n"\
7377"\t\t\t\t, *(_this) \\\n"\
7378"\t\t\t\t, inc, outc \\\n"\
7379"\t\t\t\t, 0 \\\n"\
7380"\t\t\t\t); \\\n"\
7381"\t\t(initsz_opt) && (*(initsz_opt) = v_init + offset_opt); \\\n"\
7382"\t} \\\n"\
7383"}\n"\
7384"\n"\
7385"#else\n"\
7386"#undef\t__ae2f_AnnSlpInitInpSz_imp\n"\
7387"#define __ae2f_AnnSlpInitInpSz_imp(...) \\\n"\
7388"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
7389"\n"\
7390"#undef\t__ae2f_AnnSlpInit_imp\n"\
7391"#define __ae2f_AnnSlpInit_imp(...) \\\n"\
7392"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
7393"\n"\
7394"#undef\t__ae2f_AnnSlpInit\n"\
7395"#define __ae2f_AnnSlpInit(...) \\\n"\
7396"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
7397"#endif\n"\
7398"\n"\
7399"\n"\
7400"\n"\
7401"#define __ae2f_AnnSlpInit_C __ae2f_AnnSlpInit\n"\
7402"\n"\
7403"#if ae2f_NEED_CLASS\n"\
7404"#define __ae2f_AnnSlpMk_imp( \\\n"\
7405"\t/** tparam */ \\\n"\
7406"\t\t \\\n"\
7407" \\\n"\
7408"\t/** param */ \\\n"\
7409"\t\t/* , ae2f_AnnSlpMk_t */ v_mk, \\\n"\
7410"\t\t/* ae2f_float_t* const */ weight_opt, \\\n"\
7411"\t\t/* ae2f_float_t* const */ bias_opt, \\\n"\
7412"\t\t/* ae2f_float_t* const */ cache_opt, \\\n"\
7413"\t\t/* const size_t */ inc, \\\n"\
7414"\t\t/* const size_t */ outc, \\\n"\
7415"\t\t/* const size_t */ offset_opt, \\\n"\
7416"\t\t/* const size_t */ extra_opt, \\\n"\
7417"\t\t/* ae2f_optae2f_AnnAct_t* const */ act, \\\n"\
7418"\t\t/* ae2f_optae2f_AnnAct_t* const */ actderiv, \\\n"\
7419"\t\t/* ae2f_AnnLoss_t* const */ lossderiv, \\\n"\
7420"\t\t/* ae2f_float_t */ learningrate, \\\n"\
7421"\t\t/* ae2f_float_t */ learningrate_bias \\\n"\
7422") \\\n"\
7423"{ \\\n"\
7424"\t__ae2f_AnnSlpInitInpSz_imp(v_mk.m_stack, weight_opt, bias_opt, cache_opt, inc, outc); \\\n"\
7425"\tif((v_mk.m_ptr = ae2f_reinterpret_cast( \\\n"\
7426"\t\t\t\t\tae2f_AnnSlp* \\\n"\
7427"\t\t\t\t\t, calloc((v_mk).m_stack + (offset_opt) + (extra_opt), 1))) \\\n"\
7428"\t ) { \\\n"\
7429"\t\t(v_mk).m_alloccount = 0; \\\n"\
7430"\t\t(v_mk).m_fieldptr.b = (v_mk).m_ptr + 1; \\\n"\
7431"\t\t(v_mk).m_fieldptr.b = ae2f_reinterpret_cast( \\\n"\
7432"\t\t\t\tae2f_AnnSlp* \\\n"\
7433"\t\t\t\t, ae2f_reinterpret_cast(char*, (v_mk).m_fieldptr.b) + (offset_opt) \\\n"\
7434"\t\t\t\t); \\\n"\
7435" \\\n"\
7436"\t\tif(weight_opt) { \\\n"\
7437"\t\t\t(v_mk).m_ptr->m_weight = (weight_opt); \\\n"\
7438"\t\t} else { \\\n"\
7439"\t\t\t(v_mk).m_ptr->m_weight = ((v_mk).m_fieldptr.a); \\\n"\
7440"\t\t\t(v_mk).m_fieldptr.a += (inc) * (outc); \\\n"\
7441"\t\t} \\\n"\
7442" \\\n"\
7443"\t\tif(bias_opt) { \\\n"\
7444"\t\t\t(v_mk).m_ptr->m_bias = (bias_opt); \\\n"\
7445"\t\t} else { \\\n"\
7446"\t\t\t(v_mk).m_ptr->m_bias = (v_mk).m_fieldptr.a; \\\n"\
7447"\t\t\t(v_mk).m_fieldptr.a += (outc); \\\n"\
7448"\t\t} \\\n"\
7449" \\\n"\
7450"\t\tif(cache_opt) { \\\n"\
7451"\t\t\t(v_mk).m_ptr->m_cache = (cache_opt); \\\n"\
7452"\t\t} else { \\\n"\
7453"\t\t\t(v_mk).m_ptr->m_cache = (v_mk).m_fieldptr.a; \\\n"\
7454"\t\t} \\\n"\
7455" \\\n"\
7456"\t\t__ae2f_AnnSlpInit_imp( \\\n"\
7457"\t\t\t\t(v_mk).m_stack \\\n"\
7458"\t\t\t\t, v_mk.m_ptr->m_Slp[0] \\\n"\
7459"\t\t\t\t, inc \\\n"\
7460"\t\t\t\t, outc \\\n"\
7461"\t\t\t\t, inc \\\n"\
7462"\t\t\t\t); \\\n"\
7463" \\\n"\
7464"\t\t(v_mk).m_ptr[0].m_act = act; \\\n"\
7465"\t\t(v_mk).m_ptr[0].m_actderiv = actderiv; \\\n"\
7466"\t\t(v_mk).m_ptr[0].m_lossderiv = lossderiv; \\\n"\
7467"\t\t(v_mk).m_ptr[0].m_learningrate = learningrate; \\\n"\
7468"\t\t(v_mk).m_ptr[0].m_learningrate_bias = learningrate_bias; \\\n"\
7469"\t} \\\n"\
7470"}\n"\
7471"\n"\
7472"#define __ae2f_AnnSlpMk( \\\n"\
7473"\t/** tparam */ \\\n"\
7474"\t\t \\\n"\
7475" \\\n"\
7476"\t/** param */ \\\n"\
7477"\t\t/* ,ae2f_float_t* const */ weight_opt, \\\n"\
7478"\t\t/* ae2f_float_t* const */ bias_opt, \\\n"\
7479"\t\t/* ae2f_float_t* const */ cache_opt, \\\n"\
7480"\t\t/* const size_t */ inc, \\\n"\
7481"\t\t/* const size_t */ outc, \\\n"\
7482"\t\t/* const size_t */ offset_opt, \\\n"\
7483"\t\t/* const size_t */ extra_opt, \\\n"\
7484"\t\t/* ae2f_AnnSlp*** const */ slp, \\\n"\
7485"\t\t/* ae2f_optae2f_AnnAct_t* const */ act, \\\n"\
7486"\t\t/* ae2f_optae2f_AnnAct_t* const */ actderiv, \\\n"\
7487"\t\t/* ae2f_AnnLoss_t* const */ lossderiv, \\\n"\
7488"\t\t/* ae2f_float_t */ learningrate, \\\n"\
7489"\t\t/* ae2f_float_t */ learningrate_bias, \\\n"\
7490"\t\t/* ae2f_optae2f_err_t* const */ err_opt \\\n"\
7491") \\\n"\
7492"{ \\\n"\
7493"\tif((err_opt) && *(err_opt)) \\\n"\
7494"\t\t; \\\n"\
7495"\telse unless(slp) \\\n"\
7496"\t\t(err_opt) && (*(err_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
7497"\telse { \\\n"\
7498"\t\tae2f_AnnSlpMk_t v_mk; \\\n"\
7499"\t\t__ae2f_AnnSlpMk_imp( \\\n"\
7500"\t\t\t\tv_mk \\\n"\
7501"\t\t\t\t, weight_opt, bias_opt, cache_opt \\\n"\
7502"\t\t\t\t, inc \\\n"\
7503"\t\t\t\t, outc, offset_opt, extra_opt \\\n"\
7504" \\\n"\
7505"\t\t\t\t, act, actderiv, lossderiv \\\n"\
7506" \\\n"\
7507"\t\t\t\t, learningrate, learningrate_bias \\\n"\
7508"\t\t\t\t); \\\n"\
7509" \\\n"\
7510"\t\t(err_opt) && !(*(slp) = v_mk.m_ptr) && \\\n"\
7511"\t\t\t(*(err_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
7512"\t} \\\n"\
7513"}\n"\
7514"#else\n"\
7515"#undef\t__ae2f_AnnSlpMk_imp\n"\
7516"#define\t__ae2f_AnnSlpMk_imp(...) \\\n"\
7517"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
7518"\n"\
7519"#undef\t__ae2f_AnnSlpMk\n"\
7520"#define\t__ae2f_AnnSlpMk(...) \\\n"\
7521"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
7522"#endif\n"\
7523"\n"\
7524"#define __ae2f_AnnSlpMk_C __ae2f_AnnSlpMk\n"\
7525"\n"\
7526"/** @param v_predict has m_ret. That is the return value. */\n"\
7527"#define __ae2f_AnnSlpPredictOne_imp( \\\n"\
7528"\t/** tparam */ \\\n"\
7529"\t\t \\\n"\
7530" \\\n"\
7531"\t/** param */ \\\n"\
7532"\t\t/* , ae2f_AnnSlpPredictOne_t */ v_predict, \\\n"\
7533"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
7534"\t\t/* constae2f_float_t* const */ weight, \\\n"\
7535"\t\t/* const ae2f_float_t */ bias, \\\n"\
7536"\t\t/* ae2f_AnnAct_t */ act_opt, \\\n"\
7537"\t\t/* const size_t */ oidx, \\\n"\
7538"\t\t/* const size_t */ isz \\\n"\
7539") \\\n"\
7540"{ \\\n"\
7541"\t(v_predict).m_tmp = 0; \\\n"\
7542" \\\n"\
7543"\tfor((v_predict).m_j = (isz); (v_predict).m_j--; ) { \\\n"\
7544"\t\t(v_predict).m_tmp \\\n"\
7545"\t\t\t+= (prm_in)[(v_predict).m_j] \\\n"\
7546"\t\t\t* ((weight) + (oidx) * (isz))[(v_predict).m_j]; \\\n"\
7547"\t} \\\n"\
7548" \\\n"\
7549"\tact_opt((&(v_predict).m_ret), ((v_predict).m_tmp + (bias))); \\\n"\
7550"}\n"\
7551"\n"\
7552"#define __ae2f_AnnSlpPredict_imp( \\\n"\
7553"\t/** tparam */ \\\n"\
7554"\t\t \\\n"\
7555" \\\n"\
7556"\t/** param */ \\\n"\
7557"\t\t/* , ae2f_AnnSlpPredict_t */ v_predict, \\\n"\
7558"\t\t/* const ae2f_AnnSlp_t */ _this, \\\n"\
7559"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
7560"\t\t/* ae2f_float_t* const */ out, \\\n"\
7561"\t\t/* constae2f_float_t* const */ weight, \\\n"\
7562"\t\t/* constae2f_float_t* const */ bias, \\\n"\
7563"\t\t/* ae2f_AnnAct_t */ act_opt \\\n"\
7564") \\\n"\
7565"{ \\\n"\
7566"\tfor((v_predict).m_i = (_this).m_outc; (v_predict).m_i--; ) \\\n"\
7567"\t{ \\\n"\
7568"\t\t__ae2f_AnnSlpPredictOne_imp( \\\n"\
7569"\t\t\t\tv_predict \\\n"\
7570"\t\t\t\t, prm_in \\\n"\
7571"\t\t\t\t, weight \\\n"\
7572"\t\t\t\t, (bias)[(v_predict).m_i] \\\n"\
7573"\t\t\t\t, act_opt \\\n"\
7574"\t\t\t\t, (v_predict).m_i \\\n"\
7575"\t\t\t\t, (_this).m_inc \\\n"\
7576"\t\t\t\t); \\\n"\
7577" \\\n"\
7578"\t\t(out)[(v_predict).m_i] = (v_predict).m_ret; \\\n"\
7579"\t} \\\n"\
7580"}\n"\
7581"\n"\
7582"#define __ae2f_AnnSlpPredict( \\\n"\
7583"\t/** tparam */ \\\n"\
7584"\t\t \\\n"\
7585" \\\n"\
7586"\t/** param */ \\\n"\
7587"\t\t/* ,ae2f_err_t* const */ err_opt, \\\n"\
7588"\t\t/* constae2f_AnnSlp_t* const */ _this, \\\n"\
7589"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
7590"\t\t/* ae2f_float_t* const */ out, \\\n"\
7591"\t\t/* constae2f_float_t* const */ weight, \\\n"\
7592"\t\t/* constae2f_float_t* const */ bias, \\\n"\
7593"\t\t/* ae2f_AnnAct_t */ act_opt \\\n"\
7594") \\\n"\
7595"{ \\\n"\
7596"\tif((err_opt) && *(err_opt)) \\\n"\
7597"\t\t; \\\n"\
7598"\telse unless((_this) && (prm_in) && (out) && (weight) && (bias)) \\\n"\
7599"\t\t(err_opt) && ((err_opt) && (*(err_opt) |= ae2f_errGlob_PTR_IS_NULL)); \\\n"\
7600"\telse { \\\n"\
7601"\t\tae2f_AnnSlpPredict_t v_predict; \\\n"\
7602" \\\n"\
7603"\t\tif(act_opt) { \\\n"\
7604"\t\t\t__ae2f_AnnSlpPredict_imp( \\\n"\
7605"\t\t\t\t\t(v_predict) \\\n"\
7606"\t\t\t\t\t, *(_this), (prm_in), out \\\n"\
7607"\t\t\t\t\t, weight, bias, act_opt \\\n"\
7608"\t\t\t\t\t); \\\n"\
7609"\t\t} else { \\\n"\
7610"\t\t\t__ae2f_AnnSlpPredict_imp( \\\n"\
7611"\t\t\t\t\t(v_predict) \\\n"\
7612"\t\t\t\t\t, *(_this), prm_in, out \\\n"\
7613"\t\t\t\t\t, weight, bias, \\\n"\
7614"\t\t\t\t\t); \\\n"\
7615"\t\t} \\\n"\
7616"\t} \\\n"\
7617"}\n"\
7618"\n"\
7619"#if ae2f_NEED_CLASS\n"\
7620"#define __ae2f_AnnSlpPredict_C( \\\n"\
7621"\t/** tparam */ \\\n"\
7622"\t\t \\\n"\
7623" \\\n"\
7624"\t/** param */ \\\n"\
7625"\t\t/* ,ae2f_err_t* const */ err_opt, \\\n"\
7626"\t\t/* constae2f_AnnSlp* const */ _this, \\\n"\
7627"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
7628"\t\t/* ae2f_float_t* const */ out \\\n"\
7629") \\\n"\
7630"{ \\\n"\
7631"\tunless(_this) \\\n"\
7632"\t\t(err_opt) && (*(err_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
7633"\telse { \\\n"\
7634"\t\t__ae2f_AnnSlpPredict( \\\n"\
7635"\t\t\t\terr_opt, (_this)->m_Slp \\\n"\
7636"\t\t\t\t, prm_in, out \\\n"\
7637"\t\t\t\t, (_this)->m_weight \\\n"\
7638"\t\t\t\t, (_this)->m_bias \\\n"\
7639"\t\t\t\t, (_this)->m_act \\\n"\
7640"\t\t\t\t); \\\n"\
7641"\t} \\\n"\
7642"}\n"\
7643"#else\n"\
7644"#undef\t__ae2f_AnnSlpPredict_C\n"\
7645"#define\t__ae2f_AnnSlpPredict_C(...) \\\n"\
7646"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
7647"#endif\n"\
7648"\n"\
7649"/** @brief Weights */\n"\
7650"#define __ae2f_AnnSlpFollowOneW_imp( \\\n"\
7651"\t/** tparam */ \\\n"\
7652"\t\t \\\n"\
7653" \\\n"\
7654"\t/** param */ \\\n"\
7655"\t\t/* , const ae2f_float_t */ inp, \\\n"\
7656"\t\t/* const ae2f_float_t */ delta, \\\n"\
7657"\t\t/* ae2f_float_t* const */ weight, \\\n"\
7658"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
7659"\t\t/* const size_t */ inp_sz, \\\n"\
7660"\t\t/* const size_t */ inp_idx, \\\n"\
7661"\t\t/* const size_t */ out_sz, \\\n"\
7662"\t\t/* const size_t */ out_idx \\\n"\
7663") \\\n"\
7664"{ \\\n"\
7665"\t((weight) + (inp_sz) * (out_idx))[(inp_idx)] \\\n"\
7666"\t\t-= (delta) * (inp) * (learningrate); \\\n"\
7667"}\n"\
7668"\n"\
7669"#define __ae2f_AnnSlpFollowOneB_imp( \\\n"\
7670"\t/** tparam */ \\\n"\
7671"\t\t \\\n"\
7672" \\\n"\
7673"\t/** param */ \\\n"\
7674"\t\t/* , ae2f_float_t */ r_bias, \\\n"\
7675"\t\t/* const ae2f_float_t */ delta, \\\n"\
7676"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
7677") { (r_bias) -= (delta) * (learningrate_bias); }\n"\
7678"\n"\
7679"#define __ae2f_AnnSlpFollowOne_imp( \\\n"\
7680"\t/** tparam */ \\\n"\
7681"\t\t \\\n"\
7682" \\\n"\
7683"\t/** param */ \\\n"\
7684"\t\t/* , ae2f_AnnSlpFollowOne_t */ v_follow, \\\n"\
7685"\t\t/* constae2f_float_t* */ prm_in, \\\n"\
7686"\t\t/* const ae2f_float_t */ delta, \\\n"\
7687"\t\t/* ae2f_float_t* const */ weight, \\\n"\
7688"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
7689"\t\t/* const ae2f_float_t */ learningrate_bias, \\\n"\
7690"\t\t/* const size_t */ inp_sz, \\\n"\
7691"\t\t/* const size_t */ out_idx, \\\n"\
7692"\t\t/* ae2f_float_t */ v_bias \\\n"\
7693") \\\n"\
7694"{ \\\n"\
7695"\tfor((v_follow).m_j = 0; (v_follow).m_j < (inp_sz); ++(v_follow).m_j) { \\\n"\
7696"\t\t((weight) + (inp_sz) * (out_idx))[(v_follow).m_j] \\\n"\
7697"\t\t\t-= (delta) * (prm_in)[(v_follow).m_j] * (learningrate); \\\n"\
7698"\t} \\\n"\
7699" \\\n"\
7700"\t(v_bias) -= (delta) * (learningrate_bias); \\\n"\
7701"}\n"\
7702"\n"\
7703"\n"\
7704"#define __ae2f_AnnSlpFollow_imp( \\\n"\
7705"\t/** tparam */ \\\n"\
7706"\t\t \\\n"\
7707" \\\n"\
7708"\t/** param */ \\\n"\
7709"\t\t/* , ae2f_AnnSlpFollow_t */ v_follow, \\\n"\
7710"\t\t/* const ae2f_AnnSlp_t */ _this, \\\n"\
7711"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
7712"\t\t/* constae2f_float_t* const */ delta, \\\n"\
7713"\t\t/* ae2f_float_t* const */ weight, \\\n"\
7714"\t\t/* ae2f_float_t* const */ bias, \\\n"\
7715"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
7716"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
7717") \\\n"\
7718"{ \\\n"\
7719"\tfor(v_follow.m_i = (_this).m_outc; (v_follow).m_i--; ) { \\\n"\
7720"\t\t__ae2f_AnnSlpFollowOne_imp( \\\n"\
7721"\t\t\t\tv_follow \\\n"\
7722"\t\t\t\t, prm_in \\\n"\
7723"\t\t\t\t, (delta)[v_follow.m_i] \\\n"\
7724"\t\t\t\t, ((weight)) \\\n"\
7725"\t\t\t\t, learningrate, learningrate_bias \\\n"\
7726"\t\t\t\t, (_this).m_inc \\\n"\
7727"\t\t\t\t, (v_follow).m_i \\\n"\
7728"\t\t\t\t, (bias)[v_follow.m_i] \\\n"\
7729"\t\t\t\t); \\\n"\
7730"\t} \\\n"\
7731"}\n"\
7732"\n"\
7733"#define __ae2f_AnnSlpFollow( \\\n"\
7734"\t/** tparam */ \\\n"\
7735"\t\t \\\n"\
7736" \\\n"\
7737"\t/** param */ \\\n"\
7738"\t\t/* ,ae2f_err_t* const */ reterr_opt, \\\n"\
7739"\t\t/* constae2f_AnnSlp_t* const */ _this, \\\n"\
7740"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
7741"\t\t/* constae2f_float_t* const */ delta, \\\n"\
7742"\t\t/* ae2f_float_t* const */ weight, \\\n"\
7743"\t\t/* ae2f_float_t* const */ bias, \\\n"\
7744"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
7745"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
7746") \\\n"\
7747"{ \\\n"\
7748"\tif((reterr_opt) && *(reterr_opt)) \\\n"\
7749"\t\t; \\\n"\
7750"\telse if(learningrate == 0 && learningrate_bias == 0) \\\n"\
7751"\t\t; \\\n"\
7752"\telse unless((_this) && (prm_in) && (delta) && (weight) && (bias)) \\\n"\
7753"\t\t(reterr_opt) && (*(reterr_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
7754"\telse { \\\n"\
7755"\t\tae2f_AnnSlpFollow_t v_follow; \\\n"\
7756"\t\t__ae2f_AnnSlpFollow_imp( \\\n"\
7757"\t\t\t\tv_follow \\\n"\
7758"\t\t\t\t, *(_this) \\\n"\
7759"\t\t\t\t, prm_in \\\n"\
7760"\t\t\t\t, delta \\\n"\
7761"\t\t\t\t, weight, bias \\\n"\
7762"\t\t\t\t, learningrate \\\n"\
7763"\t\t\t\t, learningrate_bias \\\n"\
7764"\t\t\t\t); \\\n"\
7765"\t} \\\n"\
7766"}\n"\
7767"\n"\
7768"#if ae2f_NEED_CLASS\n"\
7769"#define __ae2f_AnnSlpFollow_C( \\\n"\
7770"\t/** tparam */ \\\n"\
7771"\t\t \\\n"\
7772" \\\n"\
7773"\t/** param */ \\\n"\
7774"\t\t/* ,ae2f_err_t* const */ reterr_opt, \\\n"\
7775"\t\t/* constae2f_AnnSlp* const */ _this, \\\n"\
7776"\t\t/* constae2f_float_t* const */ prm_in, \\\n"\
7777"\t\t/* constae2f_float_t* const */ delta \\\n"\
7778") { \\\n"\
7779"\tunless((_this)) \\\n"\
7780"\t\t(reterr_opt) && (*(reterr_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
7781"\telse { \\\n"\
7782"\t\t__ae2f_AnnSlpFollow( \\\n"\
7783"\t\t\t\treterr_opt, _this->m_Slp \\\n"\
7784"\t\t\t\t, prm_in, delta \\\n"\
7785"\t\t\t\t, _this->m_weight \\\n"\
7786"\t\t\t\t, (_this)->m_bias \\\n"\
7787"\t\t\t\t, (_this)->m_learningrate, (_this)->m_learningrate_bias \\\n"\
7788"\t\t\t\t); \\\n"\
7789"\t} \\\n"\
7790"}\n"\
7791"#else\n"\
7792"#undef\t__ae2f_AnnSlpFollow_C\n"\
7793"#define __ae2f_AnnSlpFollow_C(...) \\\n"\
7794"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
7795"#endif\n"\
7796"\n"\
7797"#define __ae2f_AnnSlpFetchDeltaOne_imp( \\\n"\
7798"\t/** tparam */ \\\n"\
7799"\t\t \\\n"\
7800" \\\n"\
7801"\t/** param */ \\\n"\
7802"\t\t/* , ae2f_float_t */ v_fetchdelta_0, \\\n"\
7803"\t\t/* ae2f_float_t */ v_fetchdelta_1, \\\n"\
7804"\t\t/* constae2f_float_t* const */ out, \\\n"\
7805"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
7806"\t\t/* ae2f_AnnAct_t */ actderiv_opt, \\\n"\
7807"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
7808"\t\t/* ae2f_float_t */ retdelta, \\\n"\
7809"\t\t/* const size_t */ oidx, \\\n"\
7810"\t\t/* const size_t */ osz \\\n"\
7811") \\\n"\
7812"{ \\\n"\
7813"\tactderiv_opt(&(v_fetchdelta_0), (out)[oidx]); \\\n"\
7814"\tlossderiv((&(v_fetchdelta_1)), (out), (out_desired), (oidx), (osz)); \\\n"\
7815" \\\n"\
7816"\t(retdelta) = \\\n"\
7817"\t\t(v_fetchdelta_0) * \\\n"\
7818"\t\t(v_fetchdelta_1) \\\n"\
7819"\t\t; \\\n"\
7820"}\n"\
7821"\n"\
7822"#define __ae2f_AnnSlpFetchDelta_imp( \\\n"\
7823"\t/** tparam */ \\\n"\
7824"\t\t \\\n"\
7825" \\\n"\
7826"\t/** param */ \\\n"\
7827"\t\t/* , ae2f_AnnSlpFetchDelta_t */ v_delta, \\\n"\
7828"\t\t/* const ae2f_AnnSlp_t */ slp, \\\n"\
7829"\t\t/* constae2f_float_t* const */ out, \\\n"\
7830"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
7831"\t\t/* ae2f_AnnAct_t */ actderiv_opt, \\\n"\
7832"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
7833"\t\t/* ae2f_float_t* const */ retdelta \\\n"\
7834") \\\n"\
7835"{ \\\n"\
7836"\tfor((v_delta).m_i = (slp).m_outc; (v_delta).m_i--; ) \\\n"\
7837"\t\t__ae2f_AnnSlpFetchDeltaOne_imp( \\\n"\
7838"\t\t\t\t(v_delta).m_tmp, (v_delta).m_tmp1 \\\n"\
7839"\t\t\t\t, out, out_desired \\\n"\
7840"\t\t\t\t, actderiv_opt, lossderiv \\\n"\
7841"\t\t\t\t, (retdelta)[v_delta.m_i] \\\n"\
7842"\t\t\t\t, (v_delta).m_i \\\n"\
7843"\t\t\t\t, (slp).m_outc \\\n"\
7844"\t\t\t\t); \\\n"\
7845"}\n"\
7846"\n"\
7847"#define __ae2f_AnnSlpFetchDelta( \\\n"\
7848"\t/** tparam */ \\\n"\
7849"\t\t \\\n"\
7850" \\\n"\
7851"\t/** param */ \\\n"\
7852"\t\t/* , ae2f_optae2f_err_t* const */ err, \\\n"\
7853"\t\t/* constae2f_AnnSlp_t* const */ slp, \\\n"\
7854"\t\t/* constae2f_float_t* const */ out, \\\n"\
7855"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
7856"\t\t/* ae2f_AnnAct_t */ actderiv_opt, \\\n"\
7857"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
7858"\t\t/* ae2f_float_t* const */ retdelta \\\n"\
7859") \\\n"\
7860"{ \\\n"\
7861"\tif((err) && *(err)) \\\n"\
7862"\t\t; \\\n"\
7863"\telse unless((slp) && (out) && (out_desired) && (retdelta)) \\\n"\
7864"\t\t(err) && (*(err) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
7865"\telse unless(lossderiv) \\\n"\
7866"\t\t(err) && (*(err) |= ae2f_errGlob_IMP_NOT_FOUND); \\\n"\
7867" \\\n"\
7868"\telse if(actderiv_opt) { \\\n"\
7869"\t\tae2f_AnnSlpFetchDelta_t v_delta; \\\n"\
7870"\t\t__ae2f_AnnSlpFetchDelta_imp( \\\n"\
7871"\t\t\t\tv_delta, (*(slp)) \\\n"\
7872"\t\t\t\t, out, out_desired \\\n"\
7873"\t\t\t\t, actderiv_opt \\\n"\
7874"\t\t\t\t, lossderiv \\\n"\
7875"\t\t\t\t, retdelta \\\n"\
7876"\t\t\t\t); \\\n"\
7877"\t} else { \\\n"\
7878"\t\tae2f_AnnSlpFetchDelta_t v_delta; \\\n"\
7879"\t\t__ae2f_AnnSlpFetchDelta_imp( \\\n"\
7880"\t\t\t\tv_delta, (*(slp)) \\\n"\
7881"\t\t\t\t, out, out_desired \\\n"\
7882"\t\t\t\t, , lossderiv \\\n"\
7883"\t\t\t\t, retdelta \\\n"\
7884"\t\t\t\t); \\\n"\
7885"\t} \\\n"\
7886"}\n"\
7887"\n"\
7888"#if\tae2f_NEED_CLASS\n"\
7889"#define __ae2f_AnnSlpFetchDelta_C( \\\n"\
7890"\t/** tparam */ \\\n"\
7891"\t\t \\\n"\
7892" \\\n"\
7893"\t/** param */ \\\n"\
7894"\t\t/* , ae2f_optae2f_err_t* const */ err, \\\n"\
7895"\t\t/* constae2f_AnnSlp* const */ slp, \\\n"\
7896"\t\t/* constae2f_float_t* const */ out, \\\n"\
7897"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
7898"\t\t/* ae2f_float_t* const */ retdelta \\\n"\
7899") \\\n"\
7900"{ \\\n"\
7901"\tif((err) && *(err)) \\\n"\
7902"\t\t; \\\n"\
7903"\telse unless((slp) && (out) && (out_desired) && (retdelta)) \\\n"\
7904"\t\t(err) && (*(err) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
7905"\telse unless((slp)->m_lossderiv) \\\n"\
7906"\t\t(err) && (*(err) |= ae2f_errGlob_IMP_NOT_FOUND); \\\n"\
7907"\telse { \\\n"\
7908"\t\tif((slp)->m_actderiv) { \\\n"\
7909"\t\t\tae2f_AnnSlpFetchDelta_t v_delta; \\\n"\
7910"\t\t\t__ae2f_AnnSlpFetchDelta_imp( \\\n"\
7911"\t\t\t\t\tv_delta, (slp)->m_Slp[0] \\\n"\
7912"\t\t\t\t\t, out, out_desired \\\n"\
7913"\t\t\t\t\t, (slp)->m_actderiv, (slp)->m_lossderiv \\\n"\
7914"\t\t\t\t\t, retdelta \\\n"\
7915"\t\t\t\t\t); \\\n"\
7916"\t\t} else { \\\n"\
7917"\t\t\tae2f_AnnSlpFetchDelta_t v_delta; \\\n"\
7918"\t\t\t__ae2f_AnnSlpFetchDelta_imp( \\\n"\
7919"\t\t\t\t\tv_delta, (slp)->m_Slp[0] \\\n"\
7920"\t\t\t\t\t, out, out_desired \\\n"\
7921"\t\t\t\t\t, , (slp)->m_lossderiv \\\n"\
7922"\t\t\t\t\t, retdelta \\\n"\
7923"\t\t\t\t\t); \\\n"\
7924"\t\t} \\\n"\
7925"\t} \\\n"\
7926"}\n"\
7927"#else\n"\
7928"#undef\t__ae2f_AnnSlpFetchDelta_C\n"\
7929"#define __ae2f_AnnSlpFetchDelta_C(...) \\\n"\
7930"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
7931"#endif\n"\
7932"\n"\
7933"#define __ae2f_AnnSlpFitOne_imp( \\\n"\
7934"\t/** tparam */ \\\n"\
7935"\t\t \\\n"\
7936" \\\n"\
7937"\t/** param */ \\\n"\
7938"\t\t/* , ae2f_AnnSlpFitOne_t */ v_fit, \\\n"\
7939"\t\t/* constae2f_float_t* const */ inp, \\\n"\
7940"\t\t/* constae2f_float_t* const */ out, \\\n"\
7941"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
7942"\t\t/* ae2f_float_t* const */ weight, \\\n"\
7943"\t\t/* ae2f_float_t */ r_bias, \\\n"\
7944"\t\t/* ae2f_float_t */ r_cachedelta, \\\n"\
7945"\t\t/* ae2f_AnnAct_t */ actderiv_opt, \\\n"\
7946"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
7947"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
7948"\t\t/* const ae2f_float_t */ learningrate_bias, \\\n"\
7949"\t\t/* const size_t */ iidx, \\\n"\
7950"\t\t/* const size_t */ oidx, \\\n"\
7951"\t\t/* const size_t */ isz, \\\n"\
7952"\t\t/* const size_t */ osz \\\n"\
7953") \\\n"\
7954"{ \\\n"\
7955"\t__ae2f_AnnSlpFetchDeltaOne_imp( \\\n"\
7956"\t\t\t(v_fit).m_tmp, (v_fit).m_tmp1 \\\n"\
7957"\t\t\t, out, out_desired \\\n"\
7958"\t\t\t, actderiv_opt, lossderiv \\\n"\
7959"\t\t\t, r_cachedelta \\\n"\
7960"\t\t\t, oidx, osz \\\n"\
7961"\t\t\t); \\\n"\
7962" \\\n"\
7963" \\\n"\
7964"\t__ae2f_AnnSlpFollowOne_imp( \\\n"\
7965"\t\t\tv_fit, inp, r_cachedelta, weight \\\n"\
7966"\t\t\t, learningrate, learningrate_bias \\\n"\
7967"\t\t\t, isz, oidx, r_bias \\\n"\
7968"\t\t\t); \\\n"\
7969"}\n"\
7970"\n"\
7971"#define __ae2f_AnnSlpFit_imp( \\\n"\
7972"\t/** tparam */ \\\n"\
7973"\t\t \\\n"\
7974" \\\n"\
7975"\t/** param */ \\\n"\
7976"\t\t/* , ae2f_AnnSlpFit_t */ v_fit, \\\n"\
7977"\t\t/* const ae2f_AnnSlp_t */ slp, \\\n"\
7978"\t\t/* constae2f_float_t* const */ inp, \\\n"\
7979"\t\t/* constae2f_float_t* const */ out, \\\n"\
7980"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
7981"\t\t/* ae2f_float_t* const */ weights, \\\n"\
7982"\t\t/* ae2f_float_t* const */ bias, \\\n"\
7983"\t\t/* ae2f_float_t* const */ cachedelta, \\\n"\
7984"\t\t/* ae2f_AnnAct_t */ actderiv_opt, \\\n"\
7985"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
7986"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
7987"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
7988") \\\n"\
7989"{ \\\n"\
7990"\t__ae2f_AnnSlpFetchDelta_imp( \\\n"\
7991"\t\t\tv_fit, slp \\\n"\
7992"\t\t\t, out, out_desired \\\n"\
7993"\t\t\t, actderiv_opt, lossderiv \\\n"\
7994"\t\t\t, cachedelta \\\n"\
7995"\t\t\t); \\\n"\
7996" \\\n"\
7997"\t__ae2f_AnnSlpFollow_imp( \\\n"\
7998"\t\t\tv_fit, slp, inp \\\n"\
7999"\t\t\t, cachedelta, weights, bias \\\n"\
8000"\t\t\t, learningrate, learningrate_bias \\\n"\
8001"\t\t\t); \\\n"\
8002"}\n"\
8003"\n"\
8004"#define __ae2f_AnnSlpFit( \\\n"\
8005"\t/** tparam */ \\\n"\
8006"\t\t \\\n"\
8007" \\\n"\
8008"\t/** param */ \\\n"\
8009"\t\t/* ,ae2f_err_t* const ae2f_opt */ reterr_opt, \\\n"\
8010"\t\t/* constae2f_AnnSlp_t* */ _this, \\\n"\
8011"\t\t/* constae2f_float_t* const */ prm_inp, \\\n"\
8012"\t\t/* constae2f_float_t* const */ prm_out, \\\n"\
8013"\t\t/* constae2f_float_t* const */ prm_out_desired, \\\n"\
8014"\t\t/* ae2f_float_t* const */ weights, \\\n"\
8015"\t\t/* ae2f_float_t* const */ bias, \\\n"\
8016"\t\t/* ae2f_float_t* const */ cachedelta, \\\n"\
8017"\t\t/* ae2f_AnnAct_t ae2f_opt */ actderiv_opt, \\\n"\
8018"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
8019"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
8020"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
8021") \\\n"\
8022"{ \\\n"\
8023"\tif((reterr_opt) && *(reterr_opt)) \\\n"\
8024"\t\t; \\\n"\
8025"\telse unless((_this) && (prm_inp) && (prm_out_desired) && (weights) && (bias) && (cachedelta)) \\\n"\
8026"\t\t(reterr_opt) && (*(reterr_opt) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
8027"\telse unless(lossderiv) \\\n"\
8028"\t\t(reterr_opt) && (*(reterr_opt) |= ae2f_errGlob_IMP_NOT_FOUND); \\\n"\
8029"\telse if ((learningrate) == 0 && (learningrate_bias) == 0) \\\n"\
8030"\t\t; \\\n"\
8031"\telse { \\\n"\
8032"\t\tae2f_AnnSlpFit_t v_fit; \\\n"\
8033"\t\tif(actderiv_opt) { \\\n"\
8034"\t\t\t__ae2f_AnnSlpFit_imp( \\\n"\
8035"\t\t\t\t\tv_fit \\\n"\
8036"\t\t\t\t\t, (*(_this)) \\\n"\
8037"\t\t\t\t\t, prm_inp \\\n"\
8038"\t\t\t\t\t, prm_out \\\n"\
8039"\t\t\t\t\t, prm_out_desired \\\n"\
8040"\t\t\t\t\t, weights \\\n"\
8041"\t\t\t\t\t, bias \\\n"\
8042"\t\t\t\t\t, cachedelta \\\n"\
8043"\t\t\t\t\t, actderiv_opt \\\n"\
8044"\t\t\t\t\t, lossderiv \\\n"\
8045"\t\t\t\t\t, learningrate \\\n"\
8046"\t\t\t\t\t, learningrate_bias \\\n"\
8047"\t\t\t\t\t); \\\n"\
8048"\t\t} else { \\\n"\
8049"\t\t\t__ae2f_AnnSlpFit_imp( \\\n"\
8050"\t\t\t\t\tv_fit \\\n"\
8051"\t\t\t\t\t, (*(_this)) \\\n"\
8052"\t\t\t\t\t, prm_inp \\\n"\
8053"\t\t\t\t\t, prm_out \\\n"\
8054"\t\t\t\t\t, prm_out_desired \\\n"\
8055"\t\t\t\t\t, weights \\\n"\
8056"\t\t\t\t\t, bias \\\n"\
8057"\t\t\t\t\t, cachedelta \\\n"\
8058"\t\t\t\t\t, \\\n"\
8059"\t\t\t\t\t, lossderiv \\\n"\
8060"\t\t\t\t\t, learningrate \\\n"\
8061"\t\t\t\t\t, learningrate_bias \\\n"\
8062"\t\t\t\t\t); \\\n"\
8063"\t\t} \\\n"\
8064"\t} \\\n"\
8065"}\n"\
8066"\n"\
8067"#if\tae2f_NEED_CLASS\n"\
8068"#define __ae2f_AnnSlpFit_C( \\\n"\
8069"\t/** tparam */ \\\n"\
8070"\t\t \\\n"\
8071" \\\n"\
8072"\t/** param */ \\\n"\
8073"\t\t/* ,ae2f_err_t* const */ reterr_opt, \\\n"\
8074"\t\t/* constae2f_AnnSlp* const */ _this, \\\n"\
8075"\t\t/* constae2f_float_t* const */ prm_inp, \\\n"\
8076"\t\t/* constae2f_float_t* const */ prm_out, \\\n"\
8077"\t\t/* constae2f_float_t* const */ prm_out_desired \\\n"\
8078") { \\\n"\
8079"\tunless(_this) { \\\n"\
8080"\t\t((reterr_opt) && (*(reterr_opt)|= ae2f_errGlob_PTR_IS_NULL)); \\\n"\
8081"\t} \\\n"\
8082"\telse { \\\n"\
8083"\t\t__ae2f_AnnSlpFit( \\\n"\
8084"\t\t\t\treterr_opt \\\n"\
8085"\t\t\t\t, (_this)->m_Slp \\\n"\
8086"\t\t\t\t, prm_inp \\\n"\
8087"\t\t\t\t, prm_out \\\n"\
8088"\t\t\t\t, prm_out_desired \\\n"\
8089"\t\t\t\t, (_this)->m_weight \\\n"\
8090"\t\t\t\t, (_this)->m_bias \\\n"\
8091"\t\t\t\t, (_this)->m_cache \\\n"\
8092"\t\t\t\t, (_this)->m_actderiv \\\n"\
8093"\t\t\t\t, (_this)->m_lossderiv \\\n"\
8094"\t\t\t\t, (_this)->m_learningrate \\\n"\
8095"\t\t\t\t, (_this)->m_learningrate_bias \\\n"\
8096"\t\t\t\t); \\\n"\
8097"\t} \\\n"\
8098"}\n"\
8099"#else\n"\
8100"#undef\t__ae2f_AnnSlpFit_C\n"\
8101"#define\t__ae2f_AnnSlpFit_C(...) \\\n"\
8102"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
8103"#endif\n"\
8104"\n"\
8105"#define __ae2f_AnnSlpTrainOne_imp( \\\n"\
8106"\t/** tparam */ \\\n"\
8107"\t\t \\\n"\
8108" \\\n"\
8109"\t/** param */ \\\n"\
8110"\t\t/* , ae2f_AnnSlpTrainOne_t */ v_train, \\\n"\
8111"\t\t/* ae2f_opt ae2f_AnnAct_t */ act, \\\n"\
8112"\t\t/* ae2f_opt ae2f_AnnAct_t */ actderiv, \\\n"\
8113"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
8114"\t\t/* constae2f_float_t* const */ inp, \\\n"\
8115"\t\t/* ae2f_float_t* const */ out_cache, \\\n"\
8116"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
8117"\t\t/* ae2f_float_t* const */ weight, \\\n"\
8118"\t\t/* ae2f_float_t */ v_bias, \\\n"\
8119"\t\t/* ae2f_float_t */ r_cachedelta, \\\n"\
8120"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
8121"\t\t/* const ae2f_float_t */ learningrate_bias, \\\n"\
8122"\t\t/* const size_t */ oidx, \\\n"\
8123"\t\t/* const size_t */ osz, \\\n"\
8124"\t\t/* const size_t */ isz \\\n"\
8125") \\\n"\
8126"{ \\\n"\
8127"\t__ae2f_AnnSlpPredictOne_imp( \\\n"\
8128"\t\t\tv_train \\\n"\
8129"\t\t\t, inp \\\n"\
8130"\t\t\t, weight \\\n"\
8131"\t\t\t, v_bias \\\n"\
8132"\t\t\t, act \\\n"\
8133"\t\t\t, oidx \\\n"\
8134"\t\t\t, isz \\\n"\
8135"\t\t\t); \\\n"\
8136" \\\n"\
8137"\t(out_cache)[oidx] = (v_train).m_ret; \\\n"\
8138" \\\n"\
8139"\t__ae2f_AnnSlpFitOne_imp( \\\n"\
8140"\t\t\tv_train \\\n"\
8141"\t\t\t, inp \\\n"\
8142"\t\t\t, out_cache, out_desired \\\n"\
8143"\t\t\t, weight \\\n"\
8144"\t\t\t, v_bias \\\n"\
8145"\t\t\t, r_cachedelta \\\n"\
8146"\t\t\t, actderiv, lossderiv \\\n"\
8147"\t\t\t, learningrate, learningrate_bias \\\n"\
8148"\t\t\t, iidx, oidx, isz, osz \\\n"\
8149"\t\t\t); \\\n"\
8150"}\n"\
8151"\n"\
8152"#define __ae2f_AnnSlpTrain_imp( \\\n"\
8153"\t/** tparam */ \\\n"\
8154"\t\t \\\n"\
8155" \\\n"\
8156"\t/** param */ \\\n"\
8157"\t\t/* , ae2f_AnnSlpTrain_t */ v_train, \\\n"\
8158"\t\t/* const ae2f_AnnSlp_t */ slp, \\\n"\
8159"\t\t/* constae2f_float_t* const */ inp, \\\n"\
8160"\t\t/* ae2f_float_t* const */ out_cache, \\\n"\
8161"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
8162"\t\t/* ae2f_float_t* const */ weights, \\\n"\
8163"\t\t/* ae2f_float_t* const */ bias, \\\n"\
8164"\t\t/* ae2f_float_t* const */ cachedelta, \\\n"\
8165"\t\t/* ae2f_opt ae2f_AnnAct_t */ act, \\\n"\
8166"\t\t/* ae2f_opt ae2f_AnnAct_t */ actderiv, \\\n"\
8167"\t\t/* ae2f_AnnLoss_t */ lossderiv, \\\n"\
8168"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
8169"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
8170") \\\n"\
8171"{ \\\n"\
8172"\t__ae2f_AnnSlpPredict_imp(v_train, slp, inp, out_cache, weights, bias, act); \\\n"\
8173"\t__ae2f_AnnSlpFit_imp( \\\n"\
8174"\t\t\tv_train, slp, inp, out_cache, out_desired \\\n"\
8175"\t\t\t, weights, bias, cachedelta \\\n"\
8176"\t\t\t, actderiv, lossderiv \\\n"\
8177"\t\t\t, learningrate, learningrate_bias \\\n"\
8178"\t\t\t); \\\n"\
8179"}\n"\
8180"\n"\
8181"#if ae2f_NEED_CLASS\n"\
8182"#define __ae2f_AnnSlpTrain_C( \\\n"\
8183"\t/** tparam */ \\\n"\
8184"\t\t \\\n"\
8185" \\\n"\
8186"\t/** param */ \\\n"\
8187"\t\t/* ,ae2f_err_t* const */ err, \\\n"\
8188"\t\t/* ae2f_AnnSlp* */ slp, \\\n"\
8189"\t\t/* constae2f_float_t* */ inp, \\\n"\
8190"\t\t/* constae2f_float_t* */ out_desired \\\n"\
8191") \\\n"\
8192"{ \\\n"\
8193"\tunless(slp) \\\n"\
8194"\t\t(err) && (*(err) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
8195"\telse { \\\n"\
8196"\t\t__ae2f_AnnSlpTrain( \\\n"\
8197"\t\t\t\terr, (slp)->m_Slp, inp \\\n"\
8198"\t\t\t\t, (slp)->m_cache \\\n"\
8199"\t\t\t\t, out_desired \\\n"\
8200"\t\t\t\t, (slp)->m_weight \\\n"\
8201"\t\t\t\t, (slp)->m_bias \\\n"\
8202"\t\t\t\t, (slp)->m_cache \\\n"\
8203"\t\t\t\t, (slp)->m_act \\\n"\
8204"\t\t\t\t, (slp)->m_actderiv \\\n"\
8205"\t\t\t\t, (slp)->m_lossderiv \\\n"\
8206"\t\t\t\t, (slp)->m_learningrate \\\n"\
8207"\t\t\t\t, (slp)->m_learningrate_bias \\\n"\
8208"\t\t\t\t); \\\n"\
8209"\t} \\\n"\
8210"}\n"\
8211"#else\n"\
8212"#undef\t__ae2f_AnnSlpTrain_C\n"\
8213"#define __ae2f_AnnSlpTrain_C \\\n"\
8214"\ttypedef char NO_ae2f_NEED_CLASS[-1]\n"\
8215"\n"\
8216"#endif\n"\
8217"\n"\
8218"#define __ae2f_AnnSlpTrain( \\\n"\
8219"\t/** tparam */ \\\n"\
8220"\t\t \\\n"\
8221" \\\n"\
8222"\t/** param */ \\\n"\
8223"\t\t/* ,ae2f_err_t* const */ err, \\\n"\
8224"\t\t/* constae2f_AnnSlp_t* const */ slp, \\\n"\
8225"\t\t/* constae2f_float_t* const */ inp, \\\n"\
8226"\t\t/* ae2f_float_t* const */ out_cache, \\\n"\
8227"\t\t/* constae2f_float_t* const */ out_desired, \\\n"\
8228"\t\t/* ae2f_float_t* const */ weights, \\\n"\
8229"\t\t/* ae2f_float_t* const */ bias, \\\n"\
8230"\t\t/* ae2f_float_t* const */ cachedelta, \\\n"\
8231"\t\t/* ae2f_optae2f_AnnAct_t* const */ act, \\\n"\
8232"\t\t/* ae2f_optae2f_AnnAct_t* const */ actderiv, \\\n"\
8233"\t\t/* ae2f_AnnLoss_t* const */ lossderiv, \\\n"\
8234"\t\t/* const ae2f_float_t */ learningrate, \\\n"\
8235"\t\t/* const ae2f_float_t */ learningrate_bias \\\n"\
8236") \\\n"\
8237"{ \\\n"\
8238"\tif((err) && *(err)) \\\n"\
8239"\t\t; \\\n"\
8240"\telse unless((slp) && (inp) && (out_cache) && (out_desired) && (weights) && (bias) && (cachedelta)) \\\n"\
8241"\t\t(err) && (*(err) |= ae2f_errGlob_PTR_IS_NULL); \\\n"\
8242"\telse unless(lossderiv) \\\n"\
8243"\t\t(err) && (*(err) |= ae2f_errGlob_IMP_NOT_FOUND); \\\n"\
8244"\telse if((learningrate) == 0 && (learningrate_bias) == 0) \\\n"\
8245"\t\t; \\\n"\
8246"\telse { \\\n"\
8247"\t\tae2f_AnnSlpTrain_t v_train; \\\n"\
8248"\t\tif (act) { \\\n"\
8249"\t\t\tif(actderiv) { \\\n"\
8250"\t\t\t\t__ae2f_AnnSlpTrain_imp( \\\n"\
8251"\t\t\t\t\t\tv_train, (*slp), inp, out_cache \\\n"\
8252"\t\t\t\t\t\t, out_desired, weights, bias \\\n"\
8253"\t\t\t\t\t\t, cachedelta, act, actderiv, lossderiv \\\n"\
8254"\t\t\t\t\t\t, learningrate, learningrate_bias \\\n"\
8255"\t\t\t\t\t\t); \\\n"\
8256"\t\t\t} else { \\\n"\
8257"\t\t\t\t__ae2f_AnnSlpTrain_imp( \\\n"\
8258"\t\t\t\t\t\tv_train, (*slp), inp, out_cache \\\n"\
8259"\t\t\t\t\t\t, out_desired, weights, bias \\\n"\
8260"\t\t\t\t\t\t, cachedelta, act, , lossderiv \\\n"\
8261"\t\t\t\t\t\t, learningrate, learningrate_bias \\\n"\
8262"\t\t\t\t\t\t); \\\n"\
8263" \\\n"\
8264"\t\t\t} \\\n"\
8265"\t\t} else { \\\n"\
8266"\t\t\tif(actderiv) { \\\n"\
8267"\t\t\t\t__ae2f_AnnSlpTrain_imp( \\\n"\
8268"\t\t\t\t\t\tv_train, (*slp), inp, out_cache \\\n"\
8269"\t\t\t\t\t\t, out_desired, weights, bias \\\n"\
8270"\t\t\t\t\t\t, cachedelta, , actderiv, lossderiv \\\n"\
8271"\t\t\t\t\t\t, learningrate, learningrate_bias \\\n"\
8272"\t\t\t\t\t\t); \\\n"\
8273"\t\t\t} else { \\\n"\
8274"\t\t\t\t__ae2f_AnnSlpTrain_imp( \\\n"\
8275"\t\t\t\t\t\tv_train, (*slp), inp, out_cache \\\n"\
8276"\t\t\t\t\t\t, out_desired, weights, bias \\\n"\
8277"\t\t\t\t\t\t, cachedelta, , , lossderiv \\\n"\
8278"\t\t\t\t\t\t, learningrate, learningrate_bias \\\n"\
8279"\t\t\t\t\t\t); \\\n"\
8280" \\\n"\
8281"\t\t\t} \\\n"\
8282"\t\t} \\\n"\
8283"\t} \\\n"\
8284"}\n"\
8285"\n"\
8286"\n"\
8287"#endif\n"\
8288"\n"\
8289"#undef\t__ae2f_MACRO_GENERATED\n"\
8290"\n"\
8291"#define\t__ae2f_MACRO_GENERATED\t0\n"\
8292"\n"\
8293"/** One eof gracefully */ \\\n"\
8294"\n"\
8295"#undef __ae2f_MACRO_GENERATED\n"\
8296"#define __ae2f_MACRO_GENERATED 1\n"\
8297"/** include detected */ \\\n"\
8298"/** Path cursor */ \\\n"\
8299"/* Opening: ./mac.h */ \\\n"\
8300"/** first fp: 0x55e37e259710 */ \\\n"\
8301"/** Current ./mac.h */ \\\n"\
8302"/** Dir ./ */ \\\n"\
8303"/** Found something. Now let\'s validate. */ \\\n"\
8304"/** It\'s not repeating */ \\\n"\
8305"/******************** */\\\n"\
8306"/* Now the path will be: */ \\\n"\
8307" /*./mac.h */ \\\n"\
8308"#ifndef mac_h\n"\
8309"#define mac_h\n"\
8310"\n"\
8311"#define ae2f_MAC()\tvoid\n"\
8312"#define\tCAST(t, x)\t((t)(x))\n"\
8313"\n"\
8314"\n"\
8315"/** Quick Pattern */\n"\
8316"#if CL_Q\n"\
8317"#define CL_Q_CVRT(x)\tx##_Q\n"\
8318"#else\n"\
8319"#define CL_Q_CVRT(x)\tx\n"\
8320"#endif\n"\
8321"\n"\
8322"#endif\n"\
8323"/** One eof gracefully */ \\\n"\
8324"\n"\
8325"#undef __ae2f_MACRO_GENERATED\n"\
8326"#define __ae2f_MACRO_GENERATED 1\n"\
8327"\n"\
8328"typedef ae2f_AnnSlpPredictOne_t _clSlpPredict_t;\n"\
8329"\n"\
8330"#define _clSlpPredict( \\\n"\
8331"\t/** tparam */ \\\n"\
8332"\t\t \\\n"\
8333" \\\n"\
8334"\t/** param */ \\\n"\
8335"\t\t/* , _clSlpPredict_t */ v_predict, \\\n"\
8336"\t\t/* ae2f_float_t* const */ loc, \\\n"\
8337"\t\t/* constae2f_float_t* const */ p_inp, \\\n"\
8338"\t\t/* constae2f_float_t* const */ p_weight, \\\n"\
8339"\t\t/* constae2f_float_t* const */ p_bias, \\\n"\
8340"\t\t/* const size_t */ iidx, \\\n"\
8341"\t\t/* const size_t */ isz, \\\n"\
8342"\t\t/* const size_t */ oidx, \\\n"\
8343"\t\t/* const size_t */ osz, \\\n"\
8344"\t\t/* ae2f_AnnAct_t */ ACT \\\n"\
8345") \\\n"\
8346"{ \\\n"\
8347"\tif((iidx) == 0 && (oidx) < (osz)) { \\\n"\
8348"\t\t_clSlpPredict_t\t_v_predict; \\\n"\
8349"\t\t(_v_predict).m_tmp = 0; \\\n"\
8350"\t\tfor((_v_predict).m_j = (isz); (_v_predict).m_j--;) { \\\n"\
8351"\t\t\t(_v_predict).m_tmp \\\n"\
8352"\t\t\t\t+= p_inp[(_v_predict).m_j] * p_weight[(_v_predict).m_j + (isz) * (oidx)]; \\\n"\
8353"\t\t} \\\n"\
8354" \\\n"\
8355"\t\t(_v_predict).m_tmp += (p_bias)[oidx]; \\\n"\
8356"\t\tACT(&(_v_predict).m_ret, (_v_predict).m_tmp); \\\n"\
8357"\t\t(loc)[oidx] = (_v_predict).m_ret; \\\n"\
8358"\t} \\\n"\
8359"}\n"\
8360"\n"\
8361"ae2f_structdef(struct, _clSlpPredict_t_Q) {\n"\
8362"\tae2f_float_t\tm_sum, m_ret;\n"\
8363"};\n"\
8364"\n"\
8365"/** Quick version, not precise. */\n"\
8366"#define _clSlpPredict_Q( \\\n"\
8367"\t/** tparam */ \\\n"\
8368"\t\t \\\n"\
8369" \\\n"\
8370"\t/** param */ \\\n"\
8371"\t\t/* , _clSlpPredict_t_Q */ v_predict, \\\n"\
8372"\t\t/* __localae2f_float_t* const */ loc, \\\n"\
8373"\t\t/* constae2f_float_t* const */ p_inp, \\\n"\
8374"\t\t/* constae2f_float_t* const */ p_weight, \\\n"\
8375"\t\t/* constae2f_float_t* const */ p_bias, \\\n"\
8376"\t\t/* const size_t */ iidx, \\\n"\
8377"\t\t/* const size_t */ isz, \\\n"\
8378"\t\t/* const size_t */ oidx, \\\n"\
8379"\t\t/* const size_t */ osz, \\\n"\
8380"\t\t/* ae2f_AnnAct_t */ ACT \\\n"\
8381") \\\n"\
8382"{ \\\n"\
8383"\tif((oidx) < (osz) && (iidx) < (isz)) { \\\n"\
8384"\t\t(v_predict).m_sum = work_group_reduce_add( \\\n"\
8385"\t\t\t\t(p_weight)[(oidx) * (isz) + (iidx)] * (p_inp)[iidx] \\\n"\
8386"\t\t\t\t); \\\n"\
8387" \\\n"\
8388"\t\tif((iidx) == 0) { \\\n"\
8389"\t\t\tACT((&(v_predict).m_ret), ((v_predict).m_sum + (p_bias)[oidx])); \\\n"\
8390"\t\t\t(loc)[oidx] = (v_predict).m_ret; \\\n"\
8391"\t\t} \\\n"\
8392"\t} \\\n"\
8393"}\n"\
8394"\n"\
8395"#define clSlpPredict\tCL_Q_CVRT(_clSlpPredict)\n"\
8396"#define clSlpPredict_t\tCL_Q_CVRT(_clSlpPredict_t)\n"\
8397"\n"\
8398"#endif\n"\
8399"\n"\
8400"#undef\t__ae2f_MACRO_GENERATED\n"\
8401"\n"\
8402"#define\t__ae2f_MACRO_GENERATED\t0\n"\
8403"\n"\
8404"/** One eof gracefully */ \\\n"\
8405"\n"\
8406"#undef __ae2f_MACRO_GENERATED\n"\
8407"#define __ae2f_MACRO_GENERATED 1\n"\
8408"\n"\
8409"#ifndef ACT\n"\
8410"#define ACT(r, x)\n"\
8411"#endif\n"\
8412"\n"\
8413"#ifndef ACT_DERIV\n"\
8414"#define ACT_DERIV(r, x)\n"\
8415"#endif\n"\
8416"\n"\
8417"#ifndef LOSS_DERIV\n"\
8418"#define LOSS_DERIV(r, y, y_desired, i, c)\n"\
8419"#endif\n"\
8420"\n"\
8421"/** Magic numbers */\n"\
8422"#define p_weight\tglob\n"\
8423"#define p_bias\t\t(glob + (osz * isz))\n"\
8424"#define p_inp\t\t((p_bias) + (osz))\n"\
8425"#define p_out\t\t((p_inp) + isz)\n"\
8426"#define p_delta\t\t((p_out) + osz)\n"\
8427"#define p_goal\t\t((p_delta) + osz)\n"\
8428"\n"\
8429"const ae2f_structdef(struct, lr_t) {\n"\
8430"\tae2f_float_t\tm_weight;\n"\
8431"\tae2f_float_t\tm_bias;\n"\
8432"};\n"\
8433"\n"\
8434"\n"\
8435"/**\n"\
8436"\n"\
8437" * @brief\n"\
8438" *\n"\
8439"\n"\
8440" * get_global_id(0) : oidx\t\\n\n"\
8441" *\n"\
8442"\n"\
8443" * Global: \\n\n"\
8444" * \t, ae2f_float_t[Out][Inp] : Weight\t\\n\n"\
8445" * \t, ae2f_float_t[Out] : Bias\t\t\\n\n"\
8446" * \t, ae2f_float_t[Inp]\t\t\t\\n\n"\
8447" * \t, ae2f_float_t[Out]\t\t\t\\n\n"\
8448" *\n"\
8449"\n"\
8450" * */\n"\
8451"__kernel void kPredict(__global ae2f_float_t* glob, const uint32_t unused) {\n"\
8452"\tconst size_t\n"\
8453"\t\toidx = get_global_id(0)\n"\
8454"\t\t, osz = get_global_size(0)\n"\
8455"\t\t, iidx = get_global_id(1)\n"\
8456"\t\t, isz = get_global_size(1);\n"\
8457"\n"\
8458"\tclSlpPredict_t v_predict;\n"\
8459"\n"\
8460"\tclSlpPredict(v_predict, p_out, p_inp, p_weight, p_bias, iidx, isz, oidx, osz, ACT);\n"\
8461"}\n"\
8462"\n"\
8463"/**\n"\
8464"\n"\
8465" * @brief\n"\
8466" *\n"\
8467"\n"\
8468" * get_global_id(0) : oidx\t\\n\n"\
8469" * get_local_id(0) : iidx\t\\n\n"\
8470" *\n"\
8471"\n"\
8472" * Global: \\n\n"\
8473" * \tae2f_float_t[Out][Inp] : Weights\t\\n\n"\
8474" * \t, ae2f_float_t[Out] : \tBias\t\t\\n\n"\
8475" * \t, ae2f_float_t[Inp]\t\t\t\\n\n"\
8476" * \t, ae2f_float_t[Out]\t\t\t\\n\n"\
8477" * \t, ae2f_float_t[Out] : Delta\t\t\\n\n"\
8478" * \t, ae2f_float_t[Out] : Goal\t\t\\n\n"\
8479" *\n"\
8480"\n"\
8481" * Local: \\n\n"\
8482" * \tae2f_float_t[Out]\t\t\\n\n"\
8483" * */\n"\
8484"__kernel void kTrain(lr_t lr, __global ae2f_float_t* glob, __local ae2f_float_t* loc) {\n"\
8485"\tconst size_t\n"\
8486"\t\toidx = get_global_id(0)\n"\
8487"\t\t, osz = get_global_size(0)\n"\
8488"\t\t, iidx = get_global_id(1)\n"\
8489"\t\t, isz = get_global_size(1)\n"\
8490"\t\t;\n"\
8491"\n"\
8492"\tae2f_float_t\t\tdelta = 0, v_tmp = 0, v_tmp1 = 0;\n"\
8493"\tclSlpPredict_t\t\tv_predict;\n"\
8494"\n"\
8495"\tclSlpPredict(v_predict, loc, p_inp, p_weight, p_bias, iidx, isz, oidx, osz, ACT);\n"\
8496"\n"\
8497"\tif(iidx == 0) {\n"\
8498"\t\tp_out[oidx] = loc[oidx];\n"\
8499"\n"\
8500"\t\t__ae2f_AnnSlpFetchDeltaOne_imp(\n"\
8501"\t\t\t\tv_tmp, v_tmp1\n"\
8502"\t\t\t\t, loc\t\t\t\t\t\t/** out */\n"\
8503"\t\t\t\t, p_goal\t\t\t\t\t/** out_desired */ \n"\
8504"\t\t\t\t, ACT_DERIV, LOSS_DERIV\n"\
8505"\t\t\t\t, delta\n"\
8506"\t\t\t\t, oidx, osz\n"\
8507"\t\t\t\t);\n"\
8508"\n"\
8509"\t\t/** delta */\n"\
8510"\t\tp_delta[oidx] = (delta);\n"\
8511"\n"\
8512"\t\t__ae2f_AnnSlpFollowOneB_imp(\n"\
8513"\t\t\t\tp_bias[oidx] /** r_bias */\n"\
8514"\t\t\t\t, delta /** delta */\n"\
8515"\t\t\t\t, lr.m_bias\n"\
8516"\t\t\t\t);\n"\
8517"\t}\n"\
8518"\n"\
8519"\t__ae2f_AnnSlpFollowOneW_imp(\n"\
8520"\t\t\tp_inp[iidx] /** inp */\n"\
8521"\t\t\t, (delta) /** delta */\n"\
8522"\t\t\t, glob /** weight */\n"\
8523"\t\t\t, lr.m_weight\n"\
8524"\t\t\t, isz\n"\
8525"\t\t\t, iidx\n"\
8526"\t\t\t, osz\n"\
8527"\t\t\t, oidx\n"\
8528"\t\t\t);\n"\
8529"\n"\
8530"}\n"\
8531"\n"\
8532"/**\n"\
8533"\n"\
8534" * @brief\n"\
8535" *\n"\
8536"\n"\
8537" * get_global_id(0) : oidx\t\\n\n"\
8538" * get_local_id(0) : iidx\t\\n\n"\
8539" *\n"\
8540"\n"\
8541" * Global: \\n\n"\
8542" * \tae2f_float_t[Out][In] : Weights\t\\n\n"\
8543" * \t, ae2f_float_t[Out] : Bias\t\\n\n"\
8544" *\t\t, ae2f_float_t[Inp]\t\t\\n\n"\
8545" *\t\t, ae2f_float_t[Out]\t\t\\n\n"\
8546" * \t, ae2f_float_t[Out] : Delta\t\\n\n"\
8547" * \t, ae2f_float_t[Out] : Goal\t\\n\n"\
8548" *\n"\
8549"\n"\
8550" * */\n"\
8551"__kernel void kFit(lr_t lr, __global ae2f_float_t* glob) {\n"\
8552"\tconst size_t\n"\
8553"\t\toidx = get_global_id(0)\n"\
8554"\t\t, osz = get_global_size(0)\n"\
8555"\t\t, iidx = get_global_id(1)\n"\
8556"\t\t, isz = get_global_size(1)\n"\
8557"\t\t;\n"\
8558"\n"\
8559"\tae2f_float_t\tdelta, v_tmp, v_tmp1;\n"\
8560"\n"\
8561"\tif(iidx == 0) {\n"\
8562"\t\t__ae2f_AnnSlpFetchDeltaOne_imp(\n"\
8563"\t\t\t\tv_tmp, v_tmp1\n"\
8564"\t\t\t\t, p_out /** out */\n"\
8565"\t\t\t\t, p_goal /** out_desired */ \n"\
8566"\t\t\t\t, ACT_DERIV\n"\
8567"\t\t\t\t, LOSS_DERIV\n"\
8568"\t\t\t\t, delta /** retdelta */\n"\
8569"\t\t\t\t, oidx\n"\
8570"\t\t\t\t, osz\n"\
8571"\t\t\t\t);\n"\
8572"\n"\
8573"\t\t/** delta */\n"\
8574"\t\tp_delta[oidx] = delta;\n"\
8575"\n"\
8576"\t\t__ae2f_AnnSlpFollowOneB_imp(\n"\
8577"\t\t\t\tp_bias[oidx]\t/** r_bias */\n"\
8578"\t\t\t\t, delta\t\t/** delta */\n"\
8579"\t\t\t\t, lr.m_bias\n"\
8580"\t\t\t\t);\n"\
8581"\t}\n"\
8582"\n"\
8583"\t__ae2f_AnnSlpFollowOneW_imp(\n"\
8584"\t\t\tp_inp[iidx] /** inp */\n"\
8585"\t\t\t, delta /** delta */\n"\
8586"\t\t\t, p_weight /** weight */\n"\
8587"\t\t\t, lr.m_weight\n"\
8588"\t\t\t, isz\n"\
8589"\t\t\t, iidx\n"\
8590"\t\t\t, osz\n"\
8591"\t\t\t, oidx\n"\
8592"\t\t\t);\n"\
8593"}\n"\
8594"\n"\
8595"/**\n"\
8596"\n"\
8597" * @brief\n"\
8598" * get_global_id(0):\toidx\n"\
8599" * get_local_id(0):\tiidx\n"\
8600" *\n"\
8601"\n"\
8602" * Global: \\n\n"\
8603" * \tae2f_float_t[Out][In] : Weights\t\\n\n"\
8604" * \t, ae2f_float_t[Out] : Bias\t\\n\n"\
8605" * \t, ae2f_float_t[Inp]\t\t\\n\n"\
8606" * \t, ae2f_float_t[Out] : Delta\t\\n\n"\
8607" * */\n"\
8608"__kernel void kFollow(lr_t lr, __global ae2f_float_t* glob) {\n"\
8609"\tconst size_t\n"\
8610"\t\toidx = get_global_id(0)\n"\
8611"\t\t, osz = get_global_size(0)\n"\
8612"\t\t, iidx = get_global_id(1)\n"\
8613"\t\t, isz = get_global_size(1)\n"\
8614"\t\t;\n"\
8615"\n"\
8616"\t__ae2f_AnnSlpFollowOneW_imp(\n"\
8617"\t\t\tp_inp[iidx] /** inp */\n"\
8618"\t\t\t, p_delta[oidx] /** delta */\n"\
8619"\t\t\t, p_weight /** weight */\n"\
8620"\t\t\t, lr.m_weight\n"\
8621"\t\t\t, isz\n"\
8622"\t\t\t, iidx\n"\
8623"\t\t\t, osz\n"\
8624"\t\t\t, oidx\n"\
8625"\t\t\t);\n"\
8626"\n"\
8627"\tif(iidx == 0) {\n"\
8628"\t\t__ae2f_AnnSlpFollowOneB_imp(\n"\
8629"\t\t\t\tp_bias[oidx] /** r_bias */\n"\
8630"\t\t\t\t, p_delta[oidx] /** delta */\n"\
8631"\t\t\t\t, lr.m_bias\n"\
8632"\t\t\t\t);\n"\
8633"\t}\n"\
8634"}\n"\
8635"\n"\
8636"#undef\t__ae2f_MACRO_GENERATED\n"\
8637"\n"\
8638"#define\t__ae2f_MACRO_GENERATED\t0\n"\
8639"\n"\
8640"/** All done. */\n"\
8641""/** One eof gracefully */
8642
8643
8644
8645
8646/** All done. */
void ae2f_AnnAct_t(ae2f_float_t *ret, ae2f_float_t x)
Customisable activasion function type.
Definition Act.h:19
void ae2f_AnnLoss_t(ae2f_float_t *ret, const ae2f_float_t *out, const ae2f_float_t *goal, size_t index, size_t count)
Specify the way of calculating loss.
Definition Act.h:29
#define ae2f_enumdef(name,...)
Definition Cast.h:111
#define ae2f_structdef(key, name)
Definition Cast.h:110
#define ae2f_const_cast(t, v)
Definition Cast.h:57
#define ae2f_CastMerge(...)
simply merge all text inside the round bracket, counting them as a single text block.
Definition Cast.h:25
#define ae2f_static_cast(t, v)
Definition Cast.h:42
#define ae2f_reinterpret_cast(t, v)
Definition Cast.h:52
#define unless(...)
Invokes when condition is false.
Definition Cast.h:103
ae2f_float ae2f_float_t
Definition Float.h:38
#define ae2f_opt
Definition Guide.h:26
#define __ae2fVK_AnnMlpBiasOff(i_depth, i_outc)
Definition Mlp.core.h:142
#define __ae2fVK_AnnMlpUnMapRanged_imp
Definition Mlp.core.h:168
ae2fVK_AnnSlpUnMap_t ae2fVK_AnnMlpUnMap_t
Definition Mlp.core.h:117
#define __ae2fVK_AnnMlpDeltaStreamSz(i_depth, i_outc)
Definition Mlp.core.h:145
#define __ae2fVK_AnnMlpMapRangedGeneric_imp
Definition Mlp.core.h:167
#define __ae2fVK_AnnMlpGoalSz(i_depth, i_outc)
Definition Mlp.core.h:151
VkMappedMemoryRange ae2fVK_AnnMlpMapRangedGeneric_t
Definition Mlp.core.h:118
#define __ae2fVK_AnnMlpMdlOff(...)
Definition Mlp.core.h:125
#define __ae2fVK_AnnMlpOutStreamSz(i_depth, i_outc)
Definition Mlp.core.h:127
#define __ae2fVK_AnnMlpWeightOff(i_depth, i_outc)
Definition Mlp.core.h:136
#define __ae2fVK_AnnMlpMdlSz(i_depth,...)
Definition Mlp.core.h:122
#define __ae2fVK_AnnMlpGoalOff(i_depth, i_outc)
Definition Mlp.core.h:154
ae2fVK_AnnSlpDescPoolCmdMk_t ae2fVK_AnnMlpDescPoolCmdMk_t
Definition Mlp.core.h:119
#define __ae2fVK_AnnMlpOutStreamOff(i_depth, i_outc)
Definition Mlp.core.h:130
#define __ae2fVK_AnnMlpWeightSz(i_depth, i_outc)
Definition Mlp.core.h:133
#define __ae2fVK_AnnMlpBiasSz(i_depth, i_outc)
Definition Mlp.core.h:139
#define __ae2fVK_AnnMlpGlobMemSz(i_depth, i_outc)
Definition Mlp.core.h:157
#define __ae2fVK_AnnMlpDeltaStreamOff(i_depth, i_outc)
Definition Mlp.core.h:148
#define __ae2fVK_AnnSlpGoalSz(i_inp, i_out)
Definition Slp.core.h:172
ae2fVK_eAnnSlpDescLayouts
Definition Slp.core.h:47
@ ae2fVK_eAnnSlpDescLayouts_kPredict
Definition Slp.core.h:48
@ ae2fVK_eAnnSlpDescLayouts_LEN
Definition Slp.core.h:50
@ ae2fVK_eAnnSlpDescLayouts_kTrain
Definition Slp.core.h:49
#define __ae2fVK_AnnSlpBiasOff(i_inp, i_out)
Definition Slp.core.h:175
#define __ae2fVK_AnnSlpGoalOff(i_inp, i_out)
Definition Slp.core.h:179
#define __ae2fVK_AnnSlpOutOff(i_inp, i_out)
Definition Slp.core.h:177
#define __ae2fVK_AnnSlpInpSz(i_inp,...)
Definition Slp.core.h:169
VkMappedMemoryRange ae2fVK_AnnSlpMapRangedGeneric_t
Definition Slp.core.h:152
#define __ae2fVK_AnnSlpBiasSz(i_inp, i_out)
Definition Slp.core.h:168
#define __ae2fVK_AnnSlpWeightSz(i_inp, i_out)
Definition Slp.core.h:167
#define __ae2fVK_AnnSlpInpOff(i_inp, i_out)
Definition Slp.core.h:176
ae2fVK_eAnnSlpPipeLayouts
Definition Slp.core.h:40
@ ae2fVK_eAnnSlpPipeLayouts_LEN
Definition Slp.core.h:44
@ ae2fVK_eAnnSlpPipeLayouts_kTrain
Definition Slp.core.h:42
@ ae2fVK_eAnnSlpPipeLayouts_kPredict
Definition Slp.core.h:41
@ ae2fVK_eAnnSlpPipeLayouts_kFit
Definition Slp.core.h:43
#define __ae2fVK_AnnSlpDeltaSz(i_inp, i_out)
Definition Slp.core.h:171
#define __ae2fVK_AnnSlpWeightOff(i_inp, i_out)
Definition Slp.core.h:174
ae2fVK_eAnnSlpDescPools
Definition Slp.core.h:34
@ ae2fVK_eAnnSlpDescPools_kPredict
Definition Slp.core.h:35
@ ae2fVK_eAnnSlpDescPools_kTrain
Definition Slp.core.h:36
@ ae2fVK_eAnnSlpDescPools_LEN
Definition Slp.core.h:37
#define __ae2fVK_AnnSlpGlobSz(i_inp, i_out)
Definition Slp.core.h:181
#define __ae2fVK_AnnSlpOutSz(i_inp, i_out)
Definition Slp.core.h:170
VkMappedMemoryRange ae2fVK_AnnSlpUnMap_t
Definition Slp.core.h:152
char STATIC_ASSERT_ae2fVK_AnnSlpMkU2_vkdescsetlayoutbind_sz[sizeof(ae2fVK_AnnSlpMkU2S0_t)==sizeof(VkDescriptorSetLayoutBinding) *2 ? 1 :-1]
Definition Slp.core.h:117
ae2fVK_eAnnSlpPipes
Definition Slp.core.h:24
@ ae2fVK_eAnnSlpPipes_kFit
Definition Slp.core.h:28
@ ae2fVK_eAnnSlpPipes_kTrain
Definition Slp.core.h:27
@ ae2fVK_eAnnSlpPipes_kPredict
Definition Slp.core.h:25
@ ae2fVK_eAnnSlpPipes_LEN
This is the end of the value, which typically means the count of actual kernel used.
Definition Slp.core.h:31
@ ae2fVK_eAnnSlpPipes_kFollow
Definition Slp.core.h:26
#define __ae2fVK_AnnSlpDeltaOff(i_inp, i_out)
Definition Slp.core.h:178
#define ae2f_MAC_BUILD
Definition Util.h:4
#define ae2fVK_AnnMlpSHADER
#define __ae2fVK_AnnSlpDescPoolMkGeneric_imp(v_descpool, r_pool, r_reterr, iv_slp, i_vkdescpoolcreatflags, i_vkdesctype, i_vkdescpoolsz_count, i_vkmaxdescsets)
#define __ae2fVK_AnnSlpDescPoolMk_imp(v_descpool, r_pool, r_reterr, iv_slp, i_vkdescpoolcreatflags, i_vkmaxdescsets)
#define __ae2fVK_AnnSlpDescPoolCmdClean_imp(iv_slp, i_pool, i_cmd)
#define __ae2fVK_AnnSlpDescPoolCmdMk_imp(COMMANDONRECORDING, v_cmdmk, r_cmd, iv_slp, i_pool, iv_err, i_desccount, i_offglob, i_szglob, i_offloc, i_szloc, i_desclayout, i_pipe, i_pipelayout, i_vkcmdbuf)
#define __ae2fVK_AnnSlpDescPoolClean_imp(i_slp, i_pool)
#define ae2fVK_AnnSlpSHADER
#define ae2f_errGlob_OK
The Operation you've wanted went successful.
Definition errGlob.h:23
#define ae2f_errGlob_ALLOC_FAILED
stdlib allocating functions (malloc, calloc, realloc) has been failed.
Definition errGlob.h:40
#define ae2f_errGlob_NFOUND
Found some errors, but not by parameters. The operation has failed.
Definition errGlob.h:50
#define ae2f_errGlob_WRONG_OPERATION
Found that parameter sent by programmer is invalid. The operation may have been ceased while the midd...
Definition errGlob.h:45
uint8_t ae2f_err_t
Informs that this number represents the error.
Definition errGlob.h:19
#define ae2f_errGlob_PTR_IS_NULL
Failed to refer the pointer either l-value inside the function.
Definition errGlob.h:32
#define ae2f_errGlob_IMP_NOT_FOUND
Failed to find the function on preprocessor which is callable for some reason No operation has beed d...
Definition errGlob.h:28
ae2fVK_AnnSlpDescPoolCmd ae2fVK_AnnMlpDescPoolCmd
Definition Mlp.h:28
ae2fVK_AnnSlpCreatDescPool_t ae2fVK_AnnMlpCreatDescPool_t
Definition Mlp.h:30
ae2fVK_AnnSlpDescPool ae2fVK_AnnMlpDescPool
Definition Mlp.h:27
#define __ae2fVK_AnnSlpMkCLSPVVerbose_imp(r_handle, ir_err, i_first, i_second, i_third)
Definition Slp.auto.h:760
#define __ae2fVK_AnnSlpMapRangedGeneric_imp(T, v_vkmapmemrange, iv_slp, r_err, r_ptr, i_off, i_sz)
Definition Slp.auto.h:834
#define __ae2fVK_AnnSlpMkFndMemProp_imp(CMDONERR, r_memtypeidx, v_errbit, memtypeidx_invalid_minus_one, vkpropflag_req, vkphydevmemprops)
Definition Slp.auto.h:35
#define __ae2fVK_AnnSlpMkCreatBuf(CMDONERR, sz, r_vkres, r_vkbuf, v_vkbufcreatinfo, v_reterr, vkbufuseflags, vksharemode, vkdev, vkalloccalls)
Definition Slp.auto.h:66
#define __ae2fVK_AnnSlpMkLoadPipeCreat_imp(CMDONERR, r_reterr, pipecreat, pipelayout, shadermod, entrypoint, idx_pipe, idx_pipelayout)
Definition Slp.auto.h:209
#define __ae2fVK_AnnSlpCreatDescPoolVerbose_imp(v_vkdescpoolcreatinfo, v_vkdescpoolsz, r_vkdescpool, r_reterr, r_vkres, i_vkdev, i_vkptrAlloc, i_vkdescpoolcreatflags, i_vkdesctype, i_vkdescpoolsz_count, i_vkmaxdescsets)
Definition Slp.auto.h:322
#define __ae2fVK_AnnSlpMkOnePipeLayoutVerbose_imp(CMDONERR, v_vkpushconstrange, v_vkpipelayoutcreatinfo, r_reterr, iv_slpptr, idx, szrequired, vkalloccalls, vkdev)
Definition Slp.auto.h:248
#define __ae2fVK_AnnSlpUnMap_imp(slp)
Definition Slp.auto.h:895
#define __ae2fVK_AnnSlpUnMapRanged_imp(v_out, vi_slp, i_off, i_sz)
Definition Slp.auto.h:907
#define __ae2fVK_AnnSlpMkAllocVKMem_imp(CMDONERR, sz, r_vkres, r_vkbuf, r_vkdevmem, v_errbit, v_vkbufcreatinfo, v_memallocinfo, vkbufuseflags, vksharemode, vkdev, v_vkmemreq, vkalloccalls, v_memtypeidx, memtypeidx_invalid_minus_one, vkpropflag_req, vkphydevmemprops)
Definition Slp.auto.h:110
#define __ae2f_MACRO_GENERATED
Definition Mlp.auto.h:2
#define __ae2f_AnnMlpMk_imp(...)
Definition Mlp.auto.h:315
#define __ae2f_AnnSlpMk_imp(...)
Definition Slp.auto.h:232
#define ae2f_MAC()
delta to delta
Definition mac.h:4
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const iv_bias_opt
Definition Mlp.def.cc:49
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t ae2f_float_t const VkDevice const VkPhysicalDeviceMemoryProperties ae2f_opt VkAllocationCallbacks *const iv_vkalloccalls
Definition Mlp.def.cc:71
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t ae2f_float_t const VkDevice const VkPhysicalDeviceMemoryProperties i_vkmemprops
Definition Mlp.def.cc:69
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t i_extra
Definition Mlp.def.cc:58
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t i_learningrate
Definition Mlp.def.cc:65
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const iv_outstream_opt
Definition Mlp.def.cc:50
ae2fVK_AnnMlp ae2f_err_t ae2f_float_t ae2f_float_t * r_ptrbias
Definition Mlp.def.cc:652
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const iv_deltastream_opt
Definition Mlp.def.cc:51
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t i_len_count
Definition Mlp.def.cc:53
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const i_actderiv
Definition Mlp.def.cc:61
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t ae2f_float_t i_learningrate_bias
Definition Mlp.def.cc:66
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t ae2f_float_t const VkDevice const VkPhysicalDeviceMemoryProperties ae2f_opt VkAllocationCallbacks *const ae2f_opt const char *const ae2f_opt const char *const i_vkcldefinition
Definition Mlp.def.cc:76
ae2f_opt ae2f_float_t *const iv_weight_opt
Definition Mlp.def.cc:48
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t ae2f_float_t const VkDevice i_vkdev
Definition Mlp.def.cc:68
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t i_prm_offset
Definition Mlp.def.cc:57
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const i_act
Definition Mlp.def.cc:60
ae2fVK_AnnMlp iv_mlp
Definition Mlp.def.cc:585
ae2fVK_AnnMlp ae2f_err_t ae2f_float_t * r_ptr
Definition Mlp.def.cc:589
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t ae2f_float_t const VkDevice const VkPhysicalDeviceMemoryProperties ae2f_opt VkAllocationCallbacks *const ae2f_opt const char *const i_vkcldeclaration
Definition Mlp.def.cc:73
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const i_len_swap
Definition Mlp.def.cc:55
ae2fVK_AnnMlp ae2f_err_t r_err
Definition Mlp.def.cc:586
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const i_len
Definition Mlp.def.cc:54
ae2fVK_AnnMlp ae2f_err_t ae2f_float_t * r_ptrweight
Definition Mlp.def.cc:649
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const i_lossderiv
Definition Mlp.def.cc:63