Skip to content
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 abstraction for marshalling direction in the generator APIs #78196

Merged
merged 2 commits into from
Nov 19, 2022

Conversation

jkoritzinsky
Copy link
Member

Use MarshalDirection to provide a nice abstraction for determining whether we're marshalling a parameter/return value/etc from managed to unmanaged or vice versa. This abstraction will be useful when enabling unmanaged->managed stubs as we won't need to go update every marshalling generator to correctly understand what to do.

Also rename some members from "in/out/ref" to use the direction-based names.

Extracted from #77130

…ether we're marshalling a parameter/return value/etc from managed to unmanaged or vice versa. This abstraction will be useful when enabling unmanaged->managed stubs as we won't need to go update every marshalling generator to correctly understand what to do.

Also rename some members from "in/out/ref" to use the direction-based names.
@jkoritzinsky jkoritzinsky added area-System.Runtime.InteropServices source-generator Indicates an issue with a source generator feature labels Nov 10, 2022
@jkoritzinsky jkoritzinsky added this to the 8.0.0 milestone Nov 10, 2022
@ghost ghost assigned jkoritzinsky Nov 10, 2022
@ghost
Copy link

ghost commented Nov 10, 2022

Tagging subscribers to this area: @dotnet/interop-contrib
See info in area-owners.md if you want to be subscribed.

Issue Details

Use MarshalDirection to provide a nice abstraction for determining whether we're marshalling a parameter/return value/etc from managed to unmanaged or vice versa. This abstraction will be useful when enabling unmanaged->managed stubs as we won't need to go update every marshalling generator to correctly understand what to do.

Also rename some members from "in/out/ref" to use the direction-based names.

Extracted from #77130

Author: jkoritzinsky
Assignees: -
Labels:

area-System.Runtime.InteropServices, source-generator

Milestone: 8.0.0

@jkoritzinsky
Copy link
Member Author

All failures are tracked by known issues (#78599), so merging in.

@jkoritzinsky jkoritzinsky merged commit 6519ec2 into dotnet:main Nov 19, 2022
@jkoritzinsky jkoritzinsky deleted the marshal-direction branch November 19, 2022 18:04
@ghost ghost locked as resolved and limited conversation to collaborators Dec 19, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-System.Runtime.InteropServices source-generator Indicates an issue with a source generator feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants