5a99031028
In general this moves in the direction of dealing more with Identifier instances instead of TypeAnnotation instances. This ended up being a larger refactor than I had hoped, but at a high level it does the following: - Adds the TypeAnnotationCode/NamedTypeAnnotationCode/FunctionTypeAnnotationCode classes - Change the TypeResolver api to have a single 'resolve' method, which takes a TypeAnnotationCode argument - Makes ParameterCode/TypeParameterCode take more structured arguments - Update the CFE code to be able to resolve NamedTypeAnnotationCode instances instead of TypeAnnotation instances - Also deletes some unnecessary Code classes. Note that supporting FunctionTypeAnnotationCode instances looks like it will be some more work in the CFE. Change-Id: I84712aa1c29634cd0a93d245171b3591f69be927 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/231327 Reviewed-by: Johnni Winther <johnniwinther@google.com> Reviewed-by: Bob Nystrom <rnystrom@google.com> Commit-Queue: Jake Macdonald <jakemac@google.com>
FE/analyzer shared code
This package contains logic that is shared between the front_end and analyzer packages. It is intended solely to facilitate development of the Dart SDK, and is not intended for use by end users. In particular, this package has no public API, so no guarantee is made of compatibility between one version of the package and the next.
End users should consider using the analyzer package to analyze Dart source code.