ML Reference
mlUtilsSystemC.h File Reference
#include "mlUtilities.h"
#include "mlConfig.h"
#include "mlTypeDefs.h"
#include <ThirdPartyWarningsDisable.h>
#include <cstdlib>
#include <cstdio>
#include <ThirdPartyWarningsRestore.h>

Go to the source code of this file.

#define strcasecmp(a, b)   _stricmp((a),(b))
 Resolving platform incompatibilities of string functions. More...
 
#define strncasecmp(a, b, c)   _strnicmp((a),(b),(c))
 Implement strncasecmp by providing the internal WIN32 API-version. More...
 
#define strtold(a, b)   strtod((a),(b))
 Implement strtold on WIN32 platforms by strtod since long double and double are identical. More...
 
ML_UTILS_EXPORT MLint64 MLint64Scan (const char *source, char **endPtr)
 Reads an MLint64 from a character string source and returns scanned value as MLint64. More...
 
ML_UTILS_EXPORT MLuint64 MLuint64Scan (const char *source, char **endPtr)
 Reads an MLuint64 from a character string source and returns scanned value as MLuint64. More...
 

Global non-constant constants for "always true" or "always false" expressions.

Pure C global definitions for mlUtils and the ML.

ML_UTILS_EXPORT int MLAlwaysTrue
 Variable that is always true (=1), but non-constant, to make it impossible for compilers to detect that it is constant. More...
 
ML_UTILS_EXPORT int MLAlwaysFalse
 Variable that is always false (=0), but non-constant, to make it impossible for compilers to detect that it is constant. More...
 
ML_UTILS_EXPORT int MLAlwaysExecuted ()
 A do-nothing function call that cannot be optimized away to avoid that function bodies, etc., are optimized away, that they are considered as non-constant, and that corresponding warnings are created. More...
 

Macro Definition Documentation

◆ strcasecmp

#define strcasecmp (   a,
 
)    _stricmp((a),(b))

Resolving platform incompatibilities of string functions.

Implement strcasecmp by providing the internal WIN32 API-version.

Definition at line 76 of file mlUtilsSystemC.h.

◆ strncasecmp

#define strncasecmp (   a,
  b,
 
)    _strnicmp((a),(b),(c))

Implement strncasecmp by providing the internal WIN32 API-version.

Definition at line 79 of file mlUtilsSystemC.h.

◆ strtold

#define strtold (   a,
 
)    strtod((a),(b))

Implement strtold on WIN32 platforms by strtod since long double and double are identical.

Definition at line 83 of file mlUtilsSystemC.h.

Function Documentation

◆ MLAlwaysExecuted()

ML_UTILS_EXPORT int MLAlwaysExecuted ( )

A do-nothing function call that cannot be optimized away to avoid that function bodies, etc., are optimized away, that they are considered as non-constant, and that corresponding warnings are created.

It is needed to compile technical solutions to avoid warnings. Returns always 1. See also MLAlwaysTrue MLAlwaysFalse.

◆ MLint64Scan()

ML_UTILS_EXPORT MLint64 MLint64Scan ( const char *  source,
char **  endPtr 
)

Reads an MLint64 from a character string source and returns scanned value as MLint64.

Parameters
sourceThe string to be parsed. Leading whitespaces are ignored.
endPtrThe pointer to the first character after scanned string or to source if scan failed.
Returns
A valid 64-bit signed integer if the string could be scanned successfully; otherwise, it is returned with a value given by source.
Deprecated:
Use std::strtoll instead

◆ MLuint64Scan()

ML_UTILS_EXPORT MLuint64 MLuint64Scan ( const char *  source,
char **  endPtr 
)

Reads an MLuint64 from a character string source and returns scanned value as MLuint64.

Parameters
sourceThe string to be parsed. Leading whitespaces are ignored.
endPtrThe pointer to the first character after scanned string or to source if scan failed.
Returns
A valid 64-bit unsigned integer if the string could be scanned successfully; otherwise, it is returned with a value given by source.
Deprecated:
Use std::strtoull instead

Variable Documentation

◆ MLAlwaysFalse

ML_UTILS_EXPORT int MLAlwaysFalse
extern

Variable that is always false (=0), but non-constant, to make it impossible for compilers to detect that it is constant.

It is needed to compile technical solutions in debug/release constructs that require always false expressions, e.g., in ML_TRY / ML_CATCH expressions. It must never be set! See also MLAlwaysTrue.

◆ MLAlwaysTrue

ML_UTILS_EXPORT int MLAlwaysTrue
extern

Variable that is always true (=1), but non-constant, to make it impossible for compilers to detect that it is constant.

It is needed to compile technical solutions in debug/release constructs that require always true expressions, e.g., in ML_TRY / ML_CATCH expressions. It must never be set! See also MLAlwaysFalse.