@@ -645,11 +645,7 @@ class _Element2Writer extends _AbstractElementWriter {
645645
646646 void _writeFormalParameterElement (FormalParameterElement e) {
647647 e as FormalParameterElementImpl ;
648- // if (e.isNamed && e.enclosingElement is ExecutableElement) {
649- // expect(e.reference, isNotNull);
650- // } else {
651- // expect(e.reference, isNull);
652- // }
648+ expect (e.reference, isNull);
653649
654650 _sink.writeIndentedLine (() {
655651 _writeObjectId (e);
@@ -666,13 +662,14 @@ class _Element2Writer extends _AbstractElementWriter {
666662 _sink.writeIf (e.isConst, 'const ' );
667663 _sink.writeIf (e.isCovariant, 'covariant ' );
668664 _sink.writeIf (e.isFinal, 'final ' );
665+ _sink.writeIf (e.hasDefaultValue, 'hasDefaultValue ' );
669666 _sink.writeIf (e.hasImplicitType, 'hasImplicitType ' );
670667
671- if (e is FieldFormalParameterFragmentImpl ) {
672- _sink. write ( 'this.' );
673- } else if (e is SuperFormalParameterFragmentImpl ) {
674- _sink. writeIf (e.hasDefaultValue, 'hasDefaultValue ' );
675- _sink.write ('super.' );
668+ switch (e) {
669+ case FieldFormalParameterElementImpl () :
670+ _sink. write ( 'this.' );
671+ case SuperFormalParameterElementImpl () :
672+ _sink.write ('super.' );
676673 }
677674
678675 _writeElementName (e);
@@ -683,7 +680,6 @@ class _Element2Writer extends _AbstractElementWriter {
683680 _writeType ('type' , e.type);
684681 _writeMetadata (e.metadata);
685682 _writeSinceSdkVersion (e);
686- // _writeCodeRange(e);
687683 _writeElementList (
688684 'typeParameters' ,
689685 e,
@@ -697,40 +693,41 @@ class _Element2Writer extends _AbstractElementWriter {
697693 _writeFormalParameterElement,
698694 );
699695 _writeVariableElementConstantInitializer (e);
700- // _writeNonSyntheticElement(e);
701- // _writeFieldFormalParameterField(e);
702- // _writeSuperConstructorParameter(e);
696+
697+ switch (e) {
698+ case FieldFormalParameterElementImpl ():
699+ _elementPrinter.writeNamedElement2 ('field' , e.field);
700+ case SuperFormalParameterElementImpl ():
701+ _elementPrinter.writeNamedElement2 (
702+ 'superConstructorParameter' ,
703+ e.superConstructorParameter,
704+ );
705+ }
703706 });
704707 }
705708
706709 void _writeFormalParameterFragment (FormalParameterFragment f) {
707710 f as FormalParameterFragmentImpl ;
708- // if (f.isNamed && f.enclosingFragment is ExecutableFragment) {
709- // expect(f.reference, isNotNull);
710- // } else {
711- // expect(f.reference, isNull);
712- // }
713711
714712 _sink.writeIndentedLine (() {
715713 _writeObjectId (f);
716- // if (f.isRequiredPositional) {
717- // _sink.write('requiredPositional ');
718- // } else if (f.isOptionalPositional) {
719- // _sink.write('optionalPositional ');
720- // } else if (f.isRequiredNamed) {
721- // _sink.write('requiredNamed ');
722- // } else if (f.isOptionalNamed) {
723- // _sink.write('optionalNamed ');
724- // }
714+ if (f.isRequiredPositional) {
715+ _sink.write ('requiredPositional ' );
716+ } else if (f.isOptionalPositional) {
717+ _sink.write ('optionalPositional ' );
718+ } else if (f.isRequiredNamed) {
719+ _sink.write ('requiredNamed ' );
720+ } else if (f.isOptionalNamed) {
721+ _sink.write ('optionalNamed ' );
722+ }
725723
726- // _sink.writeIf(f.isConst, 'const ');
727- // _sink.writeIf(f.isCovariant , 'covariant ');
728- // _sink.writeIf(f.isFinal, 'final ');
724+ _sink.writeIf (f.isConst, 'const ' );
725+ _sink.writeIf (f.isExplicitlyCovariant , 'covariant ' );
726+ _sink.writeIf (f.isFinal, 'final ' );
729727
730728 if (f is FieldFormalParameterFragmentImpl ) {
731729 _sink.write ('this.' );
732730 } else if (f is SuperFormalParameterFragmentImpl ) {
733- // _sink.writeIf(f.hasDefaultValue, 'hasDefaultValue ');
734731 _sink.write ('super.' );
735732 }
736733
@@ -739,7 +736,6 @@ class _Element2Writer extends _AbstractElementWriter {
739736
740737 _sink.withIndent (() {
741738 _writeElementReference ('element' , f.element);
742- // _writeType('type', f.type);
743739 _writeMetadata (f.metadata);
744740 // _writeCodeRange(f);
745741 _writeFragmentList (
@@ -755,9 +751,6 @@ class _Element2Writer extends _AbstractElementWriter {
755751 _writeFormalParameterFragment,
756752 );
757753 _writeVariableFragmentInitializer (f);
758- // _writeNonSyntheticElement(e);
759- // _writeFieldFormalParameterField(e);
760- // _writeSuperConstructorParameter(e);
761754 _writeFragmentReference ('previousFragment' , f.previousFragment);
762755 _writeFragmentReference ('nextFragment' , f.nextFragment);
763756 });
0 commit comments