Skip to content

Commit

Permalink
Version 3.7.0-300.0.dev
Browse files Browse the repository at this point in the history
Merge 076b05f into dev
  • Loading branch information
Dart CI committed Jan 4, 2025
2 parents f4363fe + 076b05f commit 3b88b9a
Show file tree
Hide file tree
Showing 7 changed files with 33 additions and 111 deletions.
6 changes: 0 additions & 6 deletions pkg/analyzer/analyzer_use_new_elements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,6 @@ lib/src/dart/resolver/function_reference_resolver.dart
lib/src/dart/resolver/invocation_inference_helper.dart
lib/src/dart/resolver/invocation_inferrer.dart
lib/src/dart/resolver/lexical_lookup.dart
lib/src/dart/resolver/list_pattern_resolver.dart
lib/src/dart/resolver/method_invocation_resolver.dart
lib/src/dart/resolver/named_type_resolver.dart
lib/src/dart/resolver/postfix_expression_resolver.dart
Expand Down Expand Up @@ -181,15 +180,11 @@ test/src/dart/element/type_visitor_test.dart
test/src/dart/element/upper_lower_bound_test.dart
test/src/dart/micro/simple_file_resolver_test.dart
test/src/dart/resolution/constant_test.dart
test/src/dart/resolution/generic_type_alias_test.dart
test/src/dart/resolution/prefix_element_test.dart
test/src/dart/resolution/resolution.dart
test/src/dart/resolution/scope_test.dart
test/src/dart/resolution/super_formal_parameter_test.dart
test/src/summary/element_text.dart
test/src/summary/elements/class_test.dart
test/src/summary/elements/enum_test.dart
test/src/summary/elements/extension_type_test.dart
test/src/summary/elements/metadata_test.dart
test/src/summary/elements/top_level_variable_test.dart
test/src/summary/elements/type_inference_test.dart
Expand All @@ -198,7 +193,6 @@ test/src/summary/macro_test.dart
test/src/summary/resolved_ast_printer.dart
test/src/task/strong/dart2_inference_test.dart
test/src/task/strong/inferred_type_test.dart
test/src/utilities/extensions/analysis_session_test.dart
test/src/utilities/extensions/library_element_test.dart
test/util/element_printer.dart
test/util/id_testing_helper.dart
1 change: 1 addition & 0 deletions pkg/analyzer/lib/src/dart/element/element.dart
Original file line number Diff line number Diff line change
Expand Up @@ -6372,6 +6372,7 @@ abstract class InterfaceElementImpl2 extends InstanceElementImpl2

@override
List<ConstructorElement2> get constructors2 {
firstFragment.constructors; // TODO(scheglov): remove eventually
return constructors
.map((constructor) =>
(constructor.declaration as ConstructorElementImpl).element)
Expand Down
29 changes: 29 additions & 0 deletions pkg/analyzer/test/src/summary/element_text.dart
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,35 @@ class ElementTextConfiguration {
this.filter = _filterTrue,
});

void forPromotableFields({
Set<String> classNames = const {},
Set<String> enumNames = const {},
Set<String> extensionTypeNames = const {},
Set<String> mixinNames = const {},
Set<String> fieldNames = const {},
}) {
filter = (e) {
if (e is ClassElement) {
return classNames.contains(e.name);
} else if (e is ConstructorElement) {
return false;
} else if (e is EnumElement) {
return enumNames.contains(e.name);
} else if (e is ExtensionTypeElement) {
return extensionTypeNames.contains(e.name);
} else if (e is FieldElement) {
return fieldNames.isEmpty || fieldNames.contains(e.name);
} else if (e is MixinElement) {
return mixinNames.contains(e.name);
} else if (e is PartElement) {
return false;
} else if (e is PropertyAccessorElement) {
return false;
}
return true;
};
}

static bool _filterTrue(Object element) => true;
}

Expand Down
38 changes: 2 additions & 36 deletions pkg/analyzer/test/src/summary/elements/class_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,10 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:analyzer/dart/element/element.dart';
import 'package:test/test.dart';
import 'package:test_reflective_loader/test_reflective_loader.dart';

import '../../dart/resolution/node_text_expectations.dart';
import '../element_text.dart';
import '../elements_base.dart';

main() {
Expand Down Expand Up @@ -27181,8 +27179,8 @@ mixin M {}
class X = A with M;
''');

var X = library.getClass('X')!;
expect(X.constructors, hasLength(1));
var X = library.getClass2('X')!;
expect(X.constructors2, hasLength(1));
}

test_classAlias_constructors_default() async {
Expand Down Expand Up @@ -43717,35 +43715,3 @@ class ClassElementTest_keepLinking extends ClassElementTest {
@override
bool get keepLinkingLibraries => true;
}

// TODO(scheglov): This is duplicate.
extension on ElementTextConfiguration {
void forPromotableFields({
Set<String> classNames = const {},
Set<String> enumNames = const {},
Set<String> extensionTypeNames = const {},
Set<String> mixinNames = const {},
Set<String> fieldNames = const {},
}) {
filter = (e) {
if (e is ClassElement) {
return classNames.contains(e.name);
} else if (e is ConstructorElement) {
return false;
} else if (e is EnumElement) {
return enumNames.contains(e.name);
} else if (e is ExtensionTypeElement) {
return extensionTypeNames.contains(e.name);
} else if (e is FieldElement) {
return fieldNames.isEmpty || fieldNames.contains(e.name);
} else if (e is MixinElement) {
return mixinNames.contains(e.name);
} else if (e is PartElement) {
return false;
} else if (e is PropertyAccessorElement) {
return false;
}
return true;
};
}
}
34 changes: 0 additions & 34 deletions pkg/analyzer/test/src/summary/elements/enum_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,9 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:analyzer/dart/element/element.dart';
import 'package:test_reflective_loader/test_reflective_loader.dart';

import '../../dart/resolution/node_text_expectations.dart';
import '../element_text.dart';
import '../elements_base.dart';

main() {
Expand Down Expand Up @@ -21829,35 +21827,3 @@ class EnumElementTest_keepLinking extends EnumElementTest {
@override
bool get keepLinkingLibraries => true;
}

// TODO(scheglov): This is duplicate.
extension on ElementTextConfiguration {
void forPromotableFields({
Set<String> classNames = const {},
Set<String> enumNames = const {},
Set<String> extensionTypeNames = const {},
Set<String> mixinNames = const {},
Set<String> fieldNames = const {},
}) {
filter = (e) {
if (e is ClassElement) {
return classNames.contains(e.name);
} else if (e is ConstructorElement) {
return false;
} else if (e is EnumElement) {
return enumNames.contains(e.name);
} else if (e is ExtensionTypeElement) {
return extensionTypeNames.contains(e.name);
} else if (e is FieldElement) {
return fieldNames.isEmpty || fieldNames.contains(e.name);
} else if (e is MixinElement) {
return mixinNames.contains(e.name);
} else if (e is PartElement) {
return false;
} else if (e is PropertyAccessorElement) {
return false;
}
return true;
};
}
}
34 changes: 0 additions & 34 deletions pkg/analyzer/test/src/summary/elements/extension_type_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,9 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:analyzer/dart/element/element.dart';
import 'package:test_reflective_loader/test_reflective_loader.dart';

import '../../dart/resolution/node_text_expectations.dart';
import '../element_text.dart';
import '../elements_base.dart';

main() {
Expand Down Expand Up @@ -10502,35 +10500,3 @@ class ExtensionTypeElementTest_keepLinking extends ElementsBaseTest
@override
bool get keepLinkingLibraries => true;
}

// TODO(scheglov): This is duplicate.
extension on ElementTextConfiguration {
void forPromotableFields({
Set<String> classNames = const {},
Set<String> enumNames = const {},
Set<String> extensionTypeNames = const {},
Set<String> mixinNames = const {},
Set<String> fieldNames = const {},
}) {
filter = (e) {
if (e is ClassElement) {
return classNames.contains(e.name);
} else if (e is ConstructorElement) {
return false;
} else if (e is EnumElement) {
return enumNames.contains(e.name);
} else if (e is ExtensionTypeElement) {
return extensionTypeNames.contains(e.name);
} else if (e is FieldElement) {
return fieldNames.isEmpty || fieldNames.contains(e.name);
} else if (e is MixinElement) {
return mixinNames.contains(e.name);
} else if (e is PartElement) {
return false;
} else if (e is PropertyAccessorElement) {
return false;
}
return true;
};
}
}
2 changes: 1 addition & 1 deletion tools/VERSION
Original file line number Diff line number Diff line change
Expand Up @@ -27,5 +27,5 @@ CHANNEL dev
MAJOR 3
MINOR 7
PATCH 0
PRERELEASE 299
PRERELEASE 300
PRERELEASE_PATCH 0

0 comments on commit 3b88b9a

Please sign in to comment.