-
-
Notifications
You must be signed in to change notification settings - Fork 35
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
Prototype: Macro expansion / lowering #329
Closed
Closed
Commits on Jul 8, 2023
-
Begin working on macro expansion. So far this just expands backquotes. Also some changes to SyntaxNode make it possible to construct ASTs from these programmatically, without the source being available. And some basic support to allow us to track provenance through syntax transformations.
Configuration menu - View commit details
-
Copy full SHA for 1e333b6 - Browse repository at this point
Copy the full SHA 1e333b6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9edd433 - Browse repository at this point
Copy the full SHA 9edd433View commit details -
Interop: Expand macros taking
Expr
Allow `macroexpand` to call macros which only have an implementation in terms of the `Expr` data structure. Also add a `__macroname__` argument to pass the expression of the macro name as it appeared at macro invocation. Implement `@__FILE__` `@__LINE__` and `@__COLUMN__` in terms of this.
Configuration menu - View commit details
-
Copy full SHA for 45effcb - Browse repository at this point
Copy the full SHA 45effcbView commit details -
Configuration menu - View commit details
-
Copy full SHA for cd846e0 - Browse repository at this point
Copy the full SHA cd846e0View commit details -
Handle macros which call macros more correctly
Macros expansion of macros which emit macros as part of their AST needs care when that AST contains interpolations: We don't want the second macro expansion to see the hygenic_scope expression. One way to do this is to transform hygenic_scope back into `SyntaxLiteral` on the fly. Also fix auto-escaping for expressions arising from the original scope by adding the necessary number of Expr(:esc)
Configuration menu - View commit details
-
Copy full SHA for e61fdb2 - Browse repository at this point
Copy the full SHA e61fdb2View commit details
Commits on Jul 9, 2023
-
Configuration menu - View commit details
-
Copy full SHA for b43c443 - Browse repository at this point
Copy the full SHA b43c443View commit details
Commits on Jul 10, 2023
-
Configuration menu - View commit details
-
Copy full SHA for fe69bf0 - Browse repository at this point
Copy the full SHA fe69bf0View commit details
Commits on Jul 12, 2023
-
One of the many internal Base things we're using is likely different on <= 1.8
Configuration menu - View commit details
-
Copy full SHA for d672db2 - Browse repository at this point
Copy the full SHA d672db2View commit details
Commits on Jul 16, 2023
-
Configuration menu - View commit details
-
Copy full SHA for d5193ca - Browse repository at this point
Copy the full SHA d5193caView commit details
Commits on Jul 17, 2023
-
Configuration menu - View commit details
-
Copy full SHA for fa096e8 - Browse repository at this point
Copy the full SHA fa096e8View commit details
Commits on Jul 26, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 4ffae03 - Browse repository at this point
Copy the full SHA 4ffae03View commit details
Commits on Jul 29, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 9a54e2e - Browse repository at this point
Copy the full SHA 9a54e2eView commit details
Commits on Aug 2, 2023
-
Configuration menu - View commit details
-
Copy full SHA for f72a1d0 - Browse repository at this point
Copy the full SHA f72a1d0View commit details
Commits on Aug 7, 2023
-
Fix ccall prototype implementation
Plus subtle fixes to macro expansion prototype
Configuration menu - View commit details
-
Copy full SHA for 657a23c - Browse repository at this point
Copy the full SHA 657a23cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 81c5dc2 - Browse repository at this point
Copy the full SHA 81c5dc2View commit details
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.