forked from LeenkxTeam/LNXSDK
28 lines
1.6 KiB
C
28 lines
1.6 KiB
C
#ifndef HX_ERROR_CODES
|
|
#define HX_ERROR_CODES
|
|
|
|
// --- Exteral constants, used inline
|
|
#define HX_INVALID_CAST Dynamic(HX_CSTRING("Invalid Cast"))
|
|
#define HX_INVALID_INTERFACE Dynamic(HX_CSTRING("Object does not implement interface"))
|
|
#define HX_INDEX_OUT_OF_BOUNDS Dynamic(HX_CSTRING("Index Out of Bounds"))
|
|
#define HX_INVALID_CONSTRUCTOR Dynamic(HX_CSTRING("Invalid constructor"))
|
|
#define HX_INVALID_ENUM_CONSTRUCTOR(_enum_name, _constructor_name) \
|
|
Dynamic(HX_CSTRING("Invalid enum constructor for ") + \
|
|
HX_CSTRING(_enum_name) + \
|
|
HX_CSTRING(": ") + \
|
|
_constructor_name)
|
|
#define HX_INVALID_OBJECT Dynamic(HX_CSTRING("Invalid object"))
|
|
#define HX_INVALID_ARG_COUNT Dynamic(HX_CSTRING("Invalid Arg Count"))
|
|
#define HX_NULL_FUNCTION_POINTER Dynamic(HX_CSTRING("Null Function Pointer"))
|
|
#define HX_INVALID_ENUM_ARG_COUNT(_enum_name, _constructor_name, _count, _expected) \
|
|
Dynamic(HX_CSTRING("Invalid enum arg count for ") + \
|
|
HX_CSTRING(_enum_name) + \
|
|
HX_CSTRING(".") + \
|
|
_constructor_name + \
|
|
HX_CSTRING(": expected ") + \
|
|
::String(_expected) + \
|
|
HX_CSTRING(", got ") + \
|
|
::String(_count))
|
|
|
|
#endif
|