swift-macro-toolkit
swift-macro-toolkit copied to clipboard
A powerful toolkit for creating concise and expressive Swift macros
This PR introduces wrappers for the remaining declaration groups: `Class`, `Actor`, `Extension`, and `Protocol`. This enhancement allows the toolkit to handle a broader range of Swift declarations, improving its utility...
The `Type` enum has two computed properties specifically for extracting certain cases: `asSimpleType` and `asFunctionType`. To implement such properties for all cases would require a lot of boilerplate code, and...
Implement basic type normalization, as discussed in #7. The `Type.normalized()` function maps `Type` elements to their corresponding `NormalizedType` so that syntax that has the same semantic meaning is mapped to...
A major pain point for many Macro developers is handling all of the different ways that users can write types. For example, `Void?` is equivalent to `Optional` which is equivalent...
So far the only declaration group wrappers in the toolkit are `Enum` and `Struct`. By declaration group I mean a declaration with an attached block which itself contains declarations. For...
At the moment there is nothing shared between the toolkit's declaration wrappers; `StructDecl`, `EnumDecl`, `VariableDecl`, and maybe others by the time someone gets to this issue. A protocol would enable...
## Motivation Some users may not want to rely on certain APIs, so it's beneficial to divide the package into multiple targets. This allows library users to selectively use features....
I think you should update the major version number when you adopts the new major version of swift-syntax. In order to avoid error messages like below ``` error: Dependencies could...