void CopyUnicodeTo( const nsAString::const_iterator& aSrcStart, const nsAString::const_iterator& aSrcEnd, nsAString& aDest ) { nsAString::iterator writer; aDest.SetLength(Distance(aSrcStart, aSrcEnd)); aDest.BeginWriting(writer); nsAString::const_iterator fromBegin(aSrcStart); copy_string(fromBegin, aSrcEnd, writer); }
void AppendUnicodeTo( const nsAString::const_iterator& aSrcStart, const nsAString::const_iterator& aSrcEnd, nsAString& aDest ) { nsAString::iterator writer; uint32_t oldLength = aDest.Length(); aDest.SetLength(oldLength + Distance(aSrcStart, aSrcEnd)); aDest.BeginWriting(writer).advance(oldLength); nsAString::const_iterator fromBegin(aSrcStart); copy_string(fromBegin, aSrcEnd, writer); }
void AppendUnicodeTo( const nsAString::const_iterator& aSrcStart, const nsAString::const_iterator& aSrcEnd, nsAString& aDest ) { nsAString::iterator writer; PRUint32 oldLength = aDest.Length(); if(!SetLengthForWriting(aDest, oldLength + Distance(aSrcStart, aSrcEnd))) return; aDest.BeginWriting(writer).advance(oldLength); nsAString::const_iterator fromBegin(aSrcStart); copy_string(fromBegin, aSrcEnd, writer); }