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

Support for extra/extended syntaxes? #68

Open
atcarter714 opened this issue Dec 4, 2022 · 2 comments
Open

Support for extra/extended syntaxes? #68

atcarter714 opened this issue Dec 4, 2022 · 2 comments
Labels
question Further information is requested

Comments

@atcarter714
Copy link

I'm curious if this has built-in support for extended C++ syntaxes such as Microsoft's extras ... and are there any specific considerations that need to be made for things like C++/CLR, C++/Cx, C++/WinRT headers, etc? Any difficulties with quirky COM-related code in Win32 headers? Or does it just process all of it just fine?

I was actually about to end up having to write one of these myself, from scratch, but then decided to look here first and see if my favorite person to steal from already had a solution available to use and, as I'd hoped, you already had a whole AST system defined. Looks like ClangSharp is providing the back-end service for it, which is a project I'm very, very interested in but haven't had a chance to use yet. I've been working with CsWin32 and Win32Metadata a bit lately, but I'm definitely very interested in what ClangSharp can do and how it differs from those Microsoft projects. I've been gradually making a custom, lightweight .NET 7 interop wrapper for DirectX 11/12 and have been trying to explore alternative tools, libraries, etc that can benefit my work and add some value ...

@xoofx
Copy link
Owner

xoofx commented Dec 5, 2022

I'm curious if this has built-in support for extended C++ syntaxes such as Microsoft's extras ... and are there any specific considerations that need to be made for things like C++/CLR, C++/Cx, C++/WinRT headers, etc?

Dunno, you would have to check.

Any difficulties with quirky COM-related code in Win32 headers? Or does it just process all of it just fine?

I believe so, but I haven't checked if it really works well with it, so it could be not working. Recently I have been implementing a wrapper around a COM like interface and that was fine to parse them with CppAst.

I've been gradually making a custom, lightweight .NET 7 interop wrapper for DirectX 11/12 and have been trying to explore alternative tools, libraries, etc that can benefit my work and add some value ...

Might be exactly what https://github.com/terrafx/terrafx.interop.windows is achieving, did you have a look?

@xoofx xoofx added the question Further information is requested label Dec 5, 2022
@atcarter714
Copy link
Author

Dunno, you would have to check.

Gotcha, I will find out I suppose.

I believe so, but I haven't checked if it really works well with it, so it could be not working. Recently I have been implementing a wrapper around a COM like interface and that was fine to parse them with CppAst.

Nice, that's encouraging to hear!

Might be exactly what https://github.com/terrafx/terrafx.interop.windows is achieving, did you have a look?

It's very similar, and yeah, I enjoy watching the stuff Tanner has been doing, it's a source of inspiration and knowledge. I am doing something similar, but much more light-weight and purely for DirectX + Windows, whereas they're doing something way bigger and cross-platform. I'm trying to keep my library really compact and thin, and I have a certain way I want to expose DirectX in C#/.NET so wrapping another wrapper just seemed like a bad idea. But I've often referred to it (as well as SlimDX, SharpDX and others) to learn some things and get ideas, it's an awesome library. :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants