1 | | I'm adding BOOST_NOEXCEPT specification to Boost.Thread, and I can not complete it as Boost.System lacks this feature. Any plans to take care of this? |
| 1 | I'm adding BOOST_NOEXCEPT specification to Boost.Thread, and I can not complete it as Boost.System lacks this feature. |
| 2 | |
| 3 | {{{ |
| 4 | class error_category { |
| 5 | public: |
| 6 | virtual const char* name() const noexcept = 0; |
| 7 | virtual error_condition default_error_condition(int ev) const noexcept; |
| 8 | virtual bool equivalent(int code, const error_condition& condition) const noexcept; |
| 9 | virtual bool equivalent(const error_code& code, int condition) const noexcept; |
| 10 | bool operator==(const error_category& rhs) const noexcept; |
| 11 | bool operator!=(const error_category& rhs) const noexcept; |
| 12 | bool operator<(const error_category& rhs) const noexcept; |
| 13 | }; |
| 14 | const error_category& generic_category() noexcept; |
| 15 | const error_category& system_category() noexcept; |
| 16 | |
| 17 | |
| 18 | class error_code { |
| 19 | public: |
| 20 | error_code() noexcept; |
| 21 | error_code(int val, const error_category& cat) noexcept; |
| 22 | template <class ErrorCodeEnum> |
| 23 | error_code(ErrorCodeEnum e) noexcept; |
| 24 | void assign(int val, const error_category& cat) noexcept; |
| 25 | template <class ErrorCodeEnum> |
| 26 | errorcode& operator=(ErrorCodeEnum e) noexcept; |
| 27 | void clear() noexcept; |
| 28 | int value() const noexcept; |
| 29 | const error_category& category() const noexcept; |
| 30 | error_condition default_error_condition() const noexcept; |
| 31 | explicit operator bool() const noexcept; |
| 32 | }; |
| 33 | error_code make_error_code(errc e) noexcept; |
| 34 | bool operator<(const error_code& lhs, const error_code& rhs) noexcept; |
| 35 | |
| 36 | class error_condition { |
| 37 | public: |
| 38 | error_condition() noexcept; |
| 39 | error_condition(int val, const error_category& cat) noexcept; template <class ErrorConditionEnum> |
| 40 | error_condition(ErrorConditionEnum e) noexcept; |
| 41 | void assign(int val, const error_category& cat) noexcept; template<class ErrorConditionEnum> |
| 42 | error_condition& operator=(ErrorConditionEnum e) noexcept; |
| 43 | void clear() noexcept; |
| 44 | int value() const noexcept; |
| 45 | const error_category& category() const noexcept; |
| 46 | explicit operator bool() const noexcept; |
| 47 | |
| 48 | }; |
| 49 | bool operator<(const error_condition& lhs, const error_condition& rhs) noexcept; |
| 50 | }}} |
| 51 | |
| 52 | |
| 53 | Any plans to take care of this? |