Skip to content

Make ComPtr results optional #54

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

Merged
merged 5 commits into from
Jan 20, 2018

Conversation

Boddlnagg
Copy link
Collaborator

Most methods returning interface/class types could return null, so we need to return Option<ComPtr<T>>. Fixes #20.

Return values from factory methods as well as IAsync... return types are not wrapped in Option, because the former are projected as constructors in C# (which cannot return null), and the latter are meant to be used with await syntax in C#, which can not deal with null (see dotnet/roslyn#7171).

In this PR I also finally removed the unsafe modifier from wrapper methods, because I'm sufficiently sure that these methods should be safe, and if some are not (as currently defined), then that's a bug in winrt-rust.

@Boddlnagg Boddlnagg merged commit b45d12f into contextfree:master Jan 20, 2018
@Boddlnagg Boddlnagg deleted the optional-comptr branch January 20, 2018 10:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant