include/rtl/stringconcat.hxx | 24 +++++++++++------------- odk/Package_odk_headers.mk | 1 - 2 files changed, 11 insertions(+), 14 deletions(-)
New commits: commit bc02e34235c6f61422f7ea46d4c166d8486e97fe Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Sat Oct 12 08:33:43 2019 +0200 Commit: Stephan Bergmann <sberg...@redhat.com> CommitDate: Sat Oct 12 15:34:00 2019 +0200 Use std::enable_if Change-Id: Ib9b27e2715034ef3e81d041526b705786837c491 Reviewed-on: https://gerrit.libreoffice.org/80707 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> diff --git a/include/rtl/stringconcat.hxx b/include/rtl/stringconcat.hxx index 466eb76746aa..595a0aa049c5 100644 --- a/include/rtl/stringconcat.hxx +++ b/include/rtl/stringconcat.hxx @@ -19,6 +19,7 @@ #include <cstddef> #include <string> #include <string_view> +#include <type_traits> #include <utility> #include <string.h> @@ -255,7 +256,7 @@ struct ToStringHelper< OUStringConcat< T1, T2 > > template< typename T1, typename T2 > [[nodiscard]] inline -typename libreoffice_internal::Enable< OStringConcat< T1, T2 >, ToStringHelper< T1 >::allowOStringConcat && ToStringHelper< T2 >::allowOStringConcat >::Type operator+( const T1& left, const T2& right ) +typename std::enable_if_t< ToStringHelper< T1 >::allowOStringConcat && ToStringHelper< T2 >::allowOStringConcat, OStringConcat< T1, T2 > > operator+( const T1& left, const T2& right ) { return OStringConcat< T1, T2 >( left, right ); } @@ -264,7 +265,7 @@ typename libreoffice_internal::Enable< OStringConcat< T1, T2 >, ToStringHelper< template< typename T, int N > [[nodiscard]] inline -typename libreoffice_internal::Enable< OStringConcat< T, const char[ N ] >, ToStringHelper< T >::allowOStringConcat >::Type operator+( const T& left, const char (&right)[ N ] ) +typename std::enable_if_t< ToStringHelper< T >::allowOStringConcat, OStringConcat< T, const char[ N ] > > operator+( const T& left, const char (&right)[ N ] ) { return OStringConcat< T, const char[ N ] >( left, right ); } @@ -272,7 +273,7 @@ typename libreoffice_internal::Enable< OStringConcat< T, const char[ N ] >, ToSt template< typename T, int N > [[nodiscard]] inline -typename libreoffice_internal::Enable< OStringConcat< const char[ N ], T >, ToStringHelper< T >::allowOStringConcat >::Type operator+( const char (&left)[ N ], const T& right ) +typename std::enable_if_t< ToStringHelper< T >::allowOStringConcat, OStringConcat< const char[ N ], T > > operator+( const char (&left)[ N ], const T& right ) { return OStringConcat< const char[ N ], T >( left, right ); } @@ -280,7 +281,7 @@ typename libreoffice_internal::Enable< OStringConcat< const char[ N ], T >, ToSt template< typename T, int N > [[nodiscard]] inline -typename libreoffice_internal::Enable< OStringConcat< T, char[ N ] >, ToStringHelper< T >::allowOStringConcat >::Type operator+( const T& left, char (&right)[ N ] ) +typename std::enable_if_t< ToStringHelper< T >::allowOStringConcat, OStringConcat< T, char[ N ] > > operator+( const T& left, char (&right)[ N ] ) { return OStringConcat< T, char[ N ] >( left, right ); } @@ -288,7 +289,7 @@ typename libreoffice_internal::Enable< OStringConcat< T, char[ N ] >, ToStringHe template< typename T, int N > [[nodiscard]] inline -typename libreoffice_internal::Enable< OStringConcat< char[ N ], T >, ToStringHelper< T >::allowOStringConcat >::Type operator+( char (&left)[ N ], const T& right ) +typename std::enable_if_t< ToStringHelper< T >::allowOStringConcat, OStringConcat< char[ N ], T > > operator+( char (&left)[ N ], const T& right ) { return OStringConcat< char[ N ], T >( left, right ); } @@ -296,7 +297,7 @@ typename libreoffice_internal::Enable< OStringConcat< char[ N ], T >, ToStringHe template< typename T1, typename T2 > [[nodiscard]] inline -typename libreoffice_internal::Enable< OUStringConcat< T1, T2 >, ToStringHelper< T1 >::allowOUStringConcat && ToStringHelper< T2 >::allowOUStringConcat >::Type operator+( const T1& left, const T2& right ) +typename std::enable_if_t< ToStringHelper< T1 >::allowOUStringConcat && ToStringHelper< T2 >::allowOUStringConcat, OUStringConcat< T1, T2 > > operator+( const T1& left, const T2& right ) { return OUStringConcat< T1, T2 >( left, right ); } @@ -304,7 +305,7 @@ typename libreoffice_internal::Enable< OUStringConcat< T1, T2 >, ToStringHelper< template< typename T1, typename T2 > [[nodiscard]] inline -typename libreoffice_internal::Enable< OUStringConcat< T1, T2 >, ToStringHelper< T1 >::allowOUStringConcat && ToStringHelper< T2 >::allowOUStringConcat && libreoffice_internal::ConstCharArrayDetector< T1, void >::ok >::Type operator+( T1& left, const T2& right ) +typename std::enable_if_t< ToStringHelper< T1 >::allowOUStringConcat && ToStringHelper< T2 >::allowOUStringConcat && libreoffice_internal::ConstCharArrayDetector< T1, void >::ok, OUStringConcat< T1, T2 > > operator+( T1& left, const T2& right ) { return OUStringConcat< T1, T2 >( left, right ); } @@ -312,7 +313,7 @@ typename libreoffice_internal::Enable< OUStringConcat< T1, T2 >, ToStringHelper< template< typename T1, typename T2 > [[nodiscard]] inline -typename libreoffice_internal::Enable< OUStringConcat< T1, T2 >, ToStringHelper< T1 >::allowOUStringConcat && ToStringHelper< T2 >::allowOUStringConcat && libreoffice_internal::ConstCharArrayDetector< T2, void >::ok >::Type operator+( const T1& left, T2& right ) +typename std::enable_if_t< ToStringHelper< T1 >::allowOUStringConcat && ToStringHelper< T2 >::allowOUStringConcat && libreoffice_internal::ConstCharArrayDetector< T2, void >::ok, OUStringConcat< T1, T2 > > operator+( const T1& left, T2& right ) { return OUStringConcat< T1, T2 >( left, right ); } commit cabad92c1c24ac77ca8c2c97b365cf80a3c09344 Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Fri Oct 11 17:19:14 2019 +0200 Commit: Stephan Bergmann <sberg...@redhat.com> CommitDate: Sat Oct 12 15:33:37 2019 +0200 Remove unused ToStringHelper<char[N]>::addData sal_Unicode overload ...that was present ever since d87f5d30879aca73fff271c254589fc41a91fdd0 "support for fast O(U)String concatenation using operator+" but was likely a typo/thinko Change-Id: I0e56166d95f447a26dba9b456255b4ed339f1e2f Reviewed-on: https://gerrit.libreoffice.org/80668 Reviewed-by: Luboš Luňák <l.lu...@collabora.com> Tested-by: Jenkins diff --git a/include/rtl/stringconcat.hxx b/include/rtl/stringconcat.hxx index 049b5ab302ba..466eb76746aa 100644 --- a/include/rtl/stringconcat.hxx +++ b/include/rtl/stringconcat.hxx @@ -129,7 +129,6 @@ struct ToStringHelper< char[ N ] > return sal::static_int_cast<int>(strlen( str )); } static char* addData( char* buffer, const char str[ N ] ) { return addDataCString( buffer, str ); } - static sal_Unicode* addData( sal_Unicode* buffer, const char str[ N ] ) { return addDataLiteral( buffer, str, N - 1 ); } static const bool allowOStringConcat = true; static const bool allowOUStringConcat = false; }; commit 7e75592add27d2585ca4189fba85dfae6879aeef Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Fri Oct 11 17:16:48 2019 +0200 Commit: Stephan Bergmann <sberg...@redhat.com> CommitDate: Sat Oct 12 15:33:16 2019 +0200 rtl/stringconcat.hxx is not part of the URE interface (and #include's of it in include/rtl/*.hxx are already guarded with LIBO_INTERNAL_ONLY) Change-Id: I9224f71a244a69ef69406ea3a5879b66b3cae3a3 Reviewed-on: https://gerrit.libreoffice.org/80666 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> diff --git a/include/rtl/stringconcat.hxx b/include/rtl/stringconcat.hxx index 2dbde557b7df..049b5ab302ba 100644 --- a/include/rtl/stringconcat.hxx +++ b/include/rtl/stringconcat.hxx @@ -10,6 +10,8 @@ #ifndef INCLUDED_RTL_STRINGCONCAT_HXX #define INCLUDED_RTL_STRINGCONCAT_HXX +// This file is only included from LIBO_INTERNAL_ONLY + #include "rtl/stringutils.hxx" #include "rtl/string.h" #include "rtl/ustring.h" @@ -21,8 +23,6 @@ #include <string.h> -#ifdef LIBO_INTERNAL_ONLY // "RTL_FAST_STRING" - #if defined RTL_STRING_UNITTEST_CONCAT extern bool rtl_string_unittest_invalid_concat; #endif @@ -480,5 +480,3 @@ struct ToStringHelper< OUStringNumber< T > > } // namespace #endif - -#endif diff --git a/odk/Package_odk_headers.mk b/odk/Package_odk_headers.mk index 40e0fb83d0f8..cc52b9719f9a 100644 --- a/odk/Package_odk_headers.mk +++ b/odk/Package_odk_headers.mk @@ -136,7 +136,6 @@ $(eval $(call gb_Package_add_files_with_dir,odk_headers,$(SDKDIRNAME)/include,\ rtl/strbuf.hxx \ rtl/string.h \ rtl/string.hxx \ - rtl/stringconcat.hxx \ rtl/stringutils.hxx \ rtl/tencinfo.h \ rtl/textcvt.h \ _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits