chore: use string_view in place of string where possible

This commit is contained in:
sithlord48 2025-05-21 20:31:48 -04:00 committed by Nick Bolton
parent fe12972e83
commit 5a90b51e97
20 changed files with 40 additions and 39 deletions

View file

@ -162,7 +162,7 @@ bool CaselessCmp::operator()(const std::string &a, const std::string &b) const
return less(a, b); return less(a, b);
} }
bool CaselessCmp::less(const std::string &a, const std::string &b) bool CaselessCmp::less(const std::string_view &a, const std::string_view &b)
{ {
return std::lexicographical_compare(a.begin(), a.end(), b.begin(), b.end(), &deskflow::string::CaselessCmp::cmpLess); return std::lexicographical_compare(a.begin(), a.end(), b.begin(), b.end(), &deskflow::string::CaselessCmp::cmpLess);
} }

View file

@ -67,7 +67,7 @@ public:
bool operator()(const std::string &a, const std::string &b) const; bool operator()(const std::string &a, const std::string &b) const;
//! Returns true iff \c a is lexicographically less than \c b //! Returns true iff \c a is lexicographically less than \c b
static bool less(const std::string &a, const std::string &b); static bool less(const std::string_view &a, const std::string_view &b);
//! Returns true iff \c a is lexicographically equal to \c b //! Returns true iff \c a is lexicographically equal to \c b
static bool equal(const std::string &a, const std::string &b); static bool equal(const std::string &a, const std::string &b);

View file

@ -226,7 +226,7 @@ std::string Unicode::UCS2ToUTF8(const std::string &src, bool *errors)
return doUCS2ToUTF8(reinterpret_cast<const uint8_t *>(src.data()), n, errors); return doUCS2ToUTF8(reinterpret_cast<const uint8_t *>(src.data()), n, errors);
} }
std::string Unicode::UCS4ToUTF8(const std::string &src, bool *errors) std::string Unicode::UCS4ToUTF8(const std::string_view &src, bool *errors)
{ {
// default to success // default to success
resetError(errors); resetError(errors);
@ -236,7 +236,7 @@ std::string Unicode::UCS4ToUTF8(const std::string &src, bool *errors)
return doUCS4ToUTF8(reinterpret_cast<const uint8_t *>(src.data()), n, errors); return doUCS4ToUTF8(reinterpret_cast<const uint8_t *>(src.data()), n, errors);
} }
std::string Unicode::UTF16ToUTF8(const std::string &src, bool *errors) std::string Unicode::UTF16ToUTF8(const std::string_view &src, bool *errors)
{ {
// default to success // default to success
resetError(errors); resetError(errors);
@ -246,7 +246,7 @@ std::string Unicode::UTF16ToUTF8(const std::string &src, bool *errors)
return doUTF16ToUTF8(reinterpret_cast<const uint8_t *>(src.data()), n, errors); return doUTF16ToUTF8(reinterpret_cast<const uint8_t *>(src.data()), n, errors);
} }
std::string Unicode::UTF32ToUTF8(const std::string &src, bool *errors) std::string Unicode::UTF32ToUTF8(const std::string_view &src, bool *errors)
{ {
// default to success // default to success
resetError(errors); resetError(errors);

View file

@ -81,21 +81,21 @@ public:
Convert from UCS-4 to UTF-8. If errors is not nullptr then *errors is Convert from UCS-4 to UTF-8. If errors is not nullptr then *errors is
set to true iff any character could not be decoded. set to true iff any character could not be decoded.
*/ */
static std::string UCS4ToUTF8(const std::string &, bool *errors = nullptr); static std::string UCS4ToUTF8(const std::string_view &, bool *errors = nullptr);
//! Convert from UTF-16 to UTF-8 //! Convert from UTF-16 to UTF-8
/*! /*!
Convert from UTF-16 to UTF-8. If errors is not nullptr then *errors is Convert from UTF-16 to UTF-8. If errors is not nullptr then *errors is
set to true iff any character could not be decoded. set to true iff any character could not be decoded.
*/ */
static std::string UTF16ToUTF8(const std::string &, bool *errors = nullptr); static std::string UTF16ToUTF8(const std::string_view &, bool *errors = nullptr);
//! Convert from UTF-32 to UTF-8 //! Convert from UTF-32 to UTF-8
/*! /*!
Convert from UTF-32 to UTF-8. If errors is not nullptr then *errors is Convert from UTF-32 to UTF-8. If errors is not nullptr then *errors is
set to true iff any character could not be decoded. set to true iff any character could not be decoded.
*/ */
static std::string UTF32ToUTF8(const std::string &, bool *errors = nullptr); static std::string UTF32ToUTF8(const std::string_view &, bool *errors = nullptr);
//! Convert from the current locale encoding to UTF-8 //! Convert from the current locale encoding to UTF-8
/*! /*!

View file

@ -232,7 +232,7 @@ bool ArgParser::isArg(
return false; return false;
} }
void ArgParser::splitCommandString(const std::string &command, std::vector<std::string> &argv) void ArgParser::splitCommandString(const std::string_view &command, std::vector<std::string> &argv)
{ {
if (command.empty()) { if (command.empty()) {
return; return;
@ -256,10 +256,10 @@ void ArgParser::splitCommandString(const std::string &command, std::vector<std::
} }
if (!ignoreThisSpace) { if (!ignoreThisSpace) {
std::string subString = command.substr(startPos, space - startPos); auto subString = command.substr(startPos, space - startPos);
removeDoubleQuotes(subString); removeDoubleQuotes(subString);
argv.push_back(subString); argv.push_back(std::string{subString.begin(), subString.end()});
} }
// find next space // find next space
@ -271,12 +271,12 @@ void ArgParser::splitCommandString(const std::string &command, std::vector<std::
} }
} }
std::string subString = command.substr(startPos, command.size()); auto subString = command.substr(startPos, command.size());
removeDoubleQuotes(subString); removeDoubleQuotes(subString);
argv.push_back(subString); argv.push_back(std::string{subString.begin(), subString.end()});
} }
bool ArgParser::searchDoubleQuotes(const std::string &command, size_t &left, size_t &right, size_t startPos) bool ArgParser::searchDoubleQuotes(const std::string_view &command, size_t &left, size_t &right, size_t startPos)
{ {
bool result = false; bool result = false;
left = std::string::npos; left = std::string::npos;
@ -298,7 +298,7 @@ bool ArgParser::searchDoubleQuotes(const std::string &command, size_t &left, siz
return result; return result;
} }
void ArgParser::removeDoubleQuotes(std::string &arg) void ArgParser::removeDoubleQuotes(std::string_view &arg)
{ {
// if string is surrounded by double quotes, remove them // if string is surrounded by double quotes, remove them
if (arg[0] == '\"' && arg[arg.size() - 1] == '\"') { if (arg[0] == '\"' && arg[arg.size() - 1] == '\"') {

View file

@ -36,9 +36,9 @@ public:
static bool isArg( static bool isArg(
int argi, int argc, const char *const *argv, const char *name1, const char *name2, int minRequiredParameters = 0 int argi, int argc, const char *const *argv, const char *name1, const char *name2, int minRequiredParameters = 0
); );
static void splitCommandString(const std::string &command, std::vector<std::string> &argv); static void splitCommandString(const std::string_view &command, std::vector<std::string> &argv);
static bool searchDoubleQuotes(const std::string &command, size_t &left, size_t &right, size_t startPos = 0); static bool searchDoubleQuotes(const std::string_view &command, size_t &left, size_t &right, size_t startPos = 0);
static void removeDoubleQuotes(std::string &arg); static void removeDoubleQuotes(std::string_view &arg);
static const char **getArgv(std::vector<std::string> &argsArray); static const char **getArgv(std::vector<std::string> &argsArray);
static std::string static std::string
assembleCommand(std::vector<std::string> &argsArray, std::string ignoreArg = "", int parametersRequired = 0); assembleCommand(std::vector<std::string> &argsArray, std::string ignoreArg = "", int parametersRequired = 0);

View file

@ -13,7 +13,7 @@
// IClipboard // IClipboard
// //
void IClipboard::unmarshall(IClipboard *clipboard, const std::string &data, Time time) void IClipboard::unmarshall(IClipboard *clipboard, const std::string_view &data, Time time)
{ {
assert(clipboard != nullptr); assert(clipboard != nullptr);

View file

@ -131,7 +131,7 @@ public:
Extract marshalled clipboard data and store it in \p clipboard. Extract marshalled clipboard data and store it in \p clipboard.
Sets the clipboard time to \c time. Sets the clipboard time to \c time.
*/ */
static void unmarshall(IClipboard *clipboard, const std::string &data, Time time); static void unmarshall(IClipboard *clipboard, const std::string_view &data, Time time);
//! Copy clipboard //! Copy clipboard
/*! /*!

View file

@ -72,7 +72,7 @@ bool IKeyState::KeyInfo::isDefault(const char *screens)
return (screens == nullptr || screens[0] == '\0'); return (screens == nullptr || screens[0] == '\0');
} }
bool IKeyState::KeyInfo::contains(const char *screens, const std::string &name) bool IKeyState::KeyInfo::contains(const char *screens, const std::string_view &name)
{ {
// special cases // special cases
if (isDefault(screens)) { if (isDefault(screens)) {

View file

@ -39,7 +39,7 @@ public:
static KeyInfo *alloc(const KeyInfo &); static KeyInfo *alloc(const KeyInfo &);
static bool isDefault(const char *screens); static bool isDefault(const char *screens);
static bool contains(const char *screens, const std::string &name); static bool contains(const char *screens, const std::string_view &name);
static bool equal(const KeyInfo *, const KeyInfo *); static bool equal(const KeyInfo *, const KeyInfo *);
static std::string join(const std::set<std::string> &destinations); static std::string join(const std::set<std::string> &destinations);
static void split(const char *screens, std::set<std::string> &); static void split(const char *screens, std::set<std::string> &);

View file

@ -269,7 +269,7 @@ void ServerApp::updateStatus()
updateStatus(""); updateStatus("");
} }
void ServerApp::updateStatus(const std::string &msg) const void ServerApp::updateStatus(const std::string_view &msg) const
{ {
// do nothing // do nothing
} }

View file

@ -86,7 +86,7 @@ public:
void closeServer(Server *server); void closeServer(Server *server);
void stopRetryTimer(); void stopRetryTimer();
void updateStatus(); void updateStatus();
void updateStatus(const std::string &msg) const; void updateStatus(const std::string_view &msg) const;
void closeClientListener(ClientListener *listen); void closeClientListener(ClientListener *listen);
void stopServer(); void stopServer();
void closePrimaryClient(PrimaryClient *primaryClient); void closePrimaryClient(PrimaryClient *primaryClient);

View file

@ -23,7 +23,7 @@ using namespace std;
static const size_t g_chunkSize = 512 * 1024; // 512kb static const size_t g_chunkSize = 512 * 1024; // 512kb
void StreamChunker::sendClipboard( void StreamChunker::sendClipboard(
const std::string &data, size_t size, ClipboardID id, uint32_t sequence, IEventQueue *events, void *eventTarget const std::string_view &data, size_t size, ClipboardID id, uint32_t sequence, IEventQueue *events, void *eventTarget
) )
{ {
// send first message (data size) // send first message (data size)
@ -42,7 +42,7 @@ void StreamChunker::sendClipboard(
chunkSize = size - sentLength; chunkSize = size - sentLength;
} }
std::string chunk(data.substr(sentLength, chunkSize).c_str(), chunkSize); std::string chunk(data.substr(sentLength, chunkSize).data(), chunkSize);
ClipboardChunk *dataChunk = ClipboardChunk::data(id, sequence, chunk); ClipboardChunk *dataChunk = ClipboardChunk::data(id, sequence, chunk);
events->addEvent(Event(EventTypes::ClipboardSending, eventTarget, dataChunk)); events->addEvent(Event(EventTypes::ClipboardSending, eventTarget, dataChunk));

View file

@ -11,7 +11,7 @@
namespace { namespace {
std::string vectorToString(const std::vector<std::string> &vector, const std::string &delimiter = "") std::string vectorToString(const std::vector<std::string> &vector, const std::string_view &delimiter = "")
{ {
std::string string; std::string string;
for (const auto &item : vector) { for (const auto &item : vector) {
@ -34,12 +34,13 @@ LanguageManager::LanguageManager(const std::vector<std::string> &localLanguages)
LOG((CLOG_INFO "local languages: %s", vectorToString(m_localLanguages, ", ").c_str())); LOG((CLOG_INFO "local languages: %s", vectorToString(m_localLanguages, ", ").c_str()));
} }
void LanguageManager::setRemoteLanguages(const std::string &remoteLanguages) void LanguageManager::setRemoteLanguages(const std::string_view &remoteLanguages)
{ {
m_remoteLanguages.clear(); m_remoteLanguages.clear();
if (!remoteLanguages.empty()) { if (!remoteLanguages.empty()) {
for (size_t i = 0; i <= remoteLanguages.size() - 2; i += 2) { for (size_t i = 0; i <= remoteLanguages.size() - 2; i += 2) {
m_remoteLanguages.push_back(remoteLanguages.substr(i, 2)); auto rLangs = remoteLanguages.substr(i, 2);
m_remoteLanguages.push_back(std::string{rLangs.begin(), rLangs.end()});
} }
} }
LOG((CLOG_INFO "remote languages: %s", vectorToString(m_remoteLanguages, ", ").c_str())); LOG((CLOG_INFO "remote languages: %s", vectorToString(m_remoteLanguages, ", ").c_str()));

View file

@ -27,7 +27,7 @@ public:
* @brief setRemoteLanguages sets remote languages * @brief setRemoteLanguages sets remote languages
* @param remoteLanguages is a string with sericalized languages * @param remoteLanguages is a string with sericalized languages
*/ */
void setRemoteLanguages(const std::string &remoteLanguages); void setRemoteLanguages(const std::string_view &remoteLanguages);
/** /**
* @brief getRemoteLanguages getter for remote languages * @brief getRemoteLanguages getter for remote languages

View file

@ -95,7 +95,7 @@ std::vector<X11LayoutsParser::Lang> X11LayoutsParser::getAllLanguageData(const s
void X11LayoutsParser::appendVectorUniq(const std::vector<std::string> &source, std::vector<std::string> &dst) void X11LayoutsParser::appendVectorUniq(const std::vector<std::string> &source, std::vector<std::string> &dst)
{ {
for (const auto &elem : source) { for (const auto &elem : source) {
if (std::find_if(dst.begin(), dst.end(), [elem](const std::string &s) { return s == elem; }) == dst.end()) { if (std::find_if(dst.begin(), dst.end(), [elem](const std::string_view &s) { return s == elem; }) == dst.end()) {
dst.push_back(elem); dst.push_back(elem);
} }
} }

View file

@ -1147,7 +1147,7 @@ void Config::parseAction(
rule.adoptAction(action, activate); rule.adoptAction(action, activate);
} }
void Config::parseScreens(const ConfigReadContext &c, const std::string &s, std::set<std::string> &screens) const void Config::parseScreens(const ConfigReadContext &c, const std::string_view &s, std::set<std::string> &screens) const
{ {
screens.clear(); screens.clear();
@ -1370,7 +1370,7 @@ Config::CellEdge::CellEdge(const std::string &name, EDirection side, const Inter
init(name, side, interval); init(name, side, interval);
} }
void Config::CellEdge::init(const std::string &name, EDirection side, const Interval &interval) void Config::CellEdge::init(const std::string_view &name, EDirection side, const Interval &interval)
{ {
assert(side != kNoDirection); assert(side != kNoDirection);
@ -1384,7 +1384,7 @@ Config::Interval Config::CellEdge::getInterval() const
return m_interval; return m_interval;
} }
void Config::CellEdge::setName(const std::string &newName) void Config::CellEdge::setName(const std::string_view &newName)
{ {
m_name = newName; m_name = newName;
} }

View file

@ -64,7 +64,7 @@ public:
~CellEdge() = default; ~CellEdge() = default;
Interval getInterval() const; Interval getInterval() const;
void setName(const std::string &newName); void setName(const std::string_view &newName);
std::string getName() const; std::string getName() const;
EDirection getSide() const; EDirection getSide() const;
bool overlaps(const CellEdge &) const; bool overlaps(const CellEdge &) const;
@ -84,7 +84,7 @@ public:
bool operator!=(const CellEdge &) const; bool operator!=(const CellEdge &) const;
private: private:
void init(const std::string &name, EDirection side, const Interval &); void init(const std::string_view &name, EDirection side, const Interval &);
private: private:
std::string m_name; std::string m_name;
@ -474,7 +474,7 @@ private:
bool activate bool activate
); );
void parseScreens(const ConfigReadContext &, const std::string &, std::set<std::string> &screens) const; void parseScreens(const ConfigReadContext &, const std::string_view &, std::set<std::string> &screens) const;
static const char *getOptionName(OptionID); static const char *getOptionName(OptionID);
static std::string getOptionValue(OptionID, OptionValue); static std::string getOptionValue(OptionID, OptionValue);

View file

@ -845,7 +845,7 @@ void InputFilter::setPrimaryClient(PrimaryClient *client)
} }
} }
std::string InputFilter::format(const std::string &linePrefix) const std::string InputFilter::format(const std::string_view &linePrefix) const
{ {
std::string s; std::string s;
for (auto i = m_ruleList.begin(); i != m_ruleList.end(); ++i) { for (auto i = m_ruleList.begin(); i != m_ruleList.end(); ++i) {

View file

@ -375,7 +375,7 @@ public:
virtual void setPrimaryClient(PrimaryClient *client); virtual void setPrimaryClient(PrimaryClient *client);
// convert rules to a string // convert rules to a string
std::string format(const std::string &linePrefix) const; std::string format(const std::string_view &linePrefix) const;
// get number of rules // get number of rules
uint32_t getNumRules() const; uint32_t getNumRules() const;