LLDB  mainline
Cocoa.h
Go to the documentation of this file.
1 //===-- Cocoa.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_COCOA_H
11 #define LLDB_SOURCE_PLUGINS_LANGUAGE_OBJC_COCOA_H
12 
13 #include "lldb/Core/ValueObject.h"
16 #include "lldb/Utility/Stream.h"
17 
19 
20 namespace lldb_private {
21 namespace formatters {
22 bool NSIndexSetSummaryProvider(ValueObject &valobj, Stream &stream,
23  const TypeSummaryOptions &options);
24 
25 bool NSArraySummaryProvider(ValueObject &valobj, Stream &stream,
26  const TypeSummaryOptions &options);
27 
28 template <bool needs_at>
29 bool NSDataSummaryProvider(ValueObject &valobj, Stream &stream,
30  const TypeSummaryOptions &options);
31 
32 bool NSNumberSummaryProvider(ValueObject &valobj, Stream &stream,
33  const TypeSummaryOptions &options);
34 
35 bool NSDecimalNumberSummaryProvider(ValueObject &valobj, Stream &stream,
36  const TypeSummaryOptions &options);
37 
38 bool NSNotificationSummaryProvider(ValueObject &valobj, Stream &stream,
39  const TypeSummaryOptions &options);
40 
41 bool NSTimeZoneSummaryProvider(ValueObject &valobj, Stream &stream,
42  const TypeSummaryOptions &options);
43 
44 bool NSMachPortSummaryProvider(ValueObject &valobj, Stream &stream,
45  const TypeSummaryOptions &options);
46 
47 bool NSDateSummaryProvider(ValueObject &valobj, Stream &stream,
48  const TypeSummaryOptions &options);
49 
50 bool NSBundleSummaryProvider(ValueObject &valobj, Stream &stream,
51  const TypeSummaryOptions &options);
52 
53 bool NSURLSummaryProvider(ValueObject &valobj, Stream &stream,
54  const TypeSummaryOptions &options);
55 
56 extern template bool NSDataSummaryProvider<true>(ValueObject &, Stream &,
57  const TypeSummaryOptions &);
58 
59 extern template bool NSDataSummaryProvider<false>(ValueObject &, Stream &,
60  const TypeSummaryOptions &);
61 
62 SyntheticChildrenFrontEnd *
63 NSArraySyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP);
64 
65 SyntheticChildrenFrontEnd *
66 NSIndexPathSyntheticFrontEndCreator(CXXSyntheticChildren *,
67  lldb::ValueObjectSP);
68 
69 bool ObjCClassSummaryProvider(ValueObject &valobj, Stream &stream,
70  const TypeSummaryOptions &options);
71 
72 SyntheticChildrenFrontEnd *
73 ObjCClassSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP);
74 
75 bool ObjCBOOLSummaryProvider(ValueObject &valobj, Stream &stream,
76  const TypeSummaryOptions &options);
77 
78 bool ObjCBooleanSummaryProvider(ValueObject &valobj, Stream &stream,
79  const TypeSummaryOptions &options);
80 
81 template <bool is_sel_ptr>
82 bool ObjCSELSummaryProvider(ValueObject &valobj, Stream &stream,
83  const TypeSummaryOptions &options);
84 
85 extern template bool ObjCSELSummaryProvider<true>(ValueObject &, Stream &,
86  const TypeSummaryOptions &);
87 
88 extern template bool ObjCSELSummaryProvider<false>(ValueObject &, Stream &,
89  const TypeSummaryOptions &);
90 
91 bool NSError_SummaryProvider(ValueObject &valobj, Stream &stream,
92  const TypeSummaryOptions &options);
93 
94 bool NSException_SummaryProvider(ValueObject &valobj, Stream &stream,
95  const TypeSummaryOptions &options);
96 
97 SyntheticChildrenFrontEnd *
98 NSErrorSyntheticFrontEndCreator(CXXSyntheticChildren *,
99  lldb::ValueObjectSP valobj_sp);
100 
101 SyntheticChildrenFrontEnd *
102 NSExceptionSyntheticFrontEndCreator(CXXSyntheticChildren *,
103  lldb::ValueObjectSP valobj_sp);
104 
106 public:
107  static std::map<ConstString, CXXFunctionSummaryFormat::Callback> &
108  GetAdditionalSummaries();
109 
110  static std::map<ConstString, CXXSyntheticChildren::CreateFrontEndCallback> &
111  GetAdditionalSynthetics();
112 };
113 } // namespace formatters
114 } // namespace lldb_private
115 
116 #endif // LLDB_SOURCE_PLUGINS_LANGUAGE_OBJC_COCOA_H
lldb_private::formatters::ObjCClassSummaryProvider
bool ObjCClassSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:993
lldb_private::formatters::NSDateSummaryProvider
bool NSDateSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:891
lldb_private::formatters::NSIndexPathSyntheticFrontEndCreator
SyntheticChildrenFrontEnd * NSIndexPathSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP)
Definition: NSIndexPath.cpp:303
lldb_private::formatters::ObjCSELSummaryProvider< false >
template bool ObjCSELSummaryProvider< false >(ValueObject &, Stream &, const TypeSummaryOptions &)
lldb_private::formatters::ObjCBOOLSummaryProvider
bool ObjCBOOLSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:1114
lldb_private::formatters::NSArraySummaryProvider
bool NSArraySummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: NSArray.cpp:335
lldb_private::formatters::NSArray_Additionals
Definition: Cocoa.h:105
lldb_private::formatters::NSNumberSummaryProvider
bool NSNumberSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:423
lldb_private::formatters::NSError_SummaryProvider
bool NSError_SummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: NSError.cpp:55
lldb_private::formatters::NSArraySyntheticFrontEndCreator
SyntheticChildrenFrontEnd * NSArraySyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP)
Definition: NSArray.cpp:797
lldb_private::formatters::ObjCClassSyntheticFrontEndCreator
SyntheticChildrenFrontEnd * ObjCClassSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP)
Definition: Cocoa.cpp:1045
lldb_private::formatters::NSDataSummaryProvider< false >
template bool NSDataSummaryProvider< false >(ValueObject &, Stream &, const TypeSummaryOptions &)
lldb_private::formatters::NSDecimalNumberSummaryProvider
bool NSDecimalNumberSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:716
lldb_private::formatters::NSDataSummaryProvider< true >
template bool NSDataSummaryProvider< true >(ValueObject &, Stream &, const TypeSummaryOptions &)
lldb_private::formatters::NSTimeZoneSummaryProvider
bool NSTimeZoneSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:90
lldb_private::formatters::NSIndexSetSummaryProvider
bool NSIndexSetSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:234
lldb_private::formatters::NSMachPortSummaryProvider
bool NSMachPortSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:188
ValueObject.h
lldb_private::formatters::NSURLSummaryProvider
bool NSURLSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:765
lldb_private::formatters::ObjCSELSummaryProvider< true >
template bool ObjCSELSummaryProvider< true >(ValueObject &, Stream &, const TypeSummaryOptions &)
lldb_private::formatters::NSExceptionSyntheticFrontEndCreator
SyntheticChildrenFrontEnd * NSExceptionSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP valobj_sp)
Definition: NSException.cpp:178
TypeSummary.h
TypeSynthetic.h
lldb_private::formatters::ObjCSELSummaryProvider
bool ObjCSELSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:1175
lldb_private::formatters::NSException_SummaryProvider
bool NSException_SummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: NSException.cpp:100
lldb_private::formatters::NSNotificationSummaryProvider
bool NSNotificationSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:139
ObjCLanguageRuntime.h
lldb_private::formatters::NSBundleSummaryProvider
bool NSBundleSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:39
lldb_private::formatters::ObjCBooleanSummaryProvider
bool ObjCBooleanSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:1145
lldb_private
A class that represents a running process on the host machine.
Definition: SBCommandInterpreterRunOptions.h:16
lldb_private::formatters::NSErrorSyntheticFrontEndCreator
SyntheticChildrenFrontEnd * NSErrorSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP valobj_sp)
Definition: NSError.cpp:185
Stream.h
lldb_private::formatters::NSDataSummaryProvider
bool NSDataSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
Definition: Cocoa.cpp:1051