theKernel 10.0
Loading...
Searching...
No Matches
MkErrorC_TOR_C_API

MkErrorC - various functions to 'create' and 'delete' a MkErrorSMore...

+ Collaboration diagram for MkErrorC_TOR_C_API:

Functions

void MkErrorDelete_RT (MK_RT mkrt, MK_ERR err)
 Destructor - delete a MkErrorS object …
 
MK_ERR MkErrorDup_RT (MK_RT mkrt, MK_ERRN const srce)
 Dup-Constructor - create a new MkErrorC instance as copy from an existing MkErrorC instance …
 
void MkErrorCopy_RT (MK_RT mkrt, MK_ERR dest, MK_ERRN const srce)
 Copy-Constructor - sync an existing MkErrorC instance with the values from an existing MkErrorC instance …
 

MkErrorC - MkErrorC_TOR_C_API - overload

#define MkErrorDup_NULL(...)
 
#define MkErrorDup(...)
 
#define MkErrorDup_0E()
 
#define MkErrorDup_1M(m)
 
#define MkErrorDelete(x)
 
#define MkErrorDelete_0E()
 
#define MkErrorDelete_1M(m)
 
#define MkErrorCopy_NULL(...)
 
#define MkErrorCopy(...)
 
#define MkErrorCopy_1E(...)
 
#define MkErrorCopy_2M(m, ...)
 

Detailed Description

MkErrorC - various functions to 'create' and 'delete' a MkErrorS

Macro Definition Documentation

◆ MkErrorCopy

#define MkErrorCopy ( ...)
Value:
void MkErrorCopy_RT(MK_RT mkrt, MK_ERR dest, MK_ERRN const srce)
Copy-Constructor - sync an existing MkErrorC instance with the values from an existing MkErrorC insta...
#define MK_RT_CALL

Definition at line 1310 of file kernel_overload_mk.h.

◆ MkErrorCopy_1E

#define MkErrorCopy_1E ( ...)
Value:
MkErrorCopy(&MkERROR,__VA_ARGS__)
#define MkERROR
#define MkErrorCopy(...)

Definition at line 1311 of file kernel_overload_mk.h.

◆ MkErrorCopy_2M

#define MkErrorCopy_2M ( m,
... )
Value:
#define MkErrorFORMAT_1M(m)

Definition at line 1312 of file kernel_overload_mk.h.

◆ MkErrorCopy_NULL

#define MkErrorCopy_NULL ( ...)
Value:
#define MK_RT_CALL_NULL

Definition at line 1309 of file kernel_overload_mk.h.

◆ MkErrorDelete

#define MkErrorDelete ( x)
Value:
void MkErrorDelete_RT(MK_RT mkrt, MK_ERR err)
Destructor - delete a MkErrorS object …
#define MkObjectDeleteToNull(fct, NS, x)

Definition at line 1304 of file kernel_overload_mk.h.

◆ MkErrorDelete_0E

#define MkErrorDelete_0E ( )
Value:
#define MkErrorDelete(x)

Definition at line 1305 of file kernel_overload_mk.h.

◆ MkErrorDelete_1M

#define MkErrorDelete_1M ( m)
Value:

Definition at line 1306 of file kernel_overload_mk.h.

◆ MkErrorDup

#define MkErrorDup ( ...)
Value:
MK_ERR MkErrorDup_RT(MK_RT mkrt, MK_ERRN const srce)
Dup-Constructor - create a new MkErrorC instance as copy from an existing MkErrorC instance …

Definition at line 1299 of file kernel_overload_mk.h.

◆ MkErrorDup_0E

#define MkErrorDup_0E ( )
Value:
#define MkErrorDup(...)

Definition at line 1300 of file kernel_overload_mk.h.

◆ MkErrorDup_1M

#define MkErrorDup_1M ( m)
Value:

Definition at line 1301 of file kernel_overload_mk.h.

◆ MkErrorDup_NULL

#define MkErrorDup_NULL ( ...)
Value:

Definition at line 1298 of file kernel_overload_mk.h.

Function Documentation

◆ MkErrorCopy_RT()

void MkErrorCopy_RT ( MK_RT mkrt,
MK_ERR dest,
MK_ERRN const srce )

Copy-Constructor - sync an existing MkErrorC instance with the values from an existing MkErrorC instance …

See also
MkObjDup MkErrorDelete

◆ MkErrorDelete_RT()

void MkErrorDelete_RT ( MK_RT mkrt,
MK_ERR err )

Destructor - delete a MkErrorS object …

There are two different ways to delete an instance:

ObjectDisposeto free the internal data but keep the outher shell alive - this is called a SOFT-DELETE
ObjectDelete to delete the outher shell including the internal data - this is called a HARD-DELETE
Attention
  1. The internal memory will be freed and the object-pointer will be set to NULL. If the object-pointer is already NULL nothing will be done.
  2. For a programming language without HARD-Delete support, the "Delete" method is assigned to a SOFT-Delete.
  3. For a programming language without garbage collection, a SOFT-delete without a HARD-delete causes a small memory loss (C++: ~32 bytes).
  4. After a SOFT-delete, the outher shell is still alive, but cannot be used. Any access to this shell generates an HDL-null-exception, but this exception can be caught. This is important for C++ as it prevents a core dump.
  5. On HARD-delete read more at MkSelfDeleteForce
See also
BufferDup ObjectDelete

◆ MkErrorDup_RT()

MK_ERR MkErrorDup_RT ( MK_RT mkrt,
MK_ERRN const srce )

Dup-Constructor - create a new MkErrorC instance as copy from an existing MkErrorC instance …

The new instance belongs to the caller and may have to be released if necessary. A manual release using ErrorDelete is always possible, but the instance can no longer be used afterwards.

Returns
The newly created MkErrorC instance, the instance is owned by the caller
See also
MkObjDup MkErrorDelete