... | @@ -6,30 +6,55 @@ tool writers to use the GHC API. |
... | @@ -6,30 +6,55 @@ tool writers to use the GHC API. |
|
|
|
|
|
1. More parser entrypoints, to explicitly parse fragments (Andrew Gibiansky)
|
|
1. More parser entrypoints, to explicitly parse fragments (Andrew Gibiansky)
|
|
|
|
|
|
|
|
>
|
|
>
|
|
>
|
|
> The following parsers are now provided
|
|
> The following parsers are now provided
|
|
|
|
>
|
|
|
|
>
|
|
|
|
|
|
|
|
>
|
|
|
|
> >
|
|
|
|
> >
|
|
> > `parseModule`, `parseImport`, `parseStatement`, `parseDeclaration`,
|
|
> > `parseModule`, `parseImport`, `parseStatement`, `parseDeclaration`,
|
|
> > `parseExpression`, `parseTypeSignature`, `parseFullStmt`, `parseStmt`,
|
|
> > `parseExpression`, `parseTypeSignature`, `parseFullStmt`, `parseStmt`,
|
|
> > `parseIdentifier`, `parseType`, `parseHeader`
|
|
> > `parseIdentifier`, `parseType`, `parseHeader`
|
|
|
|
> >
|
|
|
|
> >
|
|
|
|
>
|
|
|
|
|
|
1. No more landmines in the AST (Alan Zimmerman).
|
|
1. No more landmines in the AST (Alan Zimmerman).
|
|
|
|
|
|
|
|
>
|
|
>
|
|
>
|
|
> In the past it was difficult to work with the GHC AST as any generic traversals had to carefully tiptoe around an assortment of panic and undefined expressions. These have now been removed, by uses of `PostRn`, `PostTc`, etc, allowing standard traversal libraries to be used. See module `hsSyn/PlaceHolder`.
|
|
> In the past it was difficult to work with the GHC AST as any generic traversals had to carefully tiptoe around an assortment of panic and undefined expressions. These have now been removed, by uses of `PostRn`, `PostTc`, etc, allowing standard traversal libraries to be used. See module `hsSyn/PlaceHolder`.
|
|
|
|
>
|
|
|
|
>
|
|
|
|
|
|
|
|
>
|
|
>
|
|
>
|
|
> The relevant commit is `7d3f2dfc7a45d741224c521e0f2a616a89f9506f`
|
|
> The relevant commit is `7d3f2dfc7a45d741224c521e0f2a616a89f9506f`
|
|
|
|
>
|
|
|
|
>
|
|
|
|
|
|
1. Introduce an annotation structure to the `ParsedSource` to record the location of un-captured keywords (Alan Zimmerman).
|
|
1. Introduce an annotation structure to the `ParsedSource` to record the location of un-captured keywords (Alan Zimmerman).
|
|
|
|
|
|
|
|
>
|
|
>
|
|
>
|
|
> At the moment the location of let / in / if / then / else / do etc is not captured in the AST. This makes it difficult to parse some source, transform the AST, and then output it again preserving the original layout.
|
|
> At the moment the location of let / in / if / then / else / do etc is not captured in the AST. This makes it difficult to parse some source, transform the AST, and then output it again preserving the original layout.
|
|
|
|
>
|
|
|
|
>
|
|
|
|
|
|
|
|
>
|
|
>
|
|
>
|
|
> Wiki page: [ApiAnnotations](api-annotations)
|
|
> Wiki page: [ApiAnnotations](api-annotations)
|
|
|
|
>
|
|
|
|
>
|
|
|
|
|
|
1. Introduce a means to map `RdrNames` in the `ParsedSource` to their corresponding `Name` after renaming.
|
|
1. Introduce a means to map `RdrNames` in the `ParsedSource` to their corresponding `Name` after renaming.
|
|
|
|
|
|
>
|
|
>
|
|
> Wiki page: [ApiNameMap](api-name-map) |
|
>
|
|
\ No newline at end of file |
|
> Wiki page: [ApiNameMap](api-name-map)
|
|
|
|
>
|
|
|
|
>
|
|
|
|
|