Skip to content
This repository has been archived by the owner on Nov 30, 2022. It is now read-only.

[Tracking issue] going farther than the AST #2

Open
4 tasks
scrabsha opened this issue Jul 6, 2021 · 1 comment
Open
4 tasks

[Tracking issue] going farther than the AST #2

scrabsha opened this issue Jul 6, 2021 · 1 comment

Comments

@scrabsha
Copy link
Contributor

scrabsha commented Jul 6, 2021

Ideally we should have our own types, that are a bit more abstract than what syn currently provides. For instance, we don't need to keep the fn token when storing a function signature. Similarly, we don't need the :: when storing an item path.

One of the greatest benefits is that we could do some simple operations during the conversion. A simple example is trait bounds. cargo-breaking currently treats the change T: Send + Sync to T: Sync + Send as a breaking change. As a fix, we could alphabetically sort the bounds when converting data to our own types.

This issue lists what needs to be implemented to fit these goals:

This list is not exhaustive, some items may be added in the future.

@scrabsha
Copy link
Contributor Author

Given the progress of the rustc backend (see #19), this issue is likely to get obsoleted soon.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant