#ifndef _TYPEINFO_HEADER_GAURD
#define _TYPEINFO_HEADER_GAURD

extern "C++" {

namespace std {
    class type_info;
    class bad_cast;
    class bad_typeid;
};


class type_info {
public:
    type_info();
    virtual ~type_info();

    char const * name() const;

    bool operator==(type_info const & right) const;
    bool operator!=(type_info const & right) const;
    bool before(type_info const & right) const;

private:
    type_info(type_info const & right);
    type_info & operator=(type_info const & right);
};

}  // C++

#endif
