theKernel 10.0 NHI1 - theKernel - theLink - theConfig - theSq3Lite - theCompiler - theBrain - theGuard
c - tcl - cs - py - rb - jv - cc
Loading...
Searching...
No Matches
MkBufferListC_def_mk.h
Go to the documentation of this file.
1
12/* LABEL-START */
13// empty
14/* LABEL-END */
15
16#pragma once
17
18#include "LibMkKernel_mk.h"
19
21
22// BEGIN-Class-Doc-Order - created by 'c_Class.tcl -i NHI1_HOME/theKernel/c/gen/c_mkkernel.meta' - DO NOT change
23
24// external
30
31// END-Class-Doc-Order - created by 'c_Class.tcl -i NHI1_HOME/theKernel/c/gen/c_mkkernel.meta' - DO NOT change
32
33// MARK_C ==================================================================
34
58
77 // BEGIN-MkBufferListS-super - created by 'c_Class.tcl -i NHI1_HOME/theKernel/c/gen/c_mkkernel.meta' - DO NOT change
78
79 union {
80 struct MkObjectS obj; // instance-base MkObjectS
82
83 // END-MkBufferListS-super - created by 'c_Class.tcl -i NHI1_HOME/theKernel/c/gen/c_mkkernel.meta' - DO NOT change
84 // instance attributes
89#define MkBufferListS_bls_size 32
91};
92
93// MARK_D ==================================================================
94// BEGIN-MkBufferListS-Definition - created by 'c_Class.tcl -i NHI1_HOME/theKernel/c/gen/c_mkkernel.meta' - DO NOT change
95
99 __parser__push__(prefix=Class, doc-group=Define, doc-index=Class);
100
101// Signature --------------------------------------------------------------
104
105 #define MkBufferListC_SIGNATURE (MkObjectC_SIGNATURE ^ (2u<<10))
106 #define MkBufferListC_MASK (((1u<<22)-1)<<10)
107
109
110// CompileTimeCast --------------------------------------------------------------
113
114 #define MkBufferListC_X2bfl(x) (x)
115 #define MkBufferListC_X2obj(x) MkOBJ(x)
116
118
119// TypeDef --------------------------------------------------------------
122
126 __parser__(ignore) typedef const struct MkBufferListS MkBufferListCNR;
128 #define MkBufferListC_T (&MK_RT_REF._MkBufferListC_T)
130 #define MkBufferListC_TT (MkTYP(MkBufferListC_T))
132 #define MkBufferListST MkBufferListC_T
134 #define MkBufferListSTT (MkTYP(MkBufferListST))
136 #define MkBufferListC_type MK_BFL
138 #define MkBufferListCT_X(instance) ( (struct MkSuperTypeS *) (MkOBJ_R(instance).type) )
140 #define MkBufferListCTT_X(instance) (MkOBJ_R(instance).type)
142 #define MkBufferListCT_TT(typ) ( (struct MkSuperTypeS *) (typ) )
144 #define MkBufferListC_NS MK
146 #define MkBufferListCTT MkBufferListCTT
148 #define MkBufferListCT ( (struct MkSuperTypeS *) MkBufferListCTT )
149
151
152// TypeCheck --------------------------------------------------------------
155
156 #pragma GCC diagnostic push
157 #pragma GCC diagnostic ignored "-Wattributes"
158
161 __parser__(class=MkBufferListC,static,hide)
164 return MkSanitizeCheck(MkBufferListC,mng);
165 }
166
169 __parser__(class=MkBufferListC,static,hide)
172 return MkSanitizeCheckO(MkBufferListC,obj);
173 }
174
175 #pragma GCC diagnostic pop
176 #define MkBufferListC_Check(mng) MkBflCheck(mng)
177
179
180// RunTimeCast --------------------------------------------------------------
183
185 __parser__(class=MkBufferListC,hide,static)
186 META_ATTRIBUTE_SANITIZE
189 return (MkBflCheck(mng) ? (MK_BFL)mng : NULL);
190 }
191
193 __parser__(class=MkBufferListC,hide,static)
194 META_ATTRIBUTE_SANITIZE
197 return (MkBflCheck(mng) ? (MK_BFLN)mng : NULL);
198 }
199
201 #define MkBflRaise(_bfl) if (!_MkCheckX(MkBufferListC,_bfl)) { \
202 MkErrorSetC_1E("'MkBufferListC' hdl is NULL"); \
203 goto error ; \
204 }
205
207 #define MkBFL_R(x) (*(x)).super.bfl
209 #define MkBFL(x) (&MkBFL_R(x))
210
212
215// MkBufferListC_Class_Define_C_API
216
217// END-MkBufferListS-Definition - created by 'c_Class.tcl -i NHI1_HOME/theKernel/c/gen/c_mkkernel.meta' - DO NOT change
218
220
221// MARK_C ==================================================================
222
223// =========================================================================
224// BEGIN-MkBufferListS-Export - created by 'c_Class.tcl -i NHI1_HOME/theKernel/c/gen/c_mkkernel.meta' - DO NOT change
225
228
231
232__parser__push__(doc-group=_ignore_,doc-index=Class,doc-name=Export,class=MkBufferListC);
233
249__parser__(class-overload=MkObjectHandleGet)
253 MK_BFL const bfl __parser__(null-allowed)
254) {
255 return MkObjectHandleGet(bfl?MkOBJ(bfl):NULL);
256}
257
266__parser__(flags=new)
270 MK_HDL const netHdl
271) {
272 return MkBfl(MkObjectHandleResolve(netHdl));
273}
274
284#define MkBufferListHandleResolve_e(netHdl) ({ \
285 MK_HDL tmpHdl=netHdl; \
286 MK_BFL tmp; \
287 if (tmpHdl==0) { \
288 tmp=NULL; \
289 } else { \
290 tmp=MkBufferListHandleResolve(tmpHdl); \
291 if (tmp==NULL) { \
292 MkErrorSetC_1_NULL("ERROR: 'MkBufferListC' handle is 'NULL'"); \
293 goto error; \
294 }; \
295 }; \
296 tmp; \
297})
298
300
302// Class export & import
303
307 __parser__(flags=new,doc-group=_ignore_,doc-index=Class,doc-name=Misc,class=MkBufferListC,null-return-allow)
310 return (MK_BFL)MK_NULL;
311 }
313// MkBufferListC - Misc - function
314
316// MkBufferListC_Class_C_API
317
318// END-MkBufferListS-Export - created by 'c_Class.tcl -i NHI1_HOME/theKernel/c/gen/c_mkkernel.meta' - DO NOT change
319
320// =========================================================================
321// BEGIN-Class-Introspection
322// END-Class-Introspection
323
324// #######################################################################
325// -----------------------------------------------------------------------
330
331__parser__push__(doc-group=TOR);
332
340// [MkBufferListCreate_RT]
341__parser__(constructor,lng-constr)
344 MK_NUM const size __parser__(default=0)
346// [MkBufferListCreate_RT]
347
364 MK_STRN const tlsName ,
365 bool const resetB __parser__(default=true)
367
368__parser__(constructor,macro)
384// [MkBufferListCreateTLS_T]
385#define MkBufferListCreateTLS_T(name,num) \
386 static MkThreadLocal struct MkBufferListS name##R = {0}; \
387 MK_BFL name = &name##R; \
388 if (likely(__MkCheckX(MkBufferListC,&name##R))) { \
389 MkBufferListReserve_RT(MK_RT_CALL name,num); \
390 } else { \
391 MkBufferListInit_RT(MK_RT_CALL name,num); \
392 MkRefIncr_1X(name); \
393 }
394// [MkBufferListCreateTLS_T]
395
396__parser__(constructor,macro)
410// [MkBufferListCreateSTATIC_T]
411#define MkBufferListCreateSTATIC_T(name,num) \
412 static struct MkBufferListS name##R = {0}; \
413 struct MkBufferListS * const name = &name##R; \
414 if (__MkCheckX(MkBufferListC,&name##R)) { \
415 MkBufferListReset_RT(MK_RT_CALL name); \
416 } else { \
417 MkBufferListInit_RT(MK_RT_CALL name,num); \
418 }
419// [MkBufferListCreateSTATIC_T]
420
421__parser__(constructor,macro)
431// [MkBufferListCreateLOCAL_T]
432#define MkBufferListCreateLOCAL_T(name,num) \
433 struct MkBufferListS name##R = {0}; \
434 struct MkBufferListS * const name = &name##R; \
435 MkBufferListInit_RT(MK_RT_CALL name, num)
436// [MkBufferListCreateLOCAL_T]
437
438__parser__(constructor,macro)
456// [MkBufferListCreateTLS_inout_T]
457#define MkBufferListCreateTLS_inout_T(name,num,inout) \
458 static MkThreadLocal struct MkBufferListS __hidden_##name##R = {0}; \
459 MK_BFL name = *inout != NULL ? *inout : &__hidden_##name##R; \
460 if (likely(__MkCheckX(MkBufferListC,name))) { \
461 MkBufferListReserve_RT(MK_RT_CALL name,num); \
462 } else { \
463 MkBufferListInit_RT(MK_RT_CALL name,num); \
464 MkRefIncr_1X(name); \
465 }
466// [MkBufferListCreateTLS_inout_T]
467
486__parser__(constructor,arg-type-vcv=argc@argv)
489 MK_NUM const argc,
490 MK_STRN const *argv __parser__(in)
492
500__parser__(constructor)
503 MK_STRN const arg0,
504 va_list var_list
506
513__parser__(constructor)
516 MK_STRN const arg0,
517 ...
519
528__parser__(constructor,static)
531 MK_BAC const args
533
541__parser__(constructor)
544 MK_BFLN const bfl
546
562__parser__(constructor)
565 MK_BFL const bfl
567
584__parser__(internal)
587 MK_BFL const bfl,
588 MK_NUM const num
590
594__parser__(internal)
597 MK_BFL const bfl
599
605__parser__(destructor)
608 MK_BFL bfl
610
611__parser__pop__; // TOR
612
614
615// #######################################################################
616// -----------------------------------------------------------------------
622
623__parser__push__(doc-group=Misc);
624
632__parser__(doc-sort=a0)
635 MK_BFL const to,
636 MK_BFL const from
638
647__parser__(const,doc-sort=a1)
650 MK_BFL const bfl,
651 MK_BFLN const src
653
663__parser__(doc-sort=a2)
666 MK_BFL const bfl,
667 MK_BFL const source,
668 MK_NUM position
670
689 MK_BFLN const bfl,
690 MK_STRN const str,
691 MK_NUM const len __parser__(default=-1),
692 MK_NUM const startindex __parser__(default=0)
694
702 MK_BFL bfl
704
713__parser__(class-overload=MkObjectToString)
716 MK_BFLN const bfl
718
725__parser__(template-required,no-rpc,keep,no-static)
728 MK_BFLN const bfl
730
739__parser__(internal,template-required)
742 MK_BFLN const bfl,
743 bool const unique
745
762 MK_BFLN const bfl
764
778 MK_BFLN const bfl,
779 MK_BFLN const bfl2
781
789 MK_BFL const bfl
791
805 MK_BFL const bfl,
806 MK_NUM const num
808
817 MK_BFLN const bfl
819
820#define MkBufferListSizeI(bfl) (bfl)->cursize
821
823__parser__(constructor)
826 MK_STRN const pattern_match
828
829__parser__pop__; // Misc
830
832
833// #######################################################################
834// -----------------------------------------------------------------------
843
844__parser__push__(doc-group=Append);
845
855 MK_BFL const bfl,
856 MK_BFL const addBufL,
857 MK_NUM position __parser__(default=-1)
859
866__parser__(arg-type-vcv=argc@argv)
869 MK_BFL const bfl,
870 MK_NUM const argc,
871 MK_STRN const * const argv
873
883 MK_BFL const bfl,
884 MK_STRN arg0,
885 va_list var_list
887
896 MK_BFL const bfl,
897 MK_STRN arg0,
898 ...
900
909 MK_BFL const bfl,
910 MK_BAC const args
912
920 MK_BFL const bfl,
921 MK_I8 const val
923
928 MK_BFL const bfl,
929 MK_BOL const val
931
936 MK_BFL const bfl,
937 MK_I16 const val
939
944 MK_BFL const bfl,
945 MK_I32 const val
947
952 MK_BFL const bfl,
953 MK_FLT const val
955
960 MK_BFL const bfl,
961 MK_I64 const val
963
968 MK_BFL const bfl,
969 MK_LONG const val
971
976 MK_BFL const bfl,
977 MK_DBL const val
979
981__parser__(flags=public-internal)
985 MK_BFL const bfl,
986 MK_STRN const val
988
993 MK_BFL const bfl,
994 MkBinaryR const val
996
1002 MK_BFL const bfl,
1003 MK_BUF const val
1005
1020 MK_BFL const bfl,
1021 MK_BUF const addBuf,
1022 MK_NUM position __parser__(default=-1)
1024
1033 MK_BFL const bfl,
1034 MK_FST const printfmt,
1035 va_list var_list
1037
1043MK_EXTERN void MK_DECL
1046 MK_BFL const bfl,
1047 MK_FST const printfmt,
1048 ...
1050
1052MK_EXTERN void MK_DECL
1055 MK_BFL const bfl,
1056 MkStringR const val
1058
1059__parser__pop__; // Append
1060
1062
1063// #######################################################################
1064// -----------------------------------------------------------------------
1075
1076__parser__push__(doc-group=Check);
1077
1092 MK_BFL const bfl,
1093 MK_STRN const opt,
1094 bool const onlyFirst __parser__(default=false)
1096
1099// [MkBufferListCheckOptionBOL-example]
1102 MK_BFL const bfl,
1103 MK_STRN const opt,
1104 bool const defval __parser__(default=false),
1105 bool const onlyFirst __parser__(default=true),
1106 bool * const val_out
1108// [MkBufferListCheckOptionBOL-example]
1109
1110#define MkBufferListCheckOptionO_3E(bfl,opt,val_out) MkErrorCheck(MkBufferListCheckOptionBOL(bfl,opt,false,true,val_out))
1111
1128 MK_BFL const bfl,
1129 MK_STRN const opt,
1130 MK_I8 const defval __parser__(default=0),
1131 bool const onlyFirst __parser__(default=true),
1132 MK_I8 * const val_out
1134
1138 MK_BFL const bfl,
1139 MK_STRN const opt,
1140 MK_I16 const defval __parser__(default=0),
1141 bool const onlyFirst __parser__(default=true),
1142 MK_I16 * const val_out
1144
1148 MK_BFL const bfl,
1149 MK_STRN const opt,
1150 MK_I32 const defval __parser__(default=0),
1151 bool const onlyFirst __parser__(default=true),
1152 MK_I32 * const val_out
1154
1155#define MkBufferListCheckOptionI_3E(bfl,opt,val_out) MkErrorCheck(MkBufferListCheckOptionI32(bfl,opt,0,true,val_out))
1156
1160 MK_BFL const bfl,
1161 MK_STRN const opt,
1162 MK_FLT const defval __parser__(default=0),
1163 bool const onlyFirst __parser__(default=true),
1164 MK_FLT * const val_out
1166
1170 MK_BFL const bfl,
1171 MK_STRN const opt,
1172 MK_I64 const defval __parser__(default=0),
1173 bool const onlyFirst __parser__(default=true),
1174 MK_I64 * const val_out
1176
1180 MK_BFL const bfl,
1181 MK_STRN const opt,
1182 MK_DBL const defval __parser__(default=0),
1183 bool const onlyFirst __parser__(default=true),
1184 MK_DBL * const val_out
1186
1196 MK_BFL const bfl,
1197 MK_STRN const opt,
1198 MK_STRN const defval __parser__(default=S#""),
1199 bool const onlyFirst __parser__(default=true),
1200 MK_STRN * const val_out
1202
1208 MK_BFL const bfl,
1209 MK_STRN const opt,
1210 MK_BUF const defval __parser__(default=NULL),
1211 bool const onlyFirst __parser__(default=true),
1212 MK_BUF * const val_out
1214
1215__parser__pop__; // Check
1216
1218
1219// #######################################################################
1220// -----------------------------------------------------------------------
1229
1230__parser__push__(doc-group=Index);
1231
1240__parser__(doc-sort=a0)
1243 MK_BFL const bfl,
1244 const MK_NUM index,
1245 const MK_NUM numitems __parser__(default=1),
1246 const bool doDelete __parser__(default=true)
1248
1264 MK_BFL const bfl,
1265 MK_NUM const index __parser__(default=0),
1266 MK_BUF * const val_out
1268
1282__parser__(doc-sort=get-0)
1285 MK_BFLN const bfl,
1286 MK_NUM const index,
1287 MK_BUF * const val_out
1289
1300__parser__(doc-sort=set-0)
1303 MK_BFL const bfl,
1304 MK_NUM const index,
1305 MK_BUF const buf
1307
1323__parser__(no-type-extension,doc-sort=get-1)
1326 MK_BFL const bfl,
1327 MK_NUM index
1329
1330
1341__parser__(no-type-extension,doc-sort=set-1)
1344 MK_BFL const bfl,
1345 MK_NUM const index,
1346 MK_BUF const buf
1348
1357__parser__(no-type-extension,doc-sort=get-2)
1360 MK_BFL const bfl,
1361 MK_NUM const index
1363
1372__parser__(no-type-extension,doc-sort=set-2)
1375 MK_BFL const bfl,
1376 MK_NUM const index,
1377 MK_STRN const str
1379
1380__parser__pop__; // Index
1381
1383
1384// #######################################################################
1385// -----------------------------------------------------------------------
1390
1391__parser__push__(doc-group=Log);
1392
1403__parser__(const,class-overload=MkObjectLog)
1406 MK_BFLN bfl ,
1407 MK_OBJN const fmtobj __parser__(default=NULL),
1408 MK_DBG const debug __parser__(default=0),
1409 MK_STRN const callfunc __parser__(default=F#FUNC),
1410 MK_I32 const lvl __parser__(default=0)
1412
1422 MK_BFLN const bfl ,
1423 MK_STRN const varname __parser__(default=S#"bfl"),
1424 MK_OBJN fmtobj __parser__(default=NULL),
1425 MK_STRN const callfunc __parser__(default=F#FUNC)
1427
1437 MK_BFLN const bfl,
1438 MK_STRN const varname __parser__(default=S#"bfl"),
1439 MK_OBJN fmtobj __parser__(default=NULL),
1440 MK_STRN const callfunc __parser__(default=F#FUNC)
1442
1452 MK_BFLN const bfl,
1453 MK_STRN const varname __parser__(default=S#"bfl"),
1454 MK_OBJN fmtobj __parser__(default=NULL),
1455 MK_STRN const callfunc __parser__(default=F#FUNC)
1457
1459
1461
#define MkBufferListS_bls_size
ILS size
void MkBufferListAppendBOL_RT(MK_RT mkrt, MK_BFL const bfl, MK_BOL const val)
append a native PRIMITIVE TYPE object to a MkBufferListC …
void MkBufferListAppendI16_RT(MK_RT mkrt, MK_BFL const bfl, MK_I16 const val)
append a native PRIMITIVE TYPE object to a MkBufferListC …
void MkBufferListAppendG_RT(MK_RT mkrt, MK_BFL const bfl, MK_LONG const val)
append a native PRIMITIVE TYPE object to a MkBufferListC …
void MkBufferListAppendSTR_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN const val)
append a native PRIMITIVE TYPE object to a MkBufferListC …
void MkBufferListAppendStringR_RT(MK_RT mkrt, MK_BFL const bfl, MkStringR const val)
append a native PRIMITIVE TYPE object to a MkBufferListC …
MK_BFL MkBufferListAppendLA_RT(MK_RT mkrt, MK_BFL const bfl, MK_BAC const args)
append a variable number of MkBufferC object's to an MkBufferListC object using an other MkBufferList...
MK_BFL MkBufferListAppendVC_RT(MK_RT mkrt, MK_BFL const bfl, MK_NUM const argc, MK_STRN const *const argv)
append a argc/argv list of strings to an MkBufferListS object …
void MkBufferListAppendBIN_RT(MK_RT mkrt, MK_BFL const bfl, MkBinaryR const val)
append a native PRIMITIVE TYPE object to a MkBufferListC …
void MkBufferListAppendI64_RT(MK_RT mkrt, MK_BFL const bfl, MK_I64 const val)
append a native PRIMITIVE TYPE object to a MkBufferListC …
void MkBufferListAppendDBL_RT(MK_RT mkrt, MK_BFL const bfl, MK_DBL const val)
append a native PRIMITIVE TYPE object to a MkBufferListC …
void MkBufferListAppendBUF_RT(MK_RT mkrt, MK_BFL const bfl, MK_BUF const val)
append a native PRIMITIVE TYPE object to a MkBufferListC …
void MkBufferListAppendUP_RT(MK_RT mkrt, MK_BFL const bfl, MK_BUF const addBuf, MK_NUM position)
append a MkBufferC item into an MkBufferListC object on position …
void MkBufferListAppendVL_RT(MK_RT mkrt, MK_BFL const bfl, MK_FST const printfmt, va_list var_list)
append an printf like format object to the end of an MkBufferListS object …
void MkBufferListAppendI8_RT(MK_RT mkrt, MK_BFL const bfl, MK_I8 const val)
append a native PRIMITIVE TYPE object to a MkBufferListC …
void MkBufferListAppendV_RT(MK_RT mkrt, MK_BFL const bfl, MK_FST const printfmt,...)
append an printf like format object to the end of an MkBufferListS object …
MK_BFL MkBufferListAppendLP_RT(MK_RT mkrt, MK_BFL const bfl, MK_BFL const addBufL, MK_NUM position)
copy a MkBufferListS list into an MkBufferListS object on position …
void MkBufferListAppendFLT_RT(MK_RT mkrt, MK_BFL const bfl, MK_FLT const val)
append a native PRIMITIVE TYPE object to a MkBufferListC …
MK_BFL MkBufferListAppendVA_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN arg0,...)
append a variable number of strings to an MkBufferListS object …
void MkBufferListAppendI32_RT(MK_RT mkrt, MK_BFL const bfl, MK_I32 const val)
append a native PRIMITIVE TYPE object to a MkBufferListC …
MK_BFL MkBufferListAppendVAL_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN arg0, va_list var_list)
append a variable number of strings to an MkBufferListS object …
enum MkErrorE MkBufferListCheckOptionBOL_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN const opt, bool const defval, bool const onlyFirst, bool *const val_out)
search for opt in MkBufferListS list and fill var with opt_argument or the defval value …
enum MkErrorE MkBufferListCheckOptionI8_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN const opt, MK_I8 const defval, bool const onlyFirst, MK_I8 *const val_out)
search for opt in MkBufferListS list and fill var with opt_argument or the defval value …
enum MkErrorE MkBufferListCheckOptionI16_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN const opt, MK_I16 const defval, bool const onlyFirst, MK_I16 *const val_out)
search for opt in MkBufferListS list and fill var with opt_argument or the defval value …
enum MkErrorE MkBufferListCheckOptionDBL_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN const opt, MK_DBL const defval, bool const onlyFirst, MK_DBL *const val_out)
search for opt in MkBufferListS list and fill var with opt_argument or the defval value …
enum MkErrorE MkBufferListCheckOptionI32_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN const opt, MK_I32 const defval, bool const onlyFirst, MK_I32 *const val_out)
search for opt in MkBufferListS list and fill var with opt_argument or the defval value …
enum MkErrorE MkBufferListCheckOptionSTR_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN const opt, MK_STRN const defval, bool const onlyFirst, MK_STRN *const val_out)
search for opt in MkBufferListS list and fill var with opt_argument or the defval value …
enum MkErrorE MkBufferListCheckOptionBUF_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN const opt, MK_BUF const defval, bool const onlyFirst, MK_BUF *const val_out)
search for opt in MkBufferListS list and fill var with opt_argument or the defval value …
bool MkBufferListCheckOption_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN const opt, bool const onlyFirst)
search for boolean option in MkBufferListS list and return MK_BOL value …
enum MkErrorE MkBufferListCheckOptionI64_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN const opt, MK_I64 const defval, bool const onlyFirst, MK_I64 *const val_out)
search for opt in MkBufferListS list and fill var with opt_argument or the defval value …
enum MkErrorE MkBufferListCheckOptionFLT_RT(MK_RT mkrt, MK_BFL const bfl, MK_STRN const opt, MK_FLT const defval, bool const onlyFirst, MK_FLT *const val_out)
search for opt in MkBufferListS list and fill var with opt_argument or the defval value …
static MK_BFL MkBufferListHandleResolve_RT(MK_RT mkrt, MK_HDL const netHdl)
Handle-Resolve-Slot - return a MkBufferListC from netHdl or MK_NULL if invalid…
static MK_HDL MkBufferListHandleGet_RT(MK_RT mkrt, MK_BFL const bfl)
Handle-Get-Slot - returns a export-hdl to the MkBufferListC useable for external storage
static MK_BFL MkBufferListGetNull(void)
Null-Slot - return a MkBufferListC typed NULL instance …
static bool MkBflCheck(MK_MNGN mng)
check MkBufferListS -> MkObjectS::signature …
static MK_BFL MkBfl(MK_MNG mng)
cast a unknown-object into an MkBufferListS pointer or NULL if not possible
static bool MkBflCheckO(MK_OBJN obj)
check MkBufferListS -> MkObjectS::signature …
static MK_BFLN MkBflN(MK_MNGN mng)
(const) cast a unknown-object into an MkBufferListS pointer or NULL if not possible
enum MkErrorE MkBufferListIndexGet_RT(MK_RT mkrt, MK_BFLN const bfl, MK_NUM const index, MK_BUF *const val_out)
get (read only) the index object from bfl …
MK_BUF MkBufferListIndexGetBUF_RT(MK_RT mkrt, MK_BFL const bfl, MK_NUM index)
get the index element from MkBufferListC ... if not available… create it. …
enum MkErrorE MkBufferListIndexDelete_RT(MK_RT mkrt, MK_BFL const bfl, const MK_NUM index, const MK_NUM numitems, const bool doDelete)
delete the index'th list item from the MkBufferListS object …
void MkBufferListIndexSetBUF_RT(MK_RT mkrt, MK_BFL const bfl, MK_NUM const index, MK_BUF const buf)
set the index element from MkBufferListC ... if not available… createspace …
void MkBufferListIndexSetSTR_RT(MK_RT mkrt, MK_BFL const bfl, MK_NUM const index, MK_STRN const str)
set the index element from MkBufferListC ... to string… if not available… create space …
enum MkErrorE MkBufferListIndexSet_RT(MK_RT mkrt, MK_BFL const bfl, MK_NUM const index, MK_BUF const buf)
set the index object from bfl …
enum MkErrorE MkBufferListIndexExtract_RT(MK_RT mkrt, MK_BFL const bfl, MK_NUM const index, MK_BUF *const val_out)
extract (read & delete) the index object from bfl …
MK_STRN MkBufferListIndexGetSTR_RT(MK_RT mkrt, MK_BFL const bfl, MK_NUM const index)
get the index element from MkBufferListC ... as string. …
void MkBufferListLogSS_RT(MK_RT mkrt, MK_BFLN const bfl, MK_STRN const varname, MK_OBJN fmtobj, MK_STRN const callfunc)
write the very-short-summary of the MkBufferListC to MkLogFileC (default: stderr) …
void MkBufferListLog_RT(MK_RT mkrt, MK_BFLN bfl, MK_OBJN const fmtobj, MK_DBG const debug, MK_STRN const callfunc, MK_I32 const lvl)
write the detail-summary of the MkBufferListC to MkLogFileC (default: stderr) …
void MkBufferListLogSSS_RT(MK_RT mkrt, MK_BFLN const bfl, MK_STRN const varname, MK_OBJN fmtobj, MK_STRN const callfunc)
write the very-very-short-summary of the MkBufferListC to MkLogFileC (default: stderr) …
void MkBufferListLogS_RT(MK_RT mkrt, MK_BFLN const bfl, MK_STRN const varname, MK_OBJN fmtobj, MK_STRN const callfunc)
write the short-summary of the MkBufferListC to MkLogFileC (default: stderr) …
#define MkBufferListSizeI(bfl)
MK_BFL MkBufferListSort_RT(MK_RT mkrt, MK_BFL const bfl)
sort a MkBufferListC …
MK_BFL MkBufferListFileGlob_RT(MK_RT mkrt, MK_STRN const pattern_match)
create a new MkBufferListC using the result from a filesystem glob operation …
MK_STRN MkBufferListToString_RT(MK_RT mkrt, MK_BFLN const bfl)
get a string representation of the bfl
MK_STRN_A MkBufferListToStringList_RT(MK_RT mkrt, MK_BFLN const bfl, bool const unique)
get a string-list representation of the bfl
void MkBufferListMove_RT(MK_RT mkrt, MK_BFL const to, MK_BFL const from)
move all internal data from from to the end of to …
MK_NUM MkBufferListSearchC_RT(MK_RT mkrt, MK_BFLN const bfl, MK_STRN const str, MK_NUM const len, MK_NUM const startindex)
search MK_STR item from a MkBufferListS object starting at startindex …
MK_I32 MkBufferListCmp_RT(MK_RT mkrt, MK_BFLN const bfl, MK_BFLN const bfl2)
compare two buffer-list …
MK_BFL MkBufferListPositionMerge_RT(MK_RT mkrt, MK_BFL const bfl, MK_BFL const source, MK_NUM position)
merge a MkBufferListS list into an MkBufferListS object on position …
void MkBufferListCopy_RT(MK_RT mkrt, MK_BFL const bfl, MK_BFLN const src)
copy all internal data from src to tgt …
MK_BUF MkBufferListToBuffer_RT(MK_RT mkrt, MK_BFLN const bfl)
Export a bfl into an MkBufferC using an MkBufferStreamC …
void MkBufferListReserve_RT(MK_RT mkrt, MK_BFL const bfl, MK_NUM const num)
reserve num items in a MkBufferListC object …
MK_NUM MkBufferListSize_RT(MK_RT mkrt, MK_BFLN const bfl)
get the number-of-items in the bfl …
MK_BFL MkBufferListReset_RT(MK_RT mkrt, MK_BFL bfl)
reset a MkBufferListC object …
MK_NAT_LIST MkBufferListToList_RT(MK_RT mkrt, MK_BFLN const bfl)
get a target-language list representation of the bfl …
MK_BFL MkBufferListCreateLA_RT(MK_RT mkrt, MK_BAC const args)
Constructs a MkBufferListC instance with an other MkBufferListC OR a list of arguments (only in NON C...
MK_BFL MkBufferListCreateTLS_RT(MK_RT mkrt, MK_STRN const tlsName, bool const resetB)
same as BufferListCreate but require no cleanup …
void MkBufferListInit_RT(MK_RT mkrt, MK_BFL const bfl, MK_NUM const num)
initialize an already allocated MkBufferListC
MK_BFL MkBufferListCreateVAL_RT(MK_RT mkrt, MK_STRN const arg0, va_list var_list)
Constructs a MkBufferListC instance with a va_list argument …
#define MkBufferListCreateTLS_inout_T(name, num, inout)
create a MkBufferListC instance as thread-local-storage OR reuse inout if possible…
void MkBufferListFree_RT(MK_RT mkrt, MK_BFL const bfl)
free the internal data but keep the outher shell alive
void MkBufferListDelete_RT(MK_RT mkrt, MK_BFL bfl)
Destructor - delete a MkBufferListC instance …
MK_BFL MkBufferListDup_RT(MK_RT mkrt, MK_BFLN const bfl)
Dup-Constructor - create a new MkBufferListC instance as copy from an existing MkBufferListC instance...
MK_BFL MkBufferListMerge_RT(MK_RT mkrt, MK_BFL const bfl)
Merge-Constructor - constructs a MkBufferListC instance as a merge from an existing MkBufferListC ins...
#define MkBufferListCreateTLS_T(name, num)
create a MkBufferListC instance as thread-local-storage …
#define MkBufferListCreateSTATIC_T(name, num)
create a MkBufferListC instance on static-storage …
MK_BFL MkBufferListCreateVA_RT(MK_RT mkrt, MK_STRN const arg0,...)
Constructs a MkBufferListC instance with a varargs argument that ends with MK_NULL …
#define MkBufferListCreateLOCAL_T(name, num)
create a MkBufferListC instance on local-memory and return an pointer as instance …
MK_BFL MkBufferListCreateVC_RT(MK_RT mkrt, MK_NUM const argc, MK_STRN const *argv)
Constructs a MkBufferListC instance with a argc/argv data from a list of strings …
MK_BFL MkBufferListCreate_RT(MK_RT mkrt, MK_NUM const size)
Constructs a MkBufferC instance with size storage…
#define BEGIN_MK_C_DECLS
void * MK_MACRO_TYP
helper-type used to declare a prototype for a macro
#define MK_DECL
#define mk_inline
#define MK_EXTERN
static library
#define END_MK_C_DECLS
#define MK_NULL
The Programming-Language-Micro-Kernel (PLMK) NULL value as MK_NULL in C …
MkErrorE
collection for the different error-codes …
#define __parser__pop__
parser: stop apply a list of local attributes to a block of code …
#define __parser__push__(...)
parser: start apply a list of local attributes to a block of code …
#define __parser__(...)
parser: apply an attribute to an object in local scope …
const MK_PTRB * MK_MNGN
const - a managed object pointer, datatype will be checked at runtime
int32_t MK_NUM
array size data-type ('num' items in array …
float MK_FLT
4 byte float data-type
const MK_STRB * MK_STRN
constant string pointer data-type
MK_PTRB * MK_MNG
managed object pointer, datatype will be checked at runtime
MK_STRB const * MK_FST
const format string pointer data-type
signed char MK_I8
1 byte byte data-type
signed long long MK_I64
8 byte wide integer data-type
void * MK_NAT_LIST
unsigned char MK_BOL
1 byte boolean data-type
long MK_LONG
4/8 byte long data-type
signed short int MK_I16
2 byte short data-type
double MK_DBL
8 byte double data-type
int32_t MK_HDL
4 byte int handle data-type
signed int MK_I32
4 byte integer data-type
int MK_DBG
debug-level data-type …
#define MkSanitizeCheck(_root, _m)
#define MkSanitizeCheckO(_root, _o)
#define MkObjectHandleResolve(...)
#define MkObjectHandleGet(...)
#define MkOBJ(x)
cast a known-object into an MkObjectS pointer
#define MkObjectLog(...)
#define MkObjectToString(...)
#define MK_ATTR_STATIC
#define MK_ATTR_RT_INSTANCE
#define MK_PARSER_RT
#define MK_RT_ATTR_FORMAT_2
#define MK_ATTR_RT_STATIC
array of MK_STRN values …
binary data default format …
The CLASS used to store a list of MkBufferS items into a flat array…
MK_NUM allocsize
the maximum allocated number of elements cursize <= allocsize <= size
MK_NUM size
size of data
union MkBufferListS::@0 super
MK_BUF * data
pointer to the allocated memory (fixed position)
struct MkObjectS obj
MK_BUF bls[MkBufferListS_bls_size]
ILS storage
MK_NUM cursize
the currently used number of allocated MkBufferC objects (e.g. 0 <= cursize <= size)
The ABSTRACT-CLASS used to store a native-type-data-item defined by PRIMITIVE TYPE …
object header …
string data default format …