Chromium Code Reviews| Index: ui/devtools/string_util.h |
| diff --git a/ui/devtools/string_util.h b/ui/devtools/string_util.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..8c61ffad506c7d988f850773e1bd6f13ee494467 |
| --- /dev/null |
| +++ b/ui/devtools/string_util.h |
| @@ -0,0 +1,58 @@ |
| +// Copyright 2016 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef WS_STRINGUTIL_H_ |
| +#define WS_STRINGUTIL_H_ |
|
sadrul
2016/10/17 17:44:36
UI_DEVTOOLS_STRING_UTIL_H_
Sarmad Hashmi
2016/10/17 19:15:29
Done.
|
| + |
| +#include <memory> |
| + |
| +#include "base/json/json_reader.h" |
| +#include "base/strings/string_number_conversions.h" |
| + |
| +namespace ui { |
| +namespace devtools { |
| + |
| +using String = std::string; |
| + |
| +namespace protocol { |
| + |
| +class Value; |
| + |
| +std::unique_ptr<Value> parseJSON(const String& string); |
| + |
| +class CustomStringBuilder { |
| + String s_; |
| + |
| + public: |
| + CustomStringBuilder() : s_("") {} |
| + CustomStringBuilder(String& s) : s_(s) {} |
| + void reserveCapacity(std::size_t size) { s_.reserve(size); } |
| + void append(const String& s) { s_ += s; } |
| + void append(char c) { s_ += c; } |
| + void append(const char*, unsigned int length) { return; } |
| + String toString() { return s_; } |
| +}; |
| + |
| +using StringBuilder = CustomStringBuilder; |
| + |
| +class StringUtil { |
| + public: |
| + static String substring(const String& s, unsigned pos, unsigned len) { |
| + return s.substr(pos, len); |
| + } |
| + static String fromInteger(int number) { return base::IntToString(number); } |
| + static String fromDouble(double number) { |
| + return base::DoubleToString(number); |
| + } |
| + static void builderReserve(StringBuilder& builder, unsigned capacity) { |
| + builder.reserveCapacity(capacity); |
| + } |
| + static const size_t kNotFound = -1; |
| +}; |
| + |
| +} // namespace protocol |
| +} // namespace devtools |
| +} // namespace ui |
| + |
| +#endif // WS_STRINGUTIL_H_ |