OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "tools/gn/string_utils.h" | 5 #include "tools/gn/string_utils.h" |
6 | 6 |
7 #include "tools/gn/err.h" | 7 #include "tools/gn/err.h" |
8 #include "tools/gn/scope.h" | 8 #include "tools/gn/scope.h" |
9 #include "tools/gn/token.h" | 9 #include "tools/gn/token.h" |
10 #include "tools/gn/tokenizer.h" | 10 #include "tools/gn/tokenizer.h" |
(...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
161 } | 161 } |
162 } | 162 } |
163 return true; | 163 return true; |
164 } | 164 } |
165 | 165 |
166 std::string RemovePrefix(const std::string& str, const std::string& prefix) { | 166 std::string RemovePrefix(const std::string& str, const std::string& prefix) { |
167 CHECK(str.size() >= prefix.size() && | 167 CHECK(str.size() >= prefix.size() && |
168 str.compare(0, prefix.size(), prefix) == 0); | 168 str.compare(0, prefix.size(), prefix) == 0); |
169 return str.substr(prefix.size()); | 169 return str.substr(prefix.size()); |
170 } | 170 } |
| 171 |
| 172 void TrimTrailingSlash(std::string* str) { |
| 173 if (!str->empty()) { |
| 174 DCHECK((*str)[str->size() - 1] == '/'); |
| 175 str->resize(str->size() - 1); |
| 176 } |
| 177 } |
OLD | NEW |