1#ifndef __DCL_EXCEPTION_H__
2#define __DCL_EXCEPTION_H__
4#ifndef __DCL_CONFIG_H__
16#ifndef __DCL_OBJECT_H__
19#ifndef __DCL_STRING_H__
68#define ERROR_VALUE_MASK 0x0fffffff
69#define ERRNO_ERROR_MASK 0x00000000
70#define WINAPI_ERROR_MASK 0x10000000
71#define DCL_ERROR_MASK 0x20000000
72#define WINAPI_ERROR(n) WINAPI_ERROR_MASK | n
73#define DCL_ERROR(n) DCL_ERROR_MASK | n
78 uint32_t
errorNo()
const {
return __errorNo; }
83 #define __EHANDLE ERROR_INVALID_HANDLE
84 #define __EPARAM ERROR_INVALID_PARAMETER
85 #define __ENOMEM ERROR_NOT_ENOUGH_MEMORY
87 #define __EHANDLE EINVAL
88 #define __EPARAM EENVAL
89 #define __ENOMEM ENOMEM
105 IOException(
const String& _name, uint32_t _errorNo);
106 IOException(
const String& _name,
const String& _message);
126 size_t __sourceOffset;
147 NumericConvertException(
148 const String& _number,
154 NumericConvertException(
156 const String& _number,
162 Error errorCode()
const {
return __error; }
#define DECLARE_CLASSINFO(class_name)
static String format(const char_t *_filename, unsigned int _line, const char_t *_expr, const char_t *_message)
AssertError(const char_t *_filename, unsigned int _line, const char_t *_expr, const char_t *_message)
Exception(Exception *_cause=NULL)
String toStringAll() const
const Exception * cause() const
GenerialException(Exception *_cause)
IOException(const String &_name, Exception *_cause)
InvalidIndexException(const String &_key)
virtual String toString() const
ParseException(const String &_message)
SysError(Exception *_cause=NULL)