Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
// stdexcept standard header #pragma once #ifndef _STDEXCEPT_ #define _STDEXCEPT_ #include <exception> #include <xstring>
#pragma pack(push,8) #pragma warning(push,3) _STD_BEGIN
// CLASS logic_error class logic_error : public exception { // base of all logic-error exceptions public: explicit logic_error(const string& _Message) : _Str(_Message) { // construct from message string }
virtual ~logic_error() { // destroy the object }
virtual const char *what() const _THROW0() { // return pointer to message string return (_Str.c_str()); }
#if !_HAS_EXCEPTIONS protected: virtual void _Doraise() const { // perform class-specific exception handling _RAISE(*this); } #endif /* _HAS_EXCEPTIONS */
private: string _Str; // the stored message string };
// CLASS domain_error class domain_error : public logic_error { // base of all domain-error exceptions public: explicit domain_error(const string& _Message) : logic_error(_Message) { // construct from message string }
virtual ~domain_error() { // destroy the object }
#if !_HAS_EXCEPTIONS protected: virtual void _Doraise() const { // perform class-specific exception handling _RAISE(*this); } #endif /* _HAS_EXCEPTIONS */ };
// CLASS invalid_argument class invalid_argument : public logic_error { // base of all invalid-argument exceptions public: explicit invalid_argument(const string& _Message) : logic_error(_Message) { // construct from message string }
virtual ~invalid_argument() { // destroy the object }
#if !_HAS_EXCEPTIONS protected: virtual void _Doraise() const { // perform class-specific exception handling _RAISE(*this); } #endif /* _HAS_EXCEPTIONS */ };
// CLASS length_error class length_error : public logic_error { // base of all length-error exceptions public: explicit length_error(const string& _Message) : logic_error(_Message) { // construct from message string }
virtual ~length_error() { // destroy the object }
#if !_HAS_EXCEPTIONS protected: virtual void _Doraise() const { // perform class-specific exception handling _RAISE(*this); } #endif /* _HAS_EXCEPTIONS */ };
// CLASS out_of_range class out_of_range : public logic_error { // base of all out-of-range exceptions public: explicit out_of_range(const string& _Message) : logic_error(_Message) { // construct from message string }
virtual ~out_of_range() { // destroy the object }
#if !_HAS_EXCEPTIONS protected: virtual void _Doraise() const { // perform class-specific exception handling _RAISE(*this); } #endif /* _HAS_EXCEPTIONS */ };
// CLASS runtime_error class runtime_error : public exception { // base of all runtime-error exceptions public: explicit runtime_error(const string& _Message) : _Str(_Message) { // construct from message string }
virtual ~runtime_error() { // destroy the object }
virtual const char *what() const _THROW0() { // return pointer to message string return (_Str.c_str()); }
#if !_HAS_EXCEPTIONS protected: virtual void _Doraise() const { // perform class-specific exception handling _RAISE(*this); } #endif /* _HAS_EXCEPTIONS */ private: string _Str; // the stored message string };
// CLASS overflow_error class overflow_error : public runtime_error { // base of all overflow-error exceptions public: explicit overflow_error(const string& _Message) : runtime_error(_Message) { // construct from message string }
virtual ~overflow_error() { // destroy the object }
#if !_HAS_EXCEPTIONS protected: virtual void _Doraise() const { // perform class-specific exception handling _RAISE(*this); } #endif /* _HAS_EXCEPTIONS */ };
// CLASS underflow_error class underflow_error : public runtime_error { // base of all underflow-error exceptions public: explicit underflow_error(const string& _Message) : runtime_error(_Message) { // construct from message string }
virtual ~underflow_error() { // destroy the object }
#if !_HAS_EXCEPTIONS protected: virtual void _Doraise() const { // perform class-specific exception handling _RAISE(*this); } #endif /* _HAS_EXCEPTIONS */ };
// CLASS range_error class range_error : public runtime_error { // base of all range-error exceptions public: explicit range_error(const string& _Message) : runtime_error(_Message) { // construct from message string }
virtual ~range_error() { // destroy the object }
#if !_HAS_EXCEPTIONS protected: virtual void _Doraise() const { // perform class-specific exception handling _RAISE(*this); } #endif /* _HAS_EXCEPTIONS */ }; _STD_END #pragma warning(pop) #pragma pack(pop)
#endif /* _STDEXCEPT_ */
/* * Copyright (c) 1992-2001 by P.J. Plauger. ALL RIGHTS RESERVED. * Consult your license regarding permissions and restrictions. V3.10:0009 */
|