Skip to content

🍒[5.7][Distributed] Implement distributed computed properties via special accessor #59774

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

ktoso
Copy link
Contributor

@ktoso ktoso commented Jun 29, 2022

Description: This implements a missing feature, distributed computed properties. This is a reimplementation after one implementation approach was asked to be reverted. This is the approach discussed with @DougGregor recently.
Testing: PR Testing
Depends on: #59736 because otherwise we're in conflict hell between those building on one another
Original PR: #59700
Resolves: rdar://91283164

ktoso and others added 16 commits June 29, 2022 16:21
`DistributedThunk` is to be used while accessing 'distributed'
computed property outside of its actor context.
This strategy is used to dispatch accesses to 'distributed' computed
property to distributed thunk accessor instead of a regular getter
when access happen outside actor isolation context.
The attribute comes handy during solution application to
determine whether the call is using a distributed thunk.
…uted thunks

Distributed thunks have to refer to the "local" version
of the property directly with implicit `self.` base.
@ktoso ktoso requested a review from a team as a code owner June 29, 2022 07:38
@ktoso
Copy link
Contributor Author

ktoso commented Jun 29, 2022

@swift-ci please test

@ktoso
Copy link
Contributor Author

ktoso commented Jun 29, 2022

@swift-ci please build toolchain

@ktoso ktoso closed this Jun 29, 2022
@ktoso ktoso reopened this Jun 29, 2022
@ktoso ktoso closed this Jun 29, 2022
@AnthonyLatsis AnthonyLatsis added 🍒 release cherry pick Flag: Release branch cherry picks swift 5.7 labels Jan 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
distributed Feature → concurrency: distributed actor 🍒 release cherry pick Flag: Release branch cherry picks swift 5.7
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants