1 //===-- NSSet.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_NSSET_H 11 #define LLDB_SOURCE_PLUGINS_LANGUAGE_OBJC_NSSET_H 12 13 #include "lldb/Core/ValueObject.h" 14 #include "lldb/DataFormatters/TypeSummary.h" 15 #include "lldb/DataFormatters/TypeSynthetic.h" 16 #include "lldb/Utility/ConstString.h" 17 #include "lldb/Utility/Stream.h" 18 19 namespace lldb_private { 20 namespace formatters { 21 template <bool cf_style> 22 bool NSSetSummaryProvider(ValueObject &valobj, Stream &stream, 23 const TypeSummaryOptions &options); 24 25 SyntheticChildrenFrontEnd *NSSetSyntheticFrontEndCreator(CXXSyntheticChildren *, 26 lldb::ValueObjectSP); 27 28 class NSSet_Additionals { 29 public: 30 static std::map<ConstString, CXXFunctionSummaryFormat::Callback> & 31 GetAdditionalSummaries(); 32 33 static std::map<ConstString, CXXSyntheticChildren::CreateFrontEndCallback> & 34 GetAdditionalSynthetics(); 35 }; 36 } // namespace formatters 37 } // namespace lldb_private 38 39 #endif // LLDB_SOURCE_PLUGINS_LANGUAGE_OBJC_NSSET_H 40