1
0
mirror of https://github.com/borgesdan/xn65 synced 2024-12-29 21:54:47 +01:00
xn65/framework/xnaerror.hpp

34 lines
697 B
C++
Raw Normal View History

2024-03-26 10:32:56 -03:00
#ifndef XNA_XNAERROR_HPP
#define XNA_XNAERROR_HPP
namespace xna {
enum class XnaErrorCode {
NONE,
ARGUMENT_OUT_OF_RANGE,
ARGUMENT_IS_NULL,
INVALID_OPERATION,
2024-04-11 10:38:56 -03:00
FAILED_OPERATION,
2024-03-26 10:32:56 -03:00
OVERFLOW_OPERATION,
2024-04-07 14:06:12 -03:00
NULL_CAST,
BAD_CAST,
2024-04-25 14:51:33 -03:00
STREAM_ERROR,
2024-04-28 20:19:37 -03:00
UNINTIALIZED_RESOURCE,
2024-05-01 19:09:43 -03:00
END_OF_FILE,
2024-05-04 21:07:39 -03:00
BAD_TYPE,
WARNING_INITIALIZED_RESOURCE
2024-03-26 10:32:56 -03:00
};
inline void xna_error_apply(XnaErrorCode* source, XnaErrorCode const& value) {
if (source != nullptr)
*source = value;
}
inline bool xna_error_haserros(XnaErrorCode* source) {
2024-05-02 10:52:08 -03:00
return source != nullptr && *source != XnaErrorCode::NONE;
2024-03-26 10:32:56 -03:00
}
#define xna_error_nullarg XnaErrorCode* err = nullptr
#define xna_error_ptr_arg XnaErrorCode* err
}
#endif