Loading...
Searching...
No Matches
Go to the documentation of this file.
2#ifndef __HASHA_INTERNAL_HADEFS_H
3#define __HASHA_INTERNAL_HADEFS_H
6#define HA_DEPRECATED(msg)
9#if !defined(HA_DEPRECATED)
10#define HA_DEPRECATED(msg) __attribute__((deprecated(msg)))
20#define HA_EXPORT __declspec(dllexport)
22#define HA_EXPORT __declspec(dllimport)
26#define HA_EXPORT __attribute__((visibility("default")))
33#if !defined(HA_PUBFUN)
34#define HA_PUBFUN HA_EXPORT
37#if !defined(HA_INL_FUN)
39#define HA_INL_FUN __forceinline
40#elif defined(__GNUC__) || defined(__clang__)
41#define HA_INL_FUN __inline__ __attribute__((always_inline))
43#define HA_INL_FUN inline
47#if !defined(HA_PRVFUN)
48#define HA_PRVFUN static HA_INL_FUN
51#if !defined(HA_HDR_PUBFUN)
53#define HA_HDR_PUBFUN HA_PRVFUN
56#if !defined(HA_EXTERN_C)
57#if defined(__cplusplus)
58#define HA_EXTERN_C extern "C"
64#if !defined(HA_EXTERN_C_BEG)
65#if defined(__cplusplus)
66#define HA_EXTERN_C_BEG \
70#define HA_EXTERN_C_BEG
74#if !defined(HA_EXTERN_C_END)
75#if defined(__cplusplus)
76#define HA_EXTERN_C_END }
78#define HA_EXTERN_C_END
92#define ha_in_range(x, min, max) ((x) >= (min) && (x) <= (max))
94#if defined(__cplusplus)
95#define ha_enum_base(T) : T
97#define ha_enum_base(T)
100#if !defined(__cplusplus)
101#define ha_register register
107#define __ha_alias2(func) __attribute__((alias(func)))