Tanner Gooding
Tanner Gooding
@TyOverby, I agree. However, it is likely worth providing a way to propagate attributes placed on the `async Main` method to the actual `Main` method, as this is the only...
https://github.com/dotnet/roslyn/issues/22112
Sorry for the delay on this, I've been heads down on some dotnet/runtime related work and completely forgot to respond. This is on my backlog (as are the other couple...
This can be achieved via remapping today. A new option to explicitly trim out some prefixes would also be possible, but there are many cases this won't work. This includes...
It's worth noting one of the "best" ways to consume these types is simply to do `using static abc_some_enum;` at which point you can just use `abc_some_enum_key1` as is, unqualified....
Clang doesn't provide a way to really get the text easily. Instead, ClangSharp handles this, in its own generator, like the following: https://github.com/dotnet/ClangSharp/blob/e4813d303b8fbb496c78d48ecd9b6846c14ba2f5/sources/ClangSharp.PInvokeGenerator/PInvokeGenerator.cs#L6414-L6437
There are a few different "ranges/extents/locations" exposed allowing you to get the macro expanded contents. These are generally centered around `CXCursor.Get*Location` combined with `CXSourceRange.Create(begin, end)` and ultimately `CXTranslationUnit.Tokenize` + `CXToken.ToString()`...
There isn't really any good APIs to get the full expanded form of the text. You ultimately need to do something like get the tokens and recursively try to expand...
I don't think this is a scalable or a workable solution. Structs are typically defined in one header. Typedefs can be defined in any number of headers, including arbitrary other...
I'd say that long term this should be an ask on dotnet/csharplang given that functionality is moving towards `InlineArray`. ClangSharp could generate these for compatible codegen, so I'll leave this...