genericopenlibs/cppstdlib/inc/typeinfo
changeset 0 e4d67989cc36
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/genericopenlibs/cppstdlib/inc/typeinfo	Tue Feb 02 02:01:42 2010 +0200
@@ -0,0 +1,106 @@
+/*
+ * Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(- *   * ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of the License "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description:
+ * Name       : typeinfo
+ * Part of    : standard c++ library.
+ *
+ */
+
+
+
+#ifndef _SYMCPP_TYPEINFO_H_
+#define _SYMCPP_TYPEINFO_H_
+
+#ifdef __EABI__
+#include "exception"
+
+namespace std
+{
+	#ifdef __EDG__
+	#pragma define_type_info
+	#endif
+
+	class type_info
+		{
+	public:
+		IMPORT_C virtual ~type_info();
+		IMPORT_C bool operator==(const type_info&) const;
+		IMPORT_C bool operator!=(const type_info&) const;
+		IMPORT_C bool before(const type_info&) const;
+		IMPORT_C const char* name() const;
+	private:
+		type_info(const type_info&);
+		type_info& operator=(const type_info&);
+	private:
+		const char *__type_name;
+		};
+
+	class bad_cast : public exception
+		{
+	public:
+		IMPORT_C bad_cast() throw ();
+		IMPORT_C bad_cast(const bad_cast&) throw ();
+		IMPORT_C bad_cast& operator=(const bad_cast&) throw ();
+		IMPORT_C virtual ~bad_cast() throw ();
+		IMPORT_C virtual const char* what() const throw ();
+		};
+
+	class bad_typeid : public exception
+		{
+	public:
+		IMPORT_C bad_typeid() throw ();
+		IMPORT_C bad_typeid(const bad_typeid&) throw ();
+		IMPORT_C bad_typeid& operator=(const bad_typeid&) throw ();
+		IMPORT_C virtual ~bad_typeid() throw ();
+		IMPORT_C virtual const char* what() const throw ();
+		};
+}
+
+
+
+
+
+#else
+#    include <exception>
+#    include <cstring>
+
+
+namespace std {
+	class bad_cast : public exception {
+	public :
+		bad_cast () __NO_THROW;
+		bad_cast ( const bad_cast &) __NO_THROW;
+		bad_cast & operator =( const bad_cast &) __NO_THROW;
+		virtual const char * what () const __NO_THROW;
+	};
+
+	class bad_typeid : public exception {
+	public :
+		bad_typeid () __NO_THROW;
+		bad_typeid ( const bad_typeid &) __NO_THROW;
+		bad_typeid & operator =( const bad_typeid &) __NO_THROW;
+		virtual const char * what () const __NO_THROW;
+	};
+
+} //namespace std
+
+#  ifdef __WINSCW__
+/*
+ * Incldue the header file that is as per the CodeWarrior
+ * typeinfo structure.
+ */
+#    include<typeinfo_winscw.h>
+#  endif  // __WINSCW__
+#endif //__EABI__
+#endif //_SYMCPP_TYPEINFO_