Files
sdk/pkg/_fe_analyzer_shared/test
Konstantin Shcheglov 8d1a8ada6b Macro. Code optimizer, 0-th version.
I don't try to be even close to be correct here, but this is the base
on top of which I'd like to build the full implementation.

The idea is that we scan, and implement parser listener that builds
prefixed name in scopes. We fill scope with declarations as we find them. Using these scopes we can decide which import prefixes can be removed.

As usually for shared code, clients will implement abstract methods in the client specific way.

We might get a hierarchy of `Edit` objects, such as `RemoveImportPrefix` and `RemoveImportDirective` because at least in the analyzer we might need to apply some changes to the element models (metadata, constants).

Change-Id: I153259d87a09ab070f37192ae64ccd8da36e2d41
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/350260
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2024-02-05 18:50:10 +00:00
..