diff options
Diffstat (limited to 'include/rtl/ustrbuf.hxx')
-rw-r--r-- | include/rtl/ustrbuf.hxx | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/include/rtl/ustrbuf.hxx b/include/rtl/ustrbuf.hxx index 94bf9c789a61..4016eaf210d9 100644 --- a/include/rtl/ustrbuf.hxx +++ b/include/rtl/ustrbuf.hxx @@ -224,6 +224,18 @@ public: pData->length = l; // TODO realloc in case pData->>length is noticeably smaller than l ? } + + /** + @overload + @internal + */ + template< typename T > + OUStringBuffer( OUStringNumber< T >&& n ) + : pData(NULL) + , nCapacity( n.length + 16 ) + { + rtl_uStringbuffer_newFromStr_WithLength( &pData, n.buf, n.length ); + } #endif /** Assign to this a copy of value. */ @@ -328,6 +340,13 @@ public: pData->length = n; return *this; } + + /** @overload @internal */ + template<typename T> + OUStringBuffer & operator =(OUStringNumber<T> && n) + { + return *this = OUStringBuffer( std::move( n )); + } #endif /** @@ -658,6 +677,16 @@ public: pData->length = l; return *this; } + + /** + @overload + @internal + */ + template< typename T > + OUStringBuffer& append( OUStringNumber< T >&& c ) + { + return append( c.buf, c.length ); + } #endif /** |