Skip to content

Commit 48d495b

Browse files
scheglovCommit Queue
authored andcommitted
Elements. Remove FragmentImpl.nonSynthetic
This request is useful only for elements. We can create a synthetic element, and by necessity a fragment for it, but we never create a synthetic fragment just by itself, for a non-synthetic element. Change-Id: Ia8fee5e12e7b2c915c72276a402e164b9b30dc1e Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/436080 Reviewed-by: Brian Wilkerson <[email protected]> Commit-Queue: Konstantin Shcheglov <[email protected]> Reviewed-by: Paul Berry <[email protected]>
1 parent 4ce44bf commit 48d495b

File tree

2 files changed

+3
-61
lines changed

2 files changed

+3
-61
lines changed

pkg/analysis_server/lib/src/lsp/mapping.dart

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,6 @@ import 'package:analyzer/src/dart/analysis/search.dart'
3535
show DeclarationKind;
3636
import 'package:analyzer/src/dart/element/element.dart';
3737
import 'package:analyzer/src/error/codes.dart';
38-
import 'package:analyzer/src/utilities/extensions/string.dart'
39-
show IntExtension;
4038
import 'package:analyzer_plugin/protocol/protocol_common.dart' as plugin;
4139
import 'package:analyzer_plugin/src/utilities/client_uri_converter.dart';
4240
import 'package:collection/collection.dart';
@@ -533,11 +531,10 @@ lsp.Location? fragmentToLocation(
533531
int? nameLength;
534532
if (fragment case PropertyAccessorFragmentImpl(
535533
:var isSynthetic,
536-
:var nonSynthetic,
537534
) when isSynthetic) {
538-
var element = nonSynthetic;
539-
nameOffset = element.nameOffset.nullIfNegative;
540-
nameLength = element.name2?.length;
535+
var element = fragment.element.nonSynthetic;
536+
nameOffset = element.firstFragment.nameOffset2;
537+
nameLength = element.firstFragment.name2?.length;
541538
} else {
542539
nameOffset = fragment.nameOffset2;
543540
nameLength = fragment.name2?.length;

pkg/analyzer/lib/src/dart/element/element.dart

Lines changed: 0 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1098,11 +1098,6 @@ class ConstructorFragmentImpl extends ExecutableFragmentImpl
10981098
}
10991099
}
11001100

1101-
@override
1102-
FragmentImpl get nonSynthetic {
1103-
return isSynthetic ? enclosingElement3 : this;
1104-
}
1105-
11061101
@override
11071102
int get offset => isSynthetic ? enclosingElement3.offset : _nameOffset;
11081103

@@ -3676,11 +3671,6 @@ class FormalParameterFragmentImplOfImplicitSetter
36763671
return false;
36773672
}
36783673

3679-
@override
3680-
FragmentImpl get nonSynthetic {
3681-
return setter.variable2;
3682-
}
3683-
36843674
@override
36853675
int get offset => setter.offset;
36863676

@@ -3999,16 +3989,6 @@ abstract class FragmentImpl implements FragmentOrMember {
39993989
_nameOffset = offset;
40003990
}
40013991

4002-
/// The non-synthetic element that caused this element to be created.
4003-
///
4004-
/// If this element is not synthetic, then the element itself is returned.
4005-
///
4006-
/// If this element is synthetic, then the corresponding non-synthetic
4007-
/// element is returned. For example, for a synthetic getter of a
4008-
/// non-synthetic field the field is returned; for a synthetic constructor
4009-
/// the enclosing class is returned.
4010-
FragmentImpl get nonSynthetic => this;
4011-
40123992
@override
40133993
AnalysisSession? get session {
40143994
return enclosingElement3?.session;
@@ -7921,14 +7901,6 @@ class MethodFragmentImpl extends ExecutableFragmentImpl
79217901
return name2;
79227902
}
79237903

7924-
@override
7925-
FragmentImpl get nonSynthetic {
7926-
if (isSynthetic && enclosingElement3 is EnumFragmentImpl) {
7927-
return enclosingElement3;
7928-
}
7929-
return this;
7930-
}
7931-
79327904
void addFragment(MethodFragmentImpl fragment) {
79337905
fragment.element = element;
79347906
fragment.previousFragment = this;
@@ -9075,15 +9047,6 @@ class PropertyAccessorFragmentImplImplicitGetter extends GetterFragmentImpl {
90759047
@override
90769048
String? get name2 => variable2.name2;
90779049

9078-
@override
9079-
FragmentImpl get nonSynthetic {
9080-
if (!variable2.isSynthetic) {
9081-
return variable2;
9082-
}
9083-
assert(enclosingElement3 is EnumFragmentImpl);
9084-
return enclosingElement3;
9085-
}
9086-
90879050
@override
90889051
int get offset => variable2.offset;
90899052

@@ -9134,9 +9097,6 @@ class PropertyAccessorFragmentImplImplicitSetter extends SetterFragmentImpl {
91349097
@override
91359098
String? get name2 => variable2.name2;
91369099

9137-
@override
9138-
FragmentImpl get nonSynthetic => variable2;
9139-
91409100
@override
91419101
int get offset => variable2.offset;
91429102

@@ -9348,21 +9308,6 @@ abstract class PropertyInducingFragmentImpl
93489308
@override
93499309
MetadataImpl get metadata2 => metadata;
93509310

9351-
@override
9352-
FragmentImpl get nonSynthetic {
9353-
if (isSynthetic) {
9354-
if (enclosingElement3 is EnumFragmentImpl) {
9355-
// TODO(scheglov): remove 'index'?
9356-
if (name2 == 'index' || name2 == 'values') {
9357-
return enclosingElement3;
9358-
}
9359-
}
9360-
return (getter ?? setter)!;
9361-
} else {
9362-
return this;
9363-
}
9364-
}
9365-
93669311
/// The setter associated with this variable, or `null` if the variable
93679312
/// is effectively `final` and therefore does not have a setter associated
93689313
/// with it.

0 commit comments

Comments
 (0)