00001 #include <ncbi_pch.hpp>
00002 #include <corelib/ncbistd.hpp>
00003 #include <typeinfo>
00004 #include <string>
00005
00006 using namespace std;
00007
00008 int initRTTI(void);
00009
00010 int initRTTI(void)
00011 {
00012 int r = 0;
00013 r += typeid(void).name()[0];
00014 r += typeid(void*).name()[0];
00015 r += typeid(const void*).name()[0];
00016 r += typeid(bool).name()[0];
00017 r += typeid(int).name()[0];
00018 r += typeid(unsigned).name()[0];
00019 r += typeid(int*).name()[0];
00020 r += typeid(const int*).name()[0];
00021 r += typeid(short).name()[0];
00022 r += typeid(unsigned short).name()[0];
00023 r += typeid(long).name()[0];
00024 r += typeid(unsigned long).name()[0];
00025 r += typeid(char).name()[0];
00026 r += typeid(unsigned char).name()[0];
00027 #if SIZEOF_LONG_LONG != 0
00028 r += typeid(signed long long).name()[0];
00029 r += typeid(unsigned long long).name()[0];
00030 #endif
00031 r += typeid(char*).name()[0];
00032 r += typeid(unsigned char*).name()[0];
00033 r += typeid(const char*).name()[0];
00034 r += typeid(const unsigned char*).name()[0];
00035 r += typeid(float).name()[0];
00036 r += typeid(double).name()[0];
00037 return r;
00038 }
00039
00040