Skip to content
This repository was archived by the owner on Apr 2, 2020. It is now read-only.

Update Swift Set/Dictionary formatters in preparation of upcoming changes #927

Merged
merged 2 commits into from
Sep 21, 2018

Conversation

lorentey
Copy link
Member

swiftlang/swift#19213 will change the internal layout of Set/Dictionary. Prepare for this by adding lldb support for the new storage layouts.

Bonus change: fix the new synthetic children frontend so that enumerating all children takes linear time. (It was quadratic with the old formatters.)

@lorentey
Copy link
Member Author

@swift-ci test

@lorentey
Copy link
Member Author

This PR keeps support for old layouts. This can be removed in a followup PR later.

@@ -65,6 +68,18 @@ DictionaryConfig::DictionaryConfig()
= ConstString("Swift._SwiftDeferredNSDictionary<");
m_deferredBridgedStorage_demangledRegex
= ConstString("^Swift\\._SwiftDeferredNSDictionary<.+,.+>$");

// Legacy Swift 4.2 storage class names
m_legacy_nativeStorage_mangledRegex_ObjC =
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Feel free to remove the old layout. swiftc and swift-lldb are revlocked so keeping around legacy is pointless for now.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool, I will do that in a followup next week. (I kept support for the old stuff in case we need to temporarily take out the Set/Dictionary PR.)

@lorentey lorentey merged commit 73cf95d into apple:stable Sep 21, 2018
@lorentey lorentey deleted the hashtable-unification branch September 21, 2018 18:26
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants