scsl  0.2.0
Shimmering Clarity Standard Library
StringUtil.h
Go to the documentation of this file.
1 
23 
24 #include <algorithm>
25 #include <string>
26 #include <vector>
27 
28 
29 #ifndef STRINGUTIL_H
30 #define STRINGUTIL_H
31 
32 
33 namespace scsl {
34 
36 namespace U {
37 
39 namespace S {
40 
41 
44 void TrimLeadingWhitespace(std::string &s);
45 
48 void TrimTrailingWhitespace(std::string &s);
49 
52 void TrimWhitespace(std::string &s);
53 
56 std::string TrimLeadingWhitespaceDup(std::string s);
57 
60 std::string TrimTrailingWhitespaceDup(std::string s);
61 
64 std::string TrimWhitespaceDup(std::string s);
65 
66 
74 std::vector<std::string> SplitKeyValuePair(std::string line, std::string delimiter);
75 
83 std::vector<std::string> SplitKeyValuePair(std::string line, char delimiter);
84 
92 std::vector<std::string> SplitN(std::string, std::string delimiter, size_t maxCount=0);
93 
97 std::vector<std::string> WrapText(std::string line, size_t lineLength);
98 
105 void WriteTabIndented(std::ostream &os, std::vector<std::string> lines,
106  int tabStop, bool indentFirst);
107 
115 void WriteTabIndented(std::ostream &os, std::string line, size_t maxLength,
116  int tabStop, bool indentFirst);
117 
118 
121 std::ostream &VectorToString(std::ostream &os, const std::vector<std::string> &svec);
122 
125 std::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