17# include "private_mk.h"
19# include "LibMkKernel_mk.h"
22#ifndef PARSE_C_HEADER_TO_META
98# define LC_C_BUILD_DLL
102# define LC_RT_ARGS_ONLY MK_RT mkrt
103# define LC_RT_ARGS LC_RT_ARGS_ONLY,
104# define LC_RT_CALL_ONLY mkrt
105# define LC_RT_CALL LC_RT_CALL_ONLY,
107# define LC_RT_ARGS_ONLY void
109# define LC_RT_CALL_ONLY
119#undef BEGIN_LC_C_DECLS
121#if defined(META_COMPILE_AS_CC)
122# define BEGIN_LC_C_DECLS namespace liblcconfig { using namespace libmkkernel;
123# define END_LC_C_DECLS }
124#elif defined(__cplusplus)
125# define BEGIN_LC_C_DECLS extern "C" {
126# define END_LC_C_DECLS }
128# define BEGIN_LC_C_DECLS
129# define END_LC_C_DECLS
133#ifndef PARSE_C_HEADER_TO_META
150# define LC_INSTANCE_HDL(x) MK_INSTANCE_HDL(x)
152# define LC_INSTANCE_RT_X(x) MK_INSTANCE_RT_X(x)
153# define LC_INSTANCE_RT_X_NULL(x) MK_INSTANCE_RT_X_NULL(x)
154# define LC_INSTANCE_RT_O(o) MK_INSTANCE_RT_O(o)
155# define LC_INSTANCE_RT_O_NULL(o) MK_INSTANCE_RT_O_NULL(o)
156# define LC_DESTRUCTOR_RT_X(c,x) MK_DESTRUCTOR_RT_X(c,x)
157# define LC_STATIC_RT MK_STATIC_RT
174#if defined(META_IGNORE_EXTERN)
178# if defined(DLL_EXPORT)
180# if defined(LC_C_BUILD_DLL)
181# define LC_EXTERN __declspec(dllexport)
183# define LC_EXTERN __declspec(dllimport)
187# define LC_EXTERN __attribute__ ((visibility("default")))
196#if defined(META_PRIVATE)
197# define LC_EXTERN_DATA extern
198#elif defined(META_IGNORE_EXTERN)
199# define LC_EXTERN_DATA extern
202# if defined(DLL_EXPORT)
204# if defined(LC_C_BUILD_DLL)
205# define LC_EXTERN_DATA __declspec(dllexport)
207# define LC_EXTERN_DATA __declspec(dllimport)
211# define LC_EXTERN_DATA __attribute__ ((visibility("default"))) extern
214# define LC_EXTERN_DATA extern
243#ifndef META_COMPILE_AS_CC
244__attribute__ ((constructor(200)))
252#ifndef META_COMPILE_AS_CC
253__attribute__ ((destructor(200)))
271#define LC_SET_T(_cls,_hook,_nat) ({ \
273 if ((_nat) == NULL) { \
276 ret = (_cls##_type)_hook (_nat); \
278 ret = (_cls##_type) MkObjCreate(_cls##_TT,_nat,NULL); \
297 __parser__(type=ME_CCC_LcConfigC:
"LcConfigC class handle":primary)
300 __parser__(type=ME_CCN_LcConfigC:"const - LcConfigC class handle":primary)
311 __parser__(type=ME_CCC_LcSettingC:"LcSettingC class handle":primary)
314 __parser__(type=ME_CCN_LcSettingC:"const - LcSettingC class handle":primary)
327#include "LcEnum_lc.h"
365#define LcErrorCheckI(ret) ((ret) == CONFIG_FALSE)
373#define LcErrorE_Check(lc_hdl,PROC) \
374 if (unlikely(LcErrorCheckI(PROC))) { \
375 LcConfigErrorToMQ(MkOBJ(lc_hdl), __func__,__FILE__,__LINE__); \
388__parser__(hide,overload-c-no,
class=LcConfig,doc-group=Error,prefix=Error)
407#ifndef META_DOXYGEN_SHOULD_SKIP_THIS
409 #ifdef PARSE_C_HEADER_TO_META
412 #include "libconfig.h"
509#define LcErrorC_Check(hdl,PROC) \
510 if (unlikely(LcErrorCheckI(PROC))) { \
511 OT_ERROR_LC_2_MQ(hdl); \
512 OT_ERROR_META_2_LNG(hdl); \
516#define OT_ERROR_LC_2_MQ(hdl) LcConfigErrorToMQ(MkOBJ(hdl), __func__,__FILE__,__LINE__);
LcConfigC_lc.h - 12 Dec 2024 - aotto1968.
LcSettingC_lc.h - 12 Dec 2024 - aotto1968.
config_overload_lc.h - 06 Dec 2024 - aotto1968
#define LC_EXTERN
static library
LcErrorE
Signals an error and is used as the return value of a function …
enum MkErrorE LcConfigErrorToMQ(MK_OBJN const obj, MK_STRN const func, MK_STRN const file, MK_I32 const line)
if a libconfig funtion return a LcErrorE use this function to convert the libconfig-error into the li...
enum LcErrorTypeE LcErrorTypeE
define the error-source of a LcConfigC …
enum LcErrorE LcErrorE
define the return-code of a method-call …
void LcSetupThreadCallback(LcSetupThreadF call)
callback used to register a new runtime …
void LcSetup(void)
setup liblcconfig internal memory …
void(* LcSetupThreadF)(MK_RT mkrt)
prototype of the runtime-callback …
void LcCleanup(void)
cleanup liblcconfig internal memory …
#define __parser__global__(...)
#define __parser__push__(...)
Struct to represent the data from the LcConfigC …
Struct to represent the data from the LcSettingC …