1//===-- NSString.h ---------------------------------------------------*- C++
2//-*-===//
3//
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
7//
8//===----------------------------------------------------------------------===//
9
10#ifndef LLDB_SOURCE_PLUGINS_LANGUAGE_OBJC_NSSTRING_H
11#define LLDB_SOURCE_PLUGINS_LANGUAGE_OBJC_NSSTRING_H
12
13#include "lldb/Core/ValueObject.h"
14#include "lldb/DataFormatters/TypeSummary.h"
15#include "lldb/Utility/Stream.h"
16
17#include "Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.h"
18
19namespace lldb_private {
20namespace formatters {
21bool NSStringSummaryProvider(ValueObject &valobj, Stream &stream,
22 const TypeSummaryOptions &options);
23
24bool NSTaggedString_SummaryProvider(
25 ValueObject &valobj, ObjCLanguageRuntime::ClassDescriptorSP descriptor,
26 Stream &stream, const TypeSummaryOptions &summary_options);
27
28bool NSAttributedStringSummaryProvider(ValueObject &valobj, Stream &stream,
29 const TypeSummaryOptions &options);
30
31bool NSMutableAttributedStringSummaryProvider(
32 ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options);
33
34class NSString_Additionals {
35public:
36 static std::map<ConstString, CXXFunctionSummaryFormat::Callback> &
37 GetAdditionalSummaries();
38};
39} // namespace formatters
40} // namespace lldb_private
41
42#endif // LLDB_SOURCE_PLUGINS_LANGUAGE_OBJC_NSSTRING_H
43

source code of lldb/source/Plugins/Language/ObjC/NSString.h