The goal of my GSoC project was to integrate the Syntax library into the compiler pipeline. That means creating the Syntax tree directly in
Parser (not through
SyntaxParsingContext) and using it to derive the AST required by the rest of the compiler with a new transformer.
My second merged pull request #25193 set up the infrastructure necessary for incremental development of the project and refactored literal parsing.
The third merged pull request #26478 refactored all of type parsing and provided more infrastructure for handling recursive grammar rules.
My last PR #26738 contains parts of expression parsing refactored and is expected to be merged soon.
As of August 28, 2019, the remaining work is:
- refactor the rest of expression parsing,
- refactor statement parsing,
- refactor declaration parsing.
Although the project originally aimed to deal with those as well, accommodating not only Syntax but also its C counterpart (for SwiftSyntax bindings) in the parser caused delays.
If you have any questions, I'll be happy to answer them.