• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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