1 #ifndef QUICHE_COMMON_PLATFORM_DEFAULT_QUICHE_PLATFORM_IMPL_QUICHE_LOWER_CASE_STRING_IMPL_H_
2 #define QUICHE_COMMON_PLATFORM_DEFAULT_QUICHE_PLATFORM_IMPL_QUICHE_LOWER_CASE_STRING_IMPL_H_
3 
4 #include <string>
5 
6 #include "absl/strings/ascii.h"
7 #include "absl/strings/string_view.h"
8 #include "quiche/common/platform/api/quiche_export.h"
9 
10 namespace quiche {
11 
12 class QUICHE_EXPORT QuicheLowerCaseStringImpl {
13  public:
QuicheLowerCaseStringImpl(absl::string_view str)14   QuicheLowerCaseStringImpl(absl::string_view str)
15       : str_(absl::AsciiStrToLower(str)) {}
16 
get()17   const std::string& get() const { return str_; }
18 
19  private:
20   std::string str_;
21 };
22 
23 }  // namespace quiche
24 
25 #endif  // QUICHE_COMMON_PLATFORM_DEFAULT_QUICHE_PLATFORM_IMPL_QUICHE_LOWER_CASE_STRING_IMPL_H_
26