Files
sdk/pkg/_fe_analyzer_shared
Chloe Stefantsova 05ce57215b [flow analysis] Refactor FlowAnalysis and FlowAnalysisNullShortingInterface
Changes the signatures of the following flow analysis methods:
- `FlowAnalysis.cascadeExpression_afterTarget`
- `FlowAnalysis.initialize`
- `FlowAnalysis.nullAwareMapEntry_valueBegin`
- `FlowAnalysis.write`
- `FlowAnalysisNullShortingInterface.nullAwareAccess_rightBegin`

so that the caller is responsible for looking up the expression info of
the matched value, and passing it in to flow analysis.

Additionally, the declaration of `getExpressionInfo` is moved from
`FlowAnalysis` to `FlowAnalysisNullShortingInterface`, in order to make
it available for calling in `NullShortingMixin`. With that change,
`getExpressionInfo` becomes declared in the same class as
`storeExpressionInfo`.

Change-Id: I2940663d00b46ee144fb1f86273ed87ae78a9fff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/480160
Reviewed-by: Paul Berry <paulberry@google.com>
Auto-Submit: Chloe Stefantsova <cstefantsova@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2026-02-12 07:51:04 -08:00
..
2025-02-19 09:33:31 -08:00

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.