Mercurial > mm7
comparison lib/swig/swigwin-2.0.11/Lib/lua/std_except.i @ 1899:b3009adc0e2f
Adding swig, gitignore, hgignore
author | Nomad |
---|---|
date | Mon, 21 Oct 2013 10:42:27 +0200 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
1867:eb580660bbbb | 1899:b3009adc0e2f |
---|---|
1 /* ----------------------------------------------------------------------------- | |
2 * Typemaps used by the STL wrappers that throw exceptions. | |
3 * These typemaps are used when methods are declared with an STL exception | |
4 * specification, such as: | |
5 * size_t at() const throw (std::out_of_range); | |
6 * | |
7 * std_except.i | |
8 * ----------------------------------------------------------------------------- */ | |
9 | |
10 %{ | |
11 #include <stdexcept> | |
12 %} | |
13 %include <exception.i> | |
14 | |
15 namespace std | |
16 { | |
17 %ignore exception; // not sure if I should ignore this... | |
18 class exception | |
19 { | |
20 public: | |
21 exception() throw() { } | |
22 virtual ~exception() throw(); | |
23 virtual const char* what() const throw(); | |
24 }; | |
25 } | |
26 | |
27 // normally objects which are thrown are returned to the interpreter as errors | |
28 // (which potentially may have problems if they are not copied) | |
29 // therefore all classes based upon std::exception are converted to their strings & returned as errors | |
30 %typemap(throws) std::bad_exception "SWIG_exception(SWIG_RuntimeError, $1.what());" | |
31 %typemap(throws) std::domain_error "SWIG_exception(SWIG_ValueError, $1.what());" | |
32 %typemap(throws) std::exception "SWIG_exception(SWIG_SystemError, $1.what());" | |
33 %typemap(throws) std::invalid_argument "SWIG_exception(SWIG_ValueError, $1.what());" | |
34 %typemap(throws) std::length_error "SWIG_exception(SWIG_IndexError, $1.what());" | |
35 %typemap(throws) std::logic_error "SWIG_exception(SWIG_RuntimeError, $1.what());" | |
36 %typemap(throws) std::out_of_range "SWIG_exception(SWIG_IndexError, $1.what());" | |
37 %typemap(throws) std::overflow_error "SWIG_exception(SWIG_OverflowError, $1.what());" | |
38 %typemap(throws) std::range_error "SWIG_exception(SWIG_IndexError, $1.what());" | |
39 %typemap(throws) std::runtime_error "SWIG_exception(SWIG_RuntimeError, $1.what());" | |
40 %typemap(throws) std::underflow_error "SWIG_exception(SWIG_RuntimeError, $1.what());" |