From 35e471bb4d1388cf5afcdcee214cf5111edf44e3 Mon Sep 17 00:00:00 2001 From: Stephan Bergmann Date: Fri, 11 Dec 2020 17:44:34 +0100 Subject: Adapt the remaining OUString functions to std string_view ...for LIBO_INTERNAL_ONLY. These had been missed by 1b43cceaea2084a0489db68cd0113508f34b6643 "Make many OUString functions take std::u16string_view parameters" because they did not match the multi-overload pattern that was addressed there, but they nevertheless benefit from being changed just as well (witness e.g. the various resulting changes from copy() to subView()). This showed a conversion from OStringChar to std::string_view to be missing (while the corresponding conversion form OUStringChar to std::u16string_view was already present). The improvement to loplugin:stringadd became necessary to fix > [CPT] compilerplugins/clang/test/stringadd.cxx > error: 'error' diagnostics expected but not seen: > File ~/lo/core/compilerplugins/clang/test/stringadd.cxx Line 43 (directive at ~/lo/core/compilerplugins/clang/test/stringadd.cxx:42): simplify by merging with the preceding assignment [loplugin:stringadd] > File ~/lo/core/compilerplugins/clang/test/stringadd.cxx Line 61 (directive at ~/lo/core/compilerplugins/clang/test/stringadd.cxx:60): simplify by merging with the preceding assignment [loplugin:stringadd] > 2 errors generated. Change-Id: Ie40de0616a66e60e289c1af0ca60aed6f9ecc279 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107602 Tested-by: Jenkins Reviewed-by: Stephan Bergmann --- jvmfwk/inc/fwkbase.hxx | 3 ++- jvmfwk/inc/libxmlutil.hxx | 6 +++++- jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx | 2 +- jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx | 2 +- jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx | 6 +++++- jvmfwk/source/fwkbase.cxx | 4 ++-- jvmfwk/source/libxmlutil.cxx | 2 +- 7 files changed, 17 insertions(+), 8 deletions(-) (limited to 'jvmfwk') diff --git a/jvmfwk/inc/fwkbase.hxx b/jvmfwk/inc/fwkbase.hxx index be14511a4a4b..1c6ad983f47c 100644 --- a/jvmfwk/inc/fwkbase.hxx +++ b/jvmfwk/inc/fwkbase.hxx @@ -22,6 +22,7 @@ #include #include +#include #include #include @@ -39,7 +40,7 @@ class VendorSettings public: VendorSettings(); - std::optional getVersionInformation(const OUString& sVendor) const; + std::optional getVersionInformation(std::u16string_view sVendor) const; }; /* The class offers functions to retrieve verified bootstrap parameters. diff --git a/jvmfwk/inc/libxmlutil.hxx b/jvmfwk/inc/libxmlutil.hxx index 75cd022acd3d..2599cff50596 100644 --- a/jvmfwk/inc/libxmlutil.hxx +++ b/jvmfwk/inc/libxmlutil.hxx @@ -19,6 +19,10 @@ #ifndef INCLUDED_JVMFWK_INC_LIBXMLUTIL_HXX #define INCLUDED_JVMFWK_INC_LIBXMLUTIL_HXX +#include + +#include + #include #include #include @@ -84,7 +88,7 @@ class CXmlCharPtr public: CXmlCharPtr(); CXmlCharPtr(xmlChar* aDoc); - explicit CXmlCharPtr(const OUString&); + explicit CXmlCharPtr(std::u16string_view); ~CXmlCharPtr(); CXmlCharPtr& operator=(xmlChar* pObj); operator xmlChar*() const { return _object; } diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx b/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx index 35d2cd2a55a8..ee8bcbc155db 100644 --- a/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx +++ b/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx @@ -99,7 +99,7 @@ struct PluginMutex: public ::rtl::Static {}; OString getPluginJarPath( std::u16string_view sVendor, const OUString& sLocation, - const OUString& sVersion) + std::u16string_view sVersion) { OString ret; OUString sName1("javaplugin.jar"); diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx index 2d972f1cc5ef..ded1fc5f45f5 100644 --- a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx +++ b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx @@ -37,7 +37,7 @@ public: } test; #endif -SunVersion::SunVersion(const OUString &usVer): +SunVersion::SunVersion(std::u16string_view usVer): m_nUpdateSpecial(0), m_preRelease(Rel_NONE) { OString sVersion= OUStringToOString(usVer, osl_getThreadTextEncoding()); diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx index 3c181ed3b7be..0f351dfb0591 100644 --- a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx +++ b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx @@ -20,6 +20,10 @@ #ifndef INCLUDED_JVMFWK_PLUGINS_SUNMAJOR_PLUGINLIB_SUNVERSION_HXX #define INCLUDED_JVMFWK_PLUGINS_SUNMAJOR_PLUGINLIB_SUNVERSION_HXX +#include + +#include + #include namespace jfw_plugin @@ -83,7 +87,7 @@ class SunVersion final public: explicit SunVersion(const char* szVer); - explicit SunVersion(const OUString& usVer); + explicit SunVersion(std::u16string_view usVer); ~SunVersion(); /** diff --git a/jvmfwk/source/fwkbase.cxx b/jvmfwk/source/fwkbase.cxx index df84d7c77f9e..501595c6e857 100644 --- a/jvmfwk/source/fwkbase.cxx +++ b/jvmfwk/source/fwkbase.cxx @@ -113,9 +113,9 @@ VendorSettings::VendorSettings() "[Java framework] Error in constructor VendorSettings::VendorSettings() (fwkbase.cxx)"); } -std::optional VendorSettings::getVersionInformation(const OUString & sVendor) const +std::optional VendorSettings::getVersionInformation(std::u16string_view sVendor) const { - OSL_ASSERT(!sVendor.isEmpty()); + OSL_ASSERT(!sVendor.empty()); OString osVendor = OUStringToOString(sVendor, RTL_TEXTENCODING_UTF8); CXPathObjectPtr pathObject = xmlXPathEvalExpression( reinterpret_cast( diff --git a/jvmfwk/source/libxmlutil.cxx b/jvmfwk/source/libxmlutil.cxx index 2619e43331c4..f83e14143ef4 100644 --- a/jvmfwk/source/libxmlutil.cxx +++ b/jvmfwk/source/libxmlutil.cxx @@ -94,7 +94,7 @@ CXmlCharPtr::CXmlCharPtr(xmlChar * aChar) { } -CXmlCharPtr::CXmlCharPtr(const OUString & s): +CXmlCharPtr::CXmlCharPtr(std::u16string_view s): _object(nullptr) { OString o = OUStringToOString(s, RTL_TEXTENCODING_UTF8); -- cgit