mirror of
https://github.com/reactos/reactos.git
synced 2024-09-17 16:20:20 +00:00
c2d0d784c7
- Create a branch to do a proper merge of USB work from a trunk base instead of from cmake-bringup - In the future, DO NOT under any circumstances branch another branch. This leads to merge problems! svn path=/branches/usb-bringup-trunk/; revision=55018
49 lines
1.1 KiB
Plaintext
49 lines
1.1 KiB
Plaintext
// RTTI support for C++
|
|
|
|
#ifndef _TYPEINFO
|
|
#define _TYPEINFO
|
|
|
|
#include <exception>
|
|
|
|
extern "C++" {
|
|
|
|
namespace std
|
|
{
|
|
|
|
class type_info {
|
|
public:
|
|
virtual ~type_info();
|
|
bool before (const type_info& arg) const
|
|
{ return __name < __arg.__name; }
|
|
bool operator==(const type_info& __arg) const
|
|
{ return __name == __arg.__name; }
|
|
bool operator!=(const type_info& __arg) const
|
|
{ return !operator==(__arg); }
|
|
const char* name() const;
|
|
protected:
|
|
const char* __name;
|
|
private:
|
|
type_info (const type_info& rhs);
|
|
type_info& operator= (const type_info& rhs);
|
|
};
|
|
|
|
class bad_cast : public exception
|
|
{
|
|
public:
|
|
bad_cast() throw() { }
|
|
virtual ~bad_cast() throw();
|
|
virtual const char* what() const throw();
|
|
};
|
|
|
|
class bad_typeid : public exception
|
|
{
|
|
public:
|
|
bad_typeid () throw() { }
|
|
virtual ~bad_typeid() throw();
|
|
virtual const char* what() const throw();
|
|
};
|
|
} // namespace std
|
|
|
|
} // extern "C++"
|
|
#endif
|