Create _writeFragments and rename _readFragmentsById into _readFragments.

Change-Id: Ief992b70ff5af923dac75c7553683f6e2ed93a0e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/442171
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
diff --git a/pkg/analyzer/lib/src/summary2/bundle_reader.dart b/pkg/analyzer/lib/src/summary2/bundle_reader.dart
index 6015953..22b7f68 100644
--- a/pkg/analyzer/lib/src/summary2/bundle_reader.dart
+++ b/pkg/analyzer/lib/src/summary2/bundle_reader.dart
@@ -264,7 +264,7 @@
   void _readClassElements() {
     _libraryElement.classes = _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<ClassFragmentImpl>();
+      var fragments = _readFragments<ClassFragmentImpl>();
       // TODO(scheglov): link fragments.
       var element = ClassElementImpl(reference, fragments.first);
       element.readModifiers(_reader);
@@ -340,7 +340,7 @@
   List<ConstructorElementImpl> _readConstructorElements() {
     return _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<ConstructorFragmentImpl>();
+      var fragments = _readFragments<ConstructorFragmentImpl>();
       // TODO(scheglov): link fragments.
       var element = ConstructorElementImpl(
         name: fragments.first.name,
@@ -478,7 +478,7 @@
   void _readEnumElements() {
     _libraryElement.enums = _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<EnumFragmentImpl>();
+      var fragments = _readFragments<EnumFragmentImpl>();
       // TODO(scheglov): link fragments.
       var element = EnumElementImpl(reference, fragments.first);
 
@@ -563,7 +563,7 @@
   void _readExtensionElements() {
     _libraryElement.extensions = _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<ExtensionFragmentImpl>();
+      var fragments = _readFragments<ExtensionFragmentImpl>();
       // TODO(scheglov): link fragments.
       var element = ExtensionElementImpl(reference, fragments.first);
 
@@ -621,7 +621,7 @@
   void _readExtensionTypeElements() {
     _libraryElement.extensionTypes = _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<ExtensionTypeFragmentImpl>();
+      var fragments = _readFragments<ExtensionTypeFragmentImpl>();
       // TODO(scheglov): link fragments.
       var element = ExtensionTypeElementImpl(reference, fragments.first);
 
@@ -690,7 +690,7 @@
   List<FieldElementImpl> _readFieldElements() {
     return _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<FieldFragmentImpl>();
+      var fragments = _readFragments<FieldFragmentImpl>();
       // TODO(scheglov): link fragments.
       var element = FieldElementImpl(
         reference: reference,
@@ -776,14 +776,14 @@
     return _reader.readOptionalStringReference();
   }
 
-  List<T> _readFragmentsById<T extends FragmentImpl>() {
+  List<T> _readFragments<T extends FragmentImpl>() {
     return _reader.readTypedList(_readFragmentById);
   }
 
   List<GetterElementImpl> _readGetterElements() {
     return _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<GetterFragmentImpl>();
+      var fragments = _readFragments<GetterFragmentImpl>();
       // TODO(scheglov): link fragments.
       var element = GetterElementImpl(reference, fragments.first);
       element.readModifiers(_reader);
@@ -907,7 +907,7 @@
   List<MethodElementImpl> _readMethodElements() {
     return _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<MethodFragmentImpl>();
+      var fragments = _readFragments<MethodFragmentImpl>();
       // TODO(scheglov): link fragments.
       var element = MethodElementImpl(
         name: fragments.first.name,
@@ -970,7 +970,7 @@
   void _readMixinElements() {
     _libraryElement.mixins = _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<MixinFragmentImpl>();
+      var fragments = _readFragments<MixinFragmentImpl>();
       // TODO(scheglov): link fragments.
       var element = MixinElementImpl(reference, fragments.first);
       element.readModifiers(_reader);
@@ -1108,7 +1108,7 @@
   List<SetterElementImpl> _readSetterElements() {
     return _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<SetterFragmentImpl>();
+      var fragments = _readFragments<SetterFragmentImpl>();
       // TODO(scheglov): link fragments.
       var element = SetterElementImpl(reference, fragments.first);
       element.readModifiers(_reader);
@@ -1191,7 +1191,7 @@
   void _readTopLevelFunctionElements() {
     _libraryElement.topLevelFunctions = _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<TopLevelFunctionFragmentImpl>();
+      var fragments = _readFragments<TopLevelFunctionFragmentImpl>();
       // TODO(scheglov): link fragments.
       var element = TopLevelFunctionElementImpl(reference, fragments.first);
 
@@ -1253,7 +1253,7 @@
   void _readTopLevelVariableElements() {
     _libraryElement.topLevelVariables = _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<TopLevelVariableFragmentImpl>();
+      var fragments = _readFragments<TopLevelVariableFragmentImpl>();
       // TODO(scheglov): link fragments.
       var element = TopLevelVariableElementImpl(reference, fragments.first);
 
@@ -1293,7 +1293,7 @@
   void _readTypeAliasElements() {
     _libraryElement.typeAliases = _reader.readTypedList(() {
       var reference = _readReference();
-      var fragments = _readFragmentsById<TypeAliasFragmentImpl>();
+      var fragments = _readFragments<TypeAliasFragmentImpl>();
       var element = TypeAliasElementImpl(reference, fragments.first);
 
       element.deferReadResolution(
diff --git a/pkg/analyzer/lib/src/summary2/bundle_writer.dart b/pkg/analyzer/lib/src/summary2/bundle_writer.dart
index 614dd04..2fc29d5 100644
--- a/pkg/analyzer/lib/src/summary2/bundle_writer.dart
+++ b/pkg/analyzer/lib/src/summary2/bundle_writer.dart
@@ -122,7 +122,7 @@
     // TODO(scheglov): extract
     _sink.writeList(libraryElement.topLevelVariables, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, _writeFragmentId);
+      _writeFragments(element.fragments);
       _writeElementResolution(() {
         _resolutionSink.writeType(element.type);
       });
@@ -148,9 +148,7 @@
   void _writeClassElements(List<ClassElementImpl> elements) {
     _sink.writeList(elements, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, (fragment) {
-        _writeFragmentId(fragment);
-      });
+      _writeFragments(element.fragments);
       element.writeModifiers(_sink);
 
       // We read members lazily.
@@ -197,7 +195,7 @@
   void _writeConstructorElements(List<ConstructorElementImpl> elements) {
     _sink.writeList(elements, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, _writeFragmentId);
+      _writeFragments(element.fragments);
       element.writeModifiers(_sink);
 
       _writeElementResolution(() {
@@ -269,9 +267,7 @@
   void _writeEnumElements(List<EnumElementImpl> elements) {
     _sink.writeList(elements, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, (fragment) {
-        _writeFragmentId(fragment);
-      });
+      _writeFragments(element.fragments);
 
       // TODO(scheglov): consider reading lazily
       _resolutionSink.withTypeParameters(element.typeParameters, () {
@@ -331,9 +327,7 @@
   void _writeExtensionElements(List<ExtensionElementImpl> elements) {
     _sink.writeList(elements, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, (fragment) {
-        _writeFragmentId(fragment);
-      });
+      _writeFragments(element.fragments);
 
       // TODO(scheglov): consider reading lazily
       _resolutionSink.withTypeParameters(element.typeParameters, () {
@@ -367,9 +361,7 @@
   void _writeExtensionTypeElements(List<ExtensionTypeElementImpl> elements) {
     _sink.writeList(elements, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, (fragment) {
-        _writeFragmentId(fragment);
-      });
+      _writeFragments(element.fragments);
 
       // TODO(scheglov): consider reading lazily
       _resolutionSink.withTypeParameters(element.typeParameters, () {
@@ -416,7 +408,7 @@
   void _writeFieldElements(List<FieldElementImpl> elements) {
     _sink.writeList(elements, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, _writeFragmentId);
+      _writeFragments(element.fragments);
       _writeElementResolution(() {
         _resolutionSink.writeType(element.type);
       });
@@ -476,10 +468,14 @@
     _sink._writeOptionalStringReference(fragment.name);
   }
 
+  void _writeFragments(List<FragmentImpl> fragments) {
+    _sink.writeList(fragments, _writeFragmentId);
+  }
+
   void _writeGetterElements(List<GetterElementImpl> elements) {
     _sink.writeList(elements, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, _writeFragmentId);
+      _writeFragments(element.fragments);
       element.writeModifiers(_sink);
 
       _writeElementResolution(() {
@@ -541,7 +537,7 @@
   void _writeMethodElements(List<MethodElementImpl> elements) {
     _sink.writeList(elements, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, _writeFragmentId);
+      _writeFragments(element.fragments);
       element.writeModifiers(_sink);
       _sink._writeTopLevelInferenceError(element.typeInferenceError);
 
@@ -566,9 +562,7 @@
   void _writeMixinElements(List<MixinElementImpl> elements) {
     _sink.writeList(elements, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, (fragment) {
-        _writeFragmentId(fragment);
-      });
+      _writeFragments(element.fragments);
       element.writeModifiers(_sink);
 
       // TODO(scheglov): consider reading lazily
@@ -680,7 +674,7 @@
   void _writeSetterElements(List<SetterElementImpl> elements) {
     _sink.writeList(elements, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, _writeFragmentId);
+      _writeFragments(element.fragments);
       element.writeModifiers(_sink);
 
       _writeElementResolution(() {
@@ -715,7 +709,7 @@
   ) {
     _sink.writeList(elements, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, _writeFragmentId);
+      _writeFragments(element.fragments);
 
       _writeElementResolution(() {
         _resolutionSink.withTypeParameters(element.typeParameters, () {
@@ -744,7 +738,7 @@
   void _writeTypeAliasElements(List<TypeAliasElementImpl> elements) {
     _sink.writeList(elements, (element) {
       _writeReference(element.reference);
-      _sink.writeList(element.fragments, _writeFragmentId);
+      _writeFragments(element.fragments);
 
       _writeElementResolution(() {
         _resolutionSink.withTypeParameters(element.typeParameters, () {