1 //===-- CxxStringTypes.h ----------------------------------------------*- C++
4 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5 // See https://llvm.org/LICENSE.txt for license information.
6 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
8 //===----------------------------------------------------------------------===//
10 #ifndef liblldb_CxxStringTypes_h_
11 #define liblldb_CxxStringTypes_h_
13 #include "lldb/Core/ValueObject.h"
14 #include "lldb/DataFormatters/TypeSummary.h"
15 #include "lldb/Utility/Stream.h"
17 namespace lldb_private {
18 namespace formatters {
19 bool Char8StringSummaryProvider(ValueObject &valobj, Stream &stream,
20 const TypeSummaryOptions &options); // char8_t*
22 bool Char16StringSummaryProvider(
23 ValueObject &valobj, Stream &stream,
24 const TypeSummaryOptions &options); // char16_t* and unichar*
26 bool Char32StringSummaryProvider(
27 ValueObject &valobj, Stream &stream,
28 const TypeSummaryOptions &options); // char32_t*
30 bool WCharStringSummaryProvider(ValueObject &valobj, Stream &stream,
31 const TypeSummaryOptions &options); // wchar_t*
33 bool Char8SummaryProvider(ValueObject &valobj, Stream &stream,
34 const TypeSummaryOptions &options); // char8_t
36 bool Char16SummaryProvider(
37 ValueObject &valobj, Stream &stream,
38 const TypeSummaryOptions &options); // char16_t and unichar
40 bool Char32SummaryProvider(ValueObject &valobj, Stream &stream,
41 const TypeSummaryOptions &options); // char32_t
43 bool WCharSummaryProvider(ValueObject &valobj, Stream &stream,
44 const TypeSummaryOptions &options); // wchar_t
46 } // namespace formatters
47 } // namespace lldb_private
49 #endif // liblldb_CxxStringTypes_h_