Skip to content

Commit 1d47e8b

Browse files
committed
[lldb/formatter] Add Swift.UnsafeRawBufferPointer data formatter
This patch adds support for Swift's UnsafeRawBufferPointer and UnsafeMutableRawBufferPointer data formatting. This commit also introduces a new SwiftUnsafeType factory to adapt and use both Unsafe{,Raw}BufferPointer with the pre-existing data formatter. rdar://63946760 Signed-off-by: Med Ismail Bennani <[email protected]>
1 parent 5bbb632 commit 1d47e8b

File tree

4 files changed

+324
-62
lines changed

4 files changed

+324
-62
lines changed

lldb/source/Plugins/Language/Swift/SwiftLanguage.cpp

+10-9
Original file line numberDiff line numberDiff line change
@@ -329,9 +329,9 @@ static void LoadSwiftFormatters(lldb::TypeCategoryImplSP swift_category_sp) {
329329
AddCXXSummary(
330330
swift_category_sp,
331331
lldb_private::formatters::swift::UnsafeBufferPointerSummaryProvider,
332-
"Swift.Unsafe(Mutable)BufferPointer",
333-
ConstString("^Swift.Unsafe(Mutable)?BufferPointer<.+>$"), summary_flags,
334-
true);
332+
"Swift.Unsafe[Mutable][Raw]BufferPointer",
333+
ConstString("^Swift.Unsafe(Mutable)?(Raw)?BufferPointer(<.+>)?$"),
334+
summary_flags, true);
335335

336336
DictionaryConfig::Get()
337337
.RegisterSummaryProviders(swift_category_sp, summary_flags);
@@ -390,12 +390,13 @@ static void LoadSwiftFormatters(lldb::TypeCategoryImplSP swift_category_sp) {
390390
synth_flags,
391391
false);
392392

393-
AddCXXSynthetic(swift_category_sp,
394-
lldb_private::formatters::swift::
395-
UnsafeBufferPointerSyntheticFrontEndCreator,
396-
"Swift.Unsafe(Mutable)BufferPointer",
397-
ConstString("^Swift.Unsafe(Mutable)?BufferPointer<.+>$"),
398-
synth_flags, true);
393+
AddCXXSynthetic(
394+
swift_category_sp,
395+
lldb_private::formatters::swift::
396+
UnsafeBufferPointerSyntheticFrontEndCreator,
397+
"Swift.Unsafe[Mutable][Raw]BufferPointer",
398+
ConstString("^Swift.Unsafe(Mutable)?(Raw)?BufferPointer(<.+>)?$"),
399+
synth_flags, true);
399400

400401
DictionaryConfig::Get()
401402
.RegisterSyntheticChildrenCreators(swift_category_sp, synth_flags);

0 commit comments

Comments
 (0)