scsl 0.2.4
Shimmering Clarity Standard Library
StringUtil.h
Go to the documentation of this file.
1
22
23
24#include <algorithm>
25#include <string>
26#include <vector>
27
28
29#ifndef STRINGUTIL_H
30#define STRINGUTIL_H
31
32
33namespace scsl {
34
36namespace U {
37
39namespace S {
40
41
44void TrimLeadingWhitespace(std::string &s);
45
48void TrimTrailingWhitespace(std::string &s);
49
52void TrimWhitespace(std::string &s);
53
56std::string TrimLeadingWhitespaceDup(std::string s);
57
60std::string TrimTrailingWhitespaceDup(std::string s);
61
64std::string TrimWhitespaceDup(std::string s);
65
66
74std::vector<std::string> SplitKeyValuePair(std::string line, std::string delimiter);
75
83std::vector<std::string> SplitKeyValuePair(std::string line, char delimiter);
84
92std::vector<std::string> SplitN(std::string, std::string delimiter, size_t maxCount=0);
93
97std::vector<std::string> WrapText(std::string line, size_t lineLength);
98
105void WriteTabIndented(std::ostream &os, std::vector<std::string> lines,
106 int tabStop, bool indentFirst);
107
115void WriteTabIndented(std::ostream &os, std::string line, size_t maxLength,
116 int tabStop, bool indentFirst);
117
118
121std::ostream &VectorToString(std::ostream &os, const std::vector<std::string> &svec);
122
125std::string VectorToString(const std::vector<std::string> &svec);
126
127
128} // namespace S
129} // namespace U
130} // namespace scsl
131
132
133#endif // STRINGUTIL_H
134
135
std::vector< std::string > SplitKeyValuePair(std::string line, std::string delimiter)
Definition: StringUtil.cc:39
std::vector< std::string > WrapText(std::string line, size_t lineLength)
Definition: StringUtil.cc:146
void WriteTabIndented(std::ostream &os, std::vector< std::string > lines, int tabStop, bool indentFirst)
Definition: StringUtil.cc:182
std::string TrimTrailingWhitespaceDup(std::string s)
Definition: StringUtil.cc:106
void TrimTrailingWhitespace(std::string &s)
Definition: StringUtil.cc:81
std::string TrimWhitespaceDup(std::string s)
Definition: StringUtil.cc:114
void TrimWhitespace(std::string &s)
Definition: StringUtil.cc:90
std::ostream & VectorToString(std::ostream &os, const std::vector< std::string > &svec)
Definition: StringUtil.cc:206
std::string TrimLeadingWhitespaceDup(std::string s)
Definition: StringUtil.cc:98
std::vector< std::string > SplitN(std::string, std::string delimiter, size_t maxCount=0)
Definition: StringUtil.cc:122
void TrimLeadingWhitespace(std::string &s)
Definition: StringUtil.cc:70
scsl is the top-level namespace containing all the code in this library.
Definition: scsl.h:43