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

Side by Side Diff: sdk/lib/_internal/dartdoc/lib/src/export_map.dart

Issue 26968003: Remove DirectoryException and LinkException from dart:io and use FileException instaed. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Merge with master. Created 7 years, 1 month 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 /// This library uses the Dart analyzer to find the exports for a set of 5 /// This library uses the Dart analyzer to find the exports for a set of
6 /// libraries. It stores these exports in an [ExportMap]. This is used to 6 /// libraries. It stores these exports in an [ExportMap]. This is used to
7 /// display exported members as part of the exporting library, since dart2js 7 /// display exported members as part of the exporting library, since dart2js
8 /// doesn't provide this information itself. 8 /// doesn't provide this information itself.
9 library export_map; 9 library export_map;
10 10
(...skipping 28 matching lines...) Expand all
39 /// `import` or `export`. 39 /// `import` or `export`.
40 factory ExportMap.parse(Iterable<Uri> libraries, String packageRoot) { 40 factory ExportMap.parse(Iterable<Uri> libraries, String packageRoot) {
41 var exports = <String, List<Export>>{}; 41 var exports = <String, List<Export>>{};
42 42
43 void traverse(String path) { 43 void traverse(String path) {
44 if (exports.containsKey(path)) return; 44 if (exports.containsKey(path)) return;
45 45
46 var importsAndExports; 46 var importsAndExports;
47 try { 47 try {
48 importsAndExports = _importsAndExportsForFile(path, packageRoot); 48 importsAndExports = _importsAndExportsForFile(path, packageRoot);
49 } on FileException catch (_) { 49 } on FileSystemException catch (_) {
50 // Ignore unreadable/nonexistent files. 50 // Ignore unreadable/nonexistent files.
51 return; 51 return;
52 } 52 }
53 53
54 var exportsForLibrary = <String, Export>{}; 54 var exportsForLibrary = <String, Export>{};
55 for (var export in importsAndExports.last) { 55 for (var export in importsAndExports.last) {
56 addOrMergeExport(exportsForLibrary, export.path, export); 56 addOrMergeExport(exportsForLibrary, export.path, export);
57 } 57 }
58 exports[path] = new List.from(exportsForLibrary.values); 58 exports[path] = new List.from(exportsForLibrary.values);
59 exports[path].map((directive) => directive.path).forEach(traverse); 59 exports[path].map((directive) => directive.path).forEach(traverse);
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after
289 /// A simple visitor that collects import and export nodes. 289 /// A simple visitor that collects import and export nodes.
290 class _ImportExportCollector extends GeneralizingASTVisitor { 290 class _ImportExportCollector extends GeneralizingASTVisitor {
291 final imports = <ImportDirective>[]; 291 final imports = <ImportDirective>[];
292 final exports = <ExportDirective>[]; 292 final exports = <ExportDirective>[];
293 293
294 _ImportExportCollector(); 294 _ImportExportCollector();
295 295
296 visitImportDirective(ImportDirective node) => imports.add(node); 296 visitImportDirective(ImportDirective node) => imports.add(node);
297 visitExportDirective(ExportDirective node) => exports.add(node); 297 visitExportDirective(ExportDirective node) => exports.add(node);
298 } 298 }
OLDNEW
« no previous file with comments | « sdk/lib/_internal/dartdoc/lib/dartdoc.dart ('k') | sdk/lib/_internal/pub/lib/src/barback/server.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698