(file) Return to String.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

Diff for /pegasus/src/Pegasus/Common/String.cpp between version 1.104 and 1.105

version 1.104, 2005/05/04 21:14:10 version 1.105, 2005/05/06 19:46:45
Line 242 
Line 242 
  
 String::String(const Char16* str) String::String(const Char16* str)
 { {
       if ( str == 0 )
       {
           throw NullPointer();
       }
   
     _rep = new StringRep(str);     _rep = new StringRep(str);
 } }
  
 String::String(const Char16* str, Uint32 n) String::String(const Char16* str, Uint32 n)
 { {
       if ( str == 0 )
       {
           throw NullPointer();
       }
   
     _rep = new StringRep;     _rep = new StringRep;
     assign(str, n);     assign(str, n);
 } }
  
 String::String(const char* str) String::String(const char* str)
 { {
       if ( str == 0 )
       {
           throw NullPointer();
       }
   
     _rep = new StringRep;     _rep = new StringRep;
     AutoPtr<StringRep> tempRep(_rep);     AutoPtr<StringRep> tempRep(_rep);
     // An exception can be thrown, so use a temp AutoPtr.     // An exception can be thrown, so use a temp AutoPtr.
Line 262 
Line 277 
  
 String::String(const char* str, Uint32 n) String::String(const char* str, Uint32 n)
 { {
       if ( str == 0 )
       {
           throw NullPointer();
       }
   
     _rep = new StringRep;     _rep = new StringRep;
     AutoPtr<StringRep> tempRep(_rep);     AutoPtr<StringRep> tempRep(_rep);
     // An exception can be thrown, so use a temp AutoPtr.     // An exception can be thrown, so use a temp AutoPtr.
Line 291 
Line 311 
  
 String& String::assign(const Char16* str) String& String::assign(const Char16* str)
 { {
       if ( str == 0 )
       {
           throw NullPointer();
       }
   
     _rep->c16a.clear();     _rep->c16a.clear();
     _rep->c16a.append(str, _StrLen(str) + 1);     _rep->c16a.append(str, _StrLen(str) + 1);
     return *this;     return *this;
Line 298 
Line 323 
  
 String& String::assign(const Char16* str, Uint32 n) String& String::assign(const Char16* str, Uint32 n)
 { {
       if ( str == 0 )
       {
           throw NullPointer();
       }
   
     _rep->c16a.clear();     _rep->c16a.clear();
     _rep->c16a.append(str, n);     _rep->c16a.append(str, n);
     _rep->c16a.append('\0');     _rep->c16a.append('\0');
Line 306 
Line 336 
  
 String& String::assign(const char* str) String& String::assign(const char* str)
 { {
       if ( str == 0 )
       {
           throw NullPointer();
       }
   
     _rep->c16a.clear();     _rep->c16a.clear();
     _convertAndAppend(str, _rep->c16a, 0, 1);     _convertAndAppend(str, _rep->c16a, 0, 1);
     return *this;     return *this;
Line 313 
Line 348 
  
 String& String::assign(const char* str, Uint32 n) String& String::assign(const char* str, Uint32 n)
 { {
       if ( str == 0 )
       {
           throw NullPointer();
       }
   
     _rep->c16a.clear();     _rep->c16a.clear();
     _convertAndAppend(str, _rep->c16a, n, 0);     _convertAndAppend(str, _rep->c16a, n, 0);
     return *this;     return *this;
Line 363 
Line 403 
  
 String& String::append(const Char16* str, Uint32 n) String& String::append(const Char16* str, Uint32 n)
 { {
      if (!str)       if (str == 0)
      {      {
          throw NullPointer();          throw NullPointer();
      }      }
   
     _rep->c16a.reserveCapacity(_rep->c16a.size() + n);     _rep->c16a.reserveCapacity(_rep->c16a.size() + n);
     _rep->c16a.remove(_rep->c16a.size() - 1);     _rep->c16a.remove(_rep->c16a.size() - 1);
     _rep->c16a.append(str, n);     _rep->c16a.append(str, n);
Line 400 
Line 441 
  
         return String(getChar16Data() + index, length);         return String(getChar16Data() + index, length);
     }     }
     else  
         return String();         return String();
 } }
  
Line 746 
Line 787 
     // ICU_TODO:  If ICU is available we should do this the correct way.     // ICU_TODO:  If ICU is available we should do this the correct way.
     if (nocase)     if (nocase)
         return _ToLower(ch1) == _ToLower(ch2);         return _ToLower(ch1) == _ToLower(ch2);
     else  
         return ch1 == ch2;         return ch1 == ch2;
 } }
  


Legend:
Removed from v.1.104  
changed lines
  Added in v.1.105

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2