-
Notifications
You must be signed in to change notification settings - Fork 49
Simplify capture representations #360
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
@hamishknight I see @available(*, deprecated, message: "moving to SwiftCompilerModules")
func libswiftParseRegexLiteral( What is the compiler-library interaction story? Is this function called or does the logic have to live outside the library? |
I believe those |
But what does that mean WRT the interface? We really wanted to keep this logic in the library because it's super easy to break otherwise. Case in point, I think this PR would break it because it makes |
At the very least we need a comment convention for what is a compiler-locked API and what isn't. We could do that via |
Yeah I think it makes sense to add back complier entry points, which should be the only thing the compiler calls into (and yeah we could make them SPI). We can keep the bridging gunk on the compiler side tho. |
Do you think you can commit those changes to this PR? I'm not the most up to date. |
@swift-ci please test |
Introduce CaptureList, make CaptureStructure semi-vestigial
Make
CaptureStructure
semi-vestigial and introduce an array-of-structsCaptureList
to use instead. Flipping from singly to multiply-nested captures is just flipping aBool
, though we still need to feed that info into the existentially stored captures.