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 liblldb_NSString_h_ 11#define liblldb_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 // liblldb_CF_h_ 43