Elements. Make ElementDirective abstract, not sealed.
This allows to have `ElementDirectiveImpl` internally. Presubmit in google3 is green: cl/752778004 Change-Id: Ia56ad45fab8d95aa5a089aae338414a7f5c4d549 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/425340 Reviewed-by: Brian Wilkerson <brianwilkerson@google.com> Reviewed-by: Paul Berry <paulberry@google.com> Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
This commit is contained in:
@@ -9,6 +9,9 @@
|
||||
* Deprecate `AnalysisError.correction` field; use
|
||||
`AnalysisError.correctionMessage` instead.
|
||||
* Deprecate `ErrorType`; use `DiagnosticType` instead.
|
||||
* Change `ElementDirective` from `sealed` to `abstract`.
|
||||
This allows the analyzer to have an internal implementation
|
||||
class corresponding to `ElementDirective`.
|
||||
|
||||
## 7.4.1
|
||||
* Restore `InstanceElement.augmented` getter.
|
||||
|
||||
@@ -3115,7 +3115,8 @@ package:analyzer/dart/element/element.dart:
|
||||
isWidgetFactory (getter: bool)
|
||||
computeConstantValue (method: DartObject? Function())
|
||||
toSource (method: String Function())
|
||||
ElementDirective (class extends Object implements Annotatable, sealed (immediate subtypes: LibraryExport, LibraryImport, PartInclude)):
|
||||
ElementDirective (class extends Object implements Annotatable):
|
||||
new (constructor: ElementDirective Function())
|
||||
libraryFragment (getter: LibraryFragment)
|
||||
uri (getter: DirectiveUri)
|
||||
ElementKind (class extends Object implements Comparable<ElementKind>):
|
||||
|
||||
@@ -845,7 +845,7 @@ abstract class ElementAnnotation implements ConstantEvaluationTarget {
|
||||
/// A directive within a library fragment.
|
||||
///
|
||||
/// Clients may not extend, implement or mix-in this class.
|
||||
sealed class ElementDirective implements Annotatable {
|
||||
abstract class ElementDirective implements Annotatable {
|
||||
/// The library fragment that contains this object.
|
||||
LibraryFragment get libraryFragment;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user