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

Side by Side Diff: pkg/analyzer/lib/src/summary/public_namespace_computer.dart

Issue 1714173002: Add summary support for ShowElementCombinator.end and .offset. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 10 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 unified diff | Download patch
« no previous file with comments | « pkg/analyzer/lib/src/summary/idl.dart ('k') | pkg/analyzer/lib/src/summary/resynthesize.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library analyzer.src.summary.public_namespace_visitor; 5 library analyzer.src.summary.public_namespace_visitor;
6 6
7 import 'package:analyzer/analyzer.dart'; 7 import 'package:analyzer/analyzer.dart';
8 import 'package:analyzer/src/summary/format.dart'; 8 import 'package:analyzer/src/summary/format.dart';
9 import 'package:analyzer/src/summary/idl.dart'; 9 import 'package:analyzer/src/summary/idl.dart';
10 10
(...skipping 14 matching lines...) Expand all
25 List<String> encodeNames(NodeList<SimpleIdentifier> names) => 25 List<String> encodeNames(NodeList<SimpleIdentifier> names) =>
26 names.map((SimpleIdentifier id) => id.name).toList(); 26 names.map((SimpleIdentifier id) => id.name).toList();
27 27
28 @override 28 @override
29 UnlinkedCombinatorBuilder visitHideCombinator(HideCombinator node) { 29 UnlinkedCombinatorBuilder visitHideCombinator(HideCombinator node) {
30 return new UnlinkedCombinatorBuilder(hides: encodeNames(node.hiddenNames)); 30 return new UnlinkedCombinatorBuilder(hides: encodeNames(node.hiddenNames));
31 } 31 }
32 32
33 @override 33 @override
34 UnlinkedCombinatorBuilder visitShowCombinator(ShowCombinator node) { 34 UnlinkedCombinatorBuilder visitShowCombinator(ShowCombinator node) {
35 return new UnlinkedCombinatorBuilder(shows: encodeNames(node.shownNames)); 35 return new UnlinkedCombinatorBuilder(
36 shows: encodeNames(node.shownNames),
37 offset: node.offset,
38 end: node.end);
36 } 39 }
37 } 40 }
38 41
39 class _PublicNamespaceVisitor extends RecursiveAstVisitor { 42 class _PublicNamespaceVisitor extends RecursiveAstVisitor {
40 final List<UnlinkedPublicNameBuilder> names = <UnlinkedPublicNameBuilder>[]; 43 final List<UnlinkedPublicNameBuilder> names = <UnlinkedPublicNameBuilder>[];
41 final List<UnlinkedExportPublicBuilder> exports = 44 final List<UnlinkedExportPublicBuilder> exports =
42 <UnlinkedExportPublicBuilder>[]; 45 <UnlinkedExportPublicBuilder>[];
43 final List<String> parts = <String>[]; 46 final List<String> parts = <String>[];
44 47
45 _PublicNamespaceVisitor(); 48 _PublicNamespaceVisitor();
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 !member.isOperator) { 88 !member.isOperator) {
86 String name = member.name.name; 89 String name = member.name.name;
87 if (isPublic(name)) { 90 if (isPublic(name)) {
88 cls.members.add(new UnlinkedPublicNameBuilder( 91 cls.members.add(new UnlinkedPublicNameBuilder(
89 name: name, 92 name: name,
90 kind: ReferenceKind.method, 93 kind: ReferenceKind.method,
91 numTypeParameters: 94 numTypeParameters:
92 member.typeParameters?.typeParameters?.length ?? 0)); 95 member.typeParameters?.typeParameters?.length ?? 0));
93 } 96 }
94 } 97 }
95 if (member is ConstructorDeclaration && 98 if (member is ConstructorDeclaration && member.name != null) {
96 member.name != null) {
97 String name = member.name.name; 99 String name = member.name.name;
98 if (isPublic(name)) { 100 if (isPublic(name)) {
99 cls.members.add(new UnlinkedPublicNameBuilder( 101 cls.members.add(new UnlinkedPublicNameBuilder(
100 name: name, 102 name: name,
101 kind: ReferenceKind.constructor, 103 kind: ReferenceKind.constructor,
102 numTypeParameters: 0)); 104 numTypeParameters: 0));
103 } 105 }
104 } 106 }
105 } 107 }
106 } 108 }
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 155
154 @override 156 @override
155 visitVariableDeclaration(VariableDeclaration node) { 157 visitVariableDeclaration(VariableDeclaration node) {
156 String name = node.name.name; 158 String name = node.name.name;
157 addNameIfPublic(name, ReferenceKind.topLevelPropertyAccessor, 0); 159 addNameIfPublic(name, ReferenceKind.topLevelPropertyAccessor, 0);
158 if (!node.isFinal && !node.isConst) { 160 if (!node.isFinal && !node.isConst) {
159 addNameIfPublic('$name=', ReferenceKind.topLevelPropertyAccessor, 0); 161 addNameIfPublic('$name=', ReferenceKind.topLevelPropertyAccessor, 0);
160 } 162 }
161 } 163 }
162 } 164 }
OLDNEW
« no previous file with comments | « pkg/analyzer/lib/src/summary/idl.dart ('k') | pkg/analyzer/lib/src/summary/resynthesize.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698