Hi, I have submitted a patch for review:
https://gerrit.libreoffice.org/2125 To pull it, you can do: git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/25/2125/1 add copy() and toInt32() to OUStringBuffer Change-Id: Ibac7f624f1a1dcce653dff4bec573be457d70075 --- M sal/inc/rtl/ustrbuf.hxx 1 file changed, 57 insertions(+), 0 deletions(-) diff --git a/sal/inc/rtl/ustrbuf.hxx b/sal/inc/rtl/ustrbuf.hxx index a7d5748..c222e4d 100644 --- a/sal/inc/rtl/ustrbuf.hxx +++ b/sal/inc/rtl/ustrbuf.hxx @@ -1309,6 +1309,56 @@ { return stripStart(c) + stripEnd(c); } + /** + Returns the int32 value from this string buffer. + + This function can't be used for language specific conversion. + + @param radix the radix (between 2 and 36) + @return the int32 represented from this string. + 0 if this string represents no number. + @since LibreOffice 4.1 + */ + sal_Int32 toInt32( sal_Int16 radix = 10 ) const SAL_THROW(()) + { + return rtl_ustr_toInt32( pData->buffer, radix ); + } + /** + Returns a new string buffer that is a substring of this string. + + The substring begins at the specified beginIndex. If + beginIndex is negative or be greater than the length of + this string, behaviour is undefined. + + @param beginIndex the beginning index, inclusive. + @return the specified substring. + @since LibreOffice 4.1 + */ + OUStringBuffer copy( sal_Int32 beginIndex ) const SAL_THROW(()) + { + rtl_uString *pNew = 0; + rtl_uString_newFromSubString( &pNew, pData, beginIndex, getLength() - beginIndex ); + return OUStringBuffer( pNew, (DO_NOT_ACQUIRE*)0 ); + } + /** + Returns a new string buffer that is a substring of this string. + + The substring begins at the specified beginIndex and contains count + characters. If either beginIndex or count are negative, + or beginIndex + count are greater than the length of this string + then behaviour is undefined. + + @param beginIndex the beginning index, inclusive. + @param count the number of characters. + @return the specified substring. + @since LibreOffice 4.1 + */ + OUStringBuffer copy( sal_Int32 beginIndex, sal_Int32 count ) const SAL_THROW(()) + { + rtl_uString *pNew = 0; + rtl_uString_newFromSubString( &pNew, pData, beginIndex, count ); + return OUStringBuffer( pNew, (DO_NOT_ACQUIRE*)0 ); + } #ifdef LIBO_INTERNAL_ONLY // This is to complement the RTL_FAST_STRING operator+, which allows any combination of valid operands, @@ -1326,6 +1376,13 @@ #endif private: + class DO_NOT_ACQUIRE{}; + + OUStringBuffer( rtl_uString * value, SAL_UNUSED_PARAMETER DO_NOT_ACQUIRE * ) + { + pData = value; + } + /** A pointer to the data structur which contains the data. */ -- To view, visit https://gerrit.libreoffice.org/2125 To unsubscribe, visit https://gerrit.libreoffice.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ibac7f624f1a1dcce653dff4bec573be457d70075 Gerrit-PatchSet: 1 Gerrit-Project: core Gerrit-Branch: master Gerrit-Owner: Christina Roßmanith <chrrossman...@web.de> _______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice