# | Line 1 | Line 1 | |
---|---|---|
1 | < | /* |
1 | > | /* |
2 | * Copyright (c) 2005 The University of Notre Dame. All Rights Reserved. | |
3 | * | |
4 | * The University of Notre Dame grants you ("Licensee") a | |
# | Line 55 | Line 55 | namespace oopse { | |
55 | ||
56 | namespace oopse { | |
57 | ||
58 | – | |
58 | /** | |
59 | * Converts a string to UPPER CASE | |
60 | * @param S | |
# | Line 103 | Line 102 | namespace oopse { | |
102 | */ | |
103 | int isEndLine(char *line); | |
104 | ||
105 | + | bool CaseInsensitiveEquals(char ch1, char ch2); |
106 | ||
107 | + | size_t CaseInsensitiveFind(const std::string& str1, const std::string& str2); |
108 | + | |
109 | + | |
110 | /** | |
111 | * Convert a variable to a string | |
112 | * @param T data type | |
113 | * @param v data to be converted | |
114 | * @return a string | |
115 | */ | |
116 | < | template<typename T> |
117 | < | std::string toString(const T& v) { |
118 | < | std::ostringstream oss; |
119 | < | oss << v; |
120 | < | return oss.str(); |
116 | > | template<typename T> |
117 | > | std::string toString(const T& v) { |
118 | > | std::ostringstream oss; |
119 | > | if (!oss << v) { |
120 | > | std::cerr << "toString Error" << std::endl; |
121 | } | |
122 | + | return oss.str(); |
123 | + | } |
124 | + | |
125 | + | template<typename T> |
126 | + | T lexi_cast(const std::string& str) { |
127 | + | T result; |
128 | + | std::istringstream iss(str); |
129 | + | if (!(iss >> result)) { |
130 | + | std::cerr << "lexi_cast Error" << std::endl; |
131 | + | } |
132 | + | return result; |
133 | + | } |
134 | ||
120 | – | /**@todo need implementation */ |
121 | – | std::string getPrefix(const std::string& str); |
135 | ||
136 | < | /**@todo need implementation */ |
137 | < | std::string getSuffix(const std::string& str); |
138 | < | |
139 | < | } |
136 | > | template<typename T> |
137 | > | bool isType(const std::string& str) { |
138 | > | T result; |
139 | > | std::istringstream iss(str); |
140 | > | bool ret = true; |
141 | > | if (!(iss >> result)) { |
142 | > | ret = false; |
143 | > | } |
144 | > | return ret; |
145 | > | } |
146 | ||
147 | + | bool isInteger(const std::string& str); |
148 | + | |
149 | + | std::string OOPSE_itoa(int value, unsigned int base = 10); |
150 | + | |
151 | + | /**@todo need implementation */ |
152 | + | std::string getPrefix(const std::string& str); |
153 | + | |
154 | + | /**@todo need implementation */ |
155 | + | std::string getSuffix(const std::string& str); |
156 | + | |
157 | + | |
158 | + | template<class ContainerType> |
159 | + | std::string containerToString(const ContainerType& cont) { |
160 | + | std::ostringstream oss; |
161 | + | oss << "("; |
162 | + | typename ContainerType::const_iterator i = cont.begin(); |
163 | + | if (i != cont.end()) { |
164 | + | oss << *i; |
165 | + | ++i; |
166 | + | } |
167 | + | for (; i != cont.end();++i) { |
168 | + | oss << ", "; |
169 | + | oss << *i; |
170 | + | } |
171 | + | oss << ")"; |
172 | + | return oss.str(); |
173 | + | } |
174 | + | |
175 | + | |
176 | + | } |
177 | #endif |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |