Macro in stdx_common.h

X_COMMON_VERSION_MAJOR

#define X_COMMON_VERSION_MAJOR 1
Macro in stdx_common.h

X_COMMON_VERSION_MINOR

#define X_COMMON_VERSION_MINOR 0
Macro in stdx_common.h

X_COMMON_VERSION_PATCH

#define X_COMMON_VERSION_PATCH 0
Macro in stdx_common.h

X_COMPILER_NAME

#define X_COMPILER_NAME "GCC"
Macro in stdx_common.h

X_COMPILER_VERSION

#define X_COMPILER_VERSION __VERSION__
Macro in stdx_common.h

X_COMPILER_NAME

#define X_COMPILER_NAME "Microsoft Visual C/C++ Compiler"
Macro in stdx_common.h

X_COMPILER_VERSION

#define X_COMPILER_VERSION _MSC_FULL_VER
Macro in stdx_common.h

X_COMPILER_NAME

#define X_COMPILER_NAME "Clang"
Macro in stdx_common.h

X_COMPILER_VERSION

#define X_COMPILER_VERSION __clang_version__
Macro in stdx_common.h

X_COMPILER_NAME

#define X_COMPILER_NAME "Unknown"
Macro in stdx_common.h

X_COMPILER_VERSION

#define X_COMPILER_VERSION "Unknown"
Macro in stdx_common.h

X_FORCEINLINE

#define X_FORCEINLINE __forceinline
Macro in stdx_common.h

X_NOINLINE

#define X_NOINLINE __declspec(noinline)
Macro in stdx_common.h

X_NORETURN

#define X_NORETURN __declspec(noreturn)
Macro in stdx_common.h

X_ALIGN

#define X_ALIGN(n) __declspec(align(n))
Macro in stdx_common.h

X_FORCEINLINE

#define X_FORCEINLINE inline __attribute__((always_inline))
Macro in stdx_common.h

X_NOINLINE

#define X_NOINLINE __attribute__((noinline))
Macro in stdx_common.h

X_NORETURN

#define X_NORETURN __attribute__((noreturn))
Macro in stdx_common.h

X_ALIGN

#define X_ALIGN(n) __attribute__((aligned(n)))
Macro in stdx_common.h

X_LIKELY

#define X_LIKELY(x) __builtin_expect(!!(x), 1)
Macro in stdx_common.h

X_UNLIKELY

#define X_UNLIKELY(x) __builtin_expect(!!(x), 0)
Macro in stdx_common.h

X_PLAT_EXPORT

#define X_PLAT_EXPORT __declspec(dllexport)
Macro in stdx_common.h

X_PLAT_IMPORT

#define X_PLAT_IMPORT __declspec(dllimport)
Macro in stdx_common.h

PLAT_EXPORT

#define PLAT_EXPORT __attribute__((visibility("default")))
Macro in stdx_common.h

X_LITTLE_ENDIAN

#define X_LITTLE_ENDIAN 1
Macro in stdx_common.h

X_PATH_SEPARATOR

#define X_PATH_SEPARATOR '\\'
Macro in stdx_common.h

X_PATH_SEPARATOR_ALTERNATIVE

#define X_PATH_SEPARATOR_ALTERNATIVE '/'
Macro in stdx_common.h

X_PATH_SEPARATOR

#define X_PATH_SEPARATOR '/'
Macro in stdx_common.h

X_PATH_SEPARATOR_ALTERNATIVE

#define X_PATH_SEPARATOR_ALTERNATIVE '\\'
Macro in stdx_common.h

X_BIT_SET

#define X_BIT_SET(var, bit) ((var)|=(1U<<(bit)))
Macro in stdx_common.h

X_BIT_CLEAR

#define X_BIT_CLEAR(var, bit) ((var) &=~(1U<<(bit)))
Macro in stdx_common.h

X_BIT_TOGGLE

#define X_BIT_TOGGLE(var, bit) ((var)^=(1U<<(bit)))
Macro in stdx_common.h

X_BIT_CHECK

#define X_BIT_CHECK(var, bit) (((var) &(1U<<(bit)))!=0)
Macro in stdx_common.h

X_VALUE_PTR

#define X_VALUE_PTR(type, val) ((const void *) &(type){(val)})
Macro in stdx_common.h

X_VALUE_TYPE_PTR

#define X_VALUE_TYPE_PTR(type, val) ((const type *) &(type){(val)})
Struct in stdx_common.h

XPtr_t

struct XPtr_t{
  int error;
  void *ptr;
};
Macro in stdx_common.h

X_PTR_IS_ERR

#define X_PTR_IS_ERR(r) ((r).error!=0)
Macro in stdx_common.h

X_PTR_IS_OK

#define X_PTR_IS_OK(r) ((r).error==0)
Macro in stdx_common.h

X_PTR_GET_PTR

#define X_PTR_GET_PTR(r) ((r).is_error?NULL:(r).ptr)
Macro in stdx_common.h

X_PTR_GET_ERR

#define X_PTR_GET_ERR(r) ((r).error)
Macro in stdx_common.h

X_PTR_CAST

#define X_PTR_CAST(r, T) ((r).is_error?NULL:(T)(r).ptr)
Macro in stdx_common.h

_CRT_SECURE_NO_WARNINGS

#define _CRT_SECURE_NO_WARNINGS 1
Macro in stdx_common.h

X_ARRAY_COUNT

#define X_ARRAY_COUNT(a) (sizeof(a)/sizeof((a)[0]))
Macro in stdx_common.h

X_STATIC_ASSERT

#define X_STATIC_ASSERT(cond, msg) typedef char static_assert_##msg[(cond)?1:-1]
Macro in stdx_common.h

X_ASSERT

#define X_ASSERT(expr) \
do{\
if(!(expr)){\
fprintf(stderr, "Assertion failed: %s, file %s, line %d\n", #expr, __FILE__, __LINE__);\
abort();\
}\
}while(0)
Macro in stdx_common.h

X_ASSERT

#define X_ASSERT(expr) ((void)0)