-
Notifications
You must be signed in to change notification settings - Fork 10.4k
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
Implement the final approved syntax for SE-227 identity key paths. #19382
Conversation
@swift-ci Please test |
include/swift/AST/Expr.h
Outdated
ArrayRef<Identifier> SubscriptLabels; | ||
ArrayRef<ProtocolConformanceRef> SubscriptHashableConformances; | ||
Type ComponentType; | ||
llvm::PointerIntPair<Type, 1, unsigned> ComponentTypeAndKindHi; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Component is already 9 words, so rather than cramming things in even tighter here it may be worth just making a separate field. (You could probably also shrink things down by taking the counts out of SubscriptLabels and SubscriptHashableConformances, getting down to 8 words and still having space left over for the kind.)
@jckarter What about tuple keypaths? :) |
Build failed |
`\.self` is the final chosen syntax. Implement support for this syntax, and remove the stopgap builtin and `WritableKeyPath._identity` property that were in place before.
a06c9f7
to
93b5de6
Compare
@swift-ci Please test |
Build failed |
Build failed |
@swift-ci Please test OS X |
Build failed |
@swift-ci Please smoke test OS X |
\.self
is the final chosen syntax. Implement support for this syntax, and remove the stopgap builtin andWritableKeyPath._identity
property that were in place before.