Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(329)

Unified Diff: pkg/analyzer/lib/src/summary/format.dart

Issue 1639533003: Record static constant public fields. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Serialize only constant constructors. Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | pkg/analyzer/lib/src/summary/prelink.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analyzer/lib/src/summary/format.dart
diff --git a/pkg/analyzer/lib/src/summary/format.dart b/pkg/analyzer/lib/src/summary/format.dart
index 7a1508a12fe7cfba67b7b5af90fab53a0ee2f8a5..84dde09e3b2d1c593c9765755808f148c2dd4d9a 100644
--- a/pkg/analyzer/lib/src/summary/format.dart
+++ b/pkg/analyzer/lib/src/summary/format.dart
@@ -26,6 +26,11 @@ enum ReferenceKind {
constructor,
/**
+ * The entity is a static const field.
+ */
+ constField,
+
+ /**
* The entity is a static method.
*/
staticMethod,
@@ -4384,7 +4389,7 @@ class UnlinkedPublicNameBuilder extends Object with _UnlinkedPublicNameMixin imp
String _name;
ReferenceKind _kind;
int _numTypeParameters;
- List<UnlinkedPublicNameBuilder> _executables;
+ List<UnlinkedPublicNameBuilder> _constMembers;
@override
String get name => _name ??= '';
@@ -4422,33 +4427,34 @@ class UnlinkedPublicNameBuilder extends Object with _UnlinkedPublicNameMixin imp
}
@override
- List<UnlinkedPublicNameBuilder> get executables => _executables ??= <UnlinkedPublicNameBuilder>[];
+ List<UnlinkedPublicNameBuilder> get constMembers => _constMembers ??= <UnlinkedPublicNameBuilder>[];
/**
- * If this [UnlinkedPublicName] is a class, the list of static methods
- * and constructors. Otherwise empty.
+ * If this [UnlinkedPublicName] is a class, the list of members which can be
+ * referenced from constants - static constant fields, static methods, and
+ * constructors. Otherwise empty.
*/
- void set executables(List<UnlinkedPublicNameBuilder> _value) {
+ void set constMembers(List<UnlinkedPublicNameBuilder> _value) {
assert(!_finished);
- _executables = _value;
+ _constMembers = _value;
}
- UnlinkedPublicNameBuilder({String name, ReferenceKind kind, int numTypeParameters, List<UnlinkedPublicNameBuilder> executables})
+ UnlinkedPublicNameBuilder({String name, ReferenceKind kind, int numTypeParameters, List<UnlinkedPublicNameBuilder> constMembers})
: _name = name,
_kind = kind,
_numTypeParameters = numTypeParameters,
- _executables = executables;
+ _constMembers = constMembers;
fb.Offset finish(fb.Builder fbBuilder) {
assert(!_finished);
_finished = true;
fb.Offset offset_name;
- fb.Offset offset_executables;
+ fb.Offset offset_constMembers;
if (_name != null) {
offset_name = fbBuilder.writeString(_name);
}
- if (!(_executables == null || _executables.isEmpty)) {
- offset_executables = fbBuilder.writeList(_executables.map((b) => b.finish(fbBuilder)).toList());
+ if (!(_constMembers == null || _constMembers.isEmpty)) {
+ offset_constMembers = fbBuilder.writeList(_constMembers.map((b) => b.finish(fbBuilder)).toList());
}
fbBuilder.startTable();
if (offset_name != null) {
@@ -4460,8 +4466,8 @@ class UnlinkedPublicNameBuilder extends Object with _UnlinkedPublicNameMixin imp
if (_numTypeParameters != null && _numTypeParameters != 0) {
fbBuilder.addUint32(2, _numTypeParameters);
}
- if (offset_executables != null) {
- fbBuilder.addOffset(3, offset_executables);
+ if (offset_constMembers != null) {
+ fbBuilder.addOffset(3, offset_constMembers);
}
return fbBuilder.endTable();
}
@@ -4497,10 +4503,11 @@ abstract class UnlinkedPublicName extends base.SummaryClass {
int get numTypeParameters;
/**
- * If this [UnlinkedPublicName] is a class, the list of static methods
- * and constructors. Otherwise empty.
+ * If this [UnlinkedPublicName] is a class, the list of members which can be
+ * referenced from constants - static constant fields, static methods, and
+ * constructors. Otherwise empty.
*/
- List<UnlinkedPublicName> get executables;
+ List<UnlinkedPublicName> get constMembers;
}
class _UnlinkedPublicNameReader extends fb.TableReader<_UnlinkedPublicNameImpl> {
@@ -4518,7 +4525,7 @@ class _UnlinkedPublicNameImpl extends Object with _UnlinkedPublicNameMixin imple
String _name;
ReferenceKind _kind;
int _numTypeParameters;
- List<UnlinkedPublicName> _executables;
+ List<UnlinkedPublicName> _constMembers;
@override
String get name {
@@ -4539,9 +4546,9 @@ class _UnlinkedPublicNameImpl extends Object with _UnlinkedPublicNameMixin imple
}
@override
- List<UnlinkedPublicName> get executables {
- _executables ??= const fb.ListReader<UnlinkedPublicName>(const _UnlinkedPublicNameReader()).vTableGet(_bp, 3, const <UnlinkedPublicName>[]);
- return _executables;
+ List<UnlinkedPublicName> get constMembers {
+ _constMembers ??= const fb.ListReader<UnlinkedPublicName>(const _UnlinkedPublicNameReader()).vTableGet(_bp, 3, const <UnlinkedPublicName>[]);
+ return _constMembers;
}
}
@@ -4551,7 +4558,7 @@ abstract class _UnlinkedPublicNameMixin implements UnlinkedPublicName {
"name": name,
"kind": kind,
"numTypeParameters": numTypeParameters,
- "executables": executables,
+ "constMembers": constMembers,
};
}
« no previous file with comments | « no previous file | pkg/analyzer/lib/src/summary/prelink.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698