eaedc90684
This adds improved support for map patterns. A new [Restriction] class replaces the [TypeBasedStaticType.identity] properties and allows not only for unique values as subtypes but also subsets of values as subtypes. For map pattern the subsets are defined by a [MapTypeIdentity] based on the type arguments of the map pattern, its constant key values and whether it has a rest pattern. Change-Id: I32b95f519cc161975af17ea82beacbc27ad5bbe1 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/287464 Commit-Queue: Johnni Winther <johnniwinther@google.com> Reviewed-by: Paul Berry <paulberry@google.com>
Front end for Dart
This package provides a low-level API for use by compiler back ends that wish to implement the Dart language. It is intended for eventual use by dev_compiler, dart2js, and the Dart VM. In addition, it will share implementation details with the analyzer package--this will be accomplished by having the analyzer package import (and re-export) parts of this package's private implementation.
End-users should use the dart analyze
command-line tool to analyze their Dart code.
Integrators that want to write tools that analyze Dart code should use the analyzer package.
Note: A previous version of this package was published on pub.dev. It has now been marked DISCONTINUED as it is not intended for direct consumption, as per the notes above.