/tags/rel-1-3-29/SWIG/Lib/std/std_except.i
Swig | 68 lines | 54 code | 14 blank | 0 comment | 0 complexity | 2cad6ed9adae967a1774c6b529476e0b MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
1#if defined(SWIGJAVA) || defined(SWIGCSHARP) 2#error "do not use this version of std_except.i" 3#endif 4 5%{ 6#include <stdexcept> 7%} 8 9#if defined(SWIG_STD_EXCEPTIONS_AS_CLASSES) 10 11namespace std { 12 struct exception 13 { 14 virtual ~exception() throw(); 15 virtual const char* what() const throw(); 16 }; 17 18 struct bad_exception : exception 19 { 20 }; 21 22 struct logic_error : exception 23 { 24 logic_error(const string& msg); 25 }; 26 27 struct domain_error : logic_error 28 { 29 domain_error(const string& msg); 30 }; 31 32 struct invalid_argument : logic_error 33 { 34 invalid_argument(const string& msg); 35 }; 36 37 struct length_error : logic_error 38 { 39 length_error(const string& msg); 40 }; 41 42 struct out_of_range : logic_error 43 { 44 out_of_range(const string& msg); 45 }; 46 47 struct runtime_error : exception 48 { 49 runtime_error(const string& msg); 50 }; 51 52 struct range_error : runtime_error 53 { 54 range_error(const string& msg); 55 }; 56 57 struct overflow_error : runtime_error 58 { 59 overflow_error(const string& msg); 60 }; 61 62 struct underflow_error : runtime_error 63 { 64 underflow_error(const string& msg); 65 }; 66} 67 68#endif