HashEntry(const HashEntry& inRHS) : mEntryType(inRHS.mEntryType)
HashEntry(PRUint8 inType, const char * inEntryName) : mEntryType(inType) , mEntryName(inEntryName) , mString(nsnull)
    HashEntry(const HashEntry& inRHS)    : mEntryType(inRHS.mEntryType)    {      Reset(mEntryType);      switch (mEntryType)      {        case eBooleanType:      mData.mBoolean = inRHS.mData.mBoolean;  break;        case eLongType:         mData.mLong    = inRHS.mData.mLong;     break;        case eDoubleType:       mData.mDouble  = inRHS.mData.mDouble;   break;        case eWStringType:          NS_ASSERTION(inRHS.mString, "Source entry has no string");          mString = new nsString(*inRHS.mString);          break;              case eISupportsType:          mISupports = inRHS.mISupports.get();    // additional addref          break;        default:          NS_ASSERTION(0, "Unknown type");      }    }