author | William Roberts <williamr@symbian.org> |
Wed, 31 Mar 2010 12:33:34 +0100 | |
branch | Symbian3 |
changeset 4 | 837f303aceeb |
permissions | -rw-r--r-- |
4
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
1 |
#ifndef BOOST_THROW_EXCEPTION_HPP_INCLUDED |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
2 |
#define BOOST_THROW_EXCEPTION_HPP_INCLUDED |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
3 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
4 |
// MS compatible compilers support #pragma once |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
5 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
6 |
#if defined(_MSC_VER) && (_MSC_VER >= 1020) |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
7 |
# pragma once |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
8 |
#endif |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
9 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
10 |
// |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
11 |
// boost/throw_exception.hpp |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
12 |
// |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
13 |
// Copyright (c) 2002 Peter Dimov and Multi Media Ltd. |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
14 |
// |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
15 |
// Distributed under the Boost Software License, Version 1.0. (See |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
16 |
// accompanying file LICENSE_1_0.txt or copy at |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
17 |
// http://www.boost.org/LICENSE_1_0.txt) |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
18 |
// |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
19 |
// http://www.boost.org/libs/utility/throw_exception.html |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
20 |
// |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
21 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
22 |
#include <boost/config.hpp> |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
23 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
24 |
#ifdef BOOST_NO_EXCEPTIONS |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
25 |
# include <exception> |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
26 |
#endif |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
27 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
28 |
namespace boost |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
29 |
{ |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
30 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
31 |
#ifdef BOOST_NO_EXCEPTIONS |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
32 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
33 |
void throw_exception(std::exception const & e); // user defined |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
34 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
35 |
#else |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
36 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
37 |
template<class E> inline void throw_exception(E const & e) |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
38 |
{ |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
39 |
//Adding this #if statement for WINSCW because currently winscw compiler does not support catching of const exception by non const catch blocks |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
40 |
//Once compiler starts supporting, this #if statement needs to be removed |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
41 |
#if ( defined __WINSCW__) |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
42 |
E a = e; |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
43 |
throw a; |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
44 |
#else |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
45 |
throw e; |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
46 |
#endif |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
47 |
} |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
48 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
49 |
#endif |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
50 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
51 |
} // namespace boost |
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
52 |
|
837f303aceeb
Current Symbian^3 public API header files (from PDK 3.0.h)
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
53 |
#endif // #ifndef BOOST_THROW_EXCEPTION_HPP_INCLUDED |