copy_string_backward(BeginReading(atPosition), BeginReading(oldLength), EndWriting());
copy_string_backward(this->BeginReading(atPosition), this->BeginReading(oldLength), EndWriting());
basic_nsAWritableString<CharT>::do_InsertFromReadable( const basic_nsAReadableString<CharT>& aReadable, PRUint32 atPosition )  {    PRUint32 oldLength = Length();    SetLength(oldLength + aReadable.Length());    if ( atPosition < oldLength )      copy_string_backward(BeginReading(atPosition), BeginReading(oldLength), EndWriting());    else      atPosition = oldLength;    copy_string(aReadable.BeginReading(), aReadable.EndReading(), BeginWriting(atPosition));  }