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

Side by Side Diff: pkg/docgen/lib/docgen.dart

Issue 46063010: Change dart:io Platform.script to return a Uri. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Rebased 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 /** 5 /**
6 * **docgen** is a tool for creating machine readable representations of Dart 6 * **docgen** is a tool for creating machine readable representations of Dart
7 * code metadata, including: classes, members, comments and annotations. 7 * code metadata, including: classes, members, comments and annotations.
8 * 8 *
9 * docgen is run on a `.dart` file or a directory containing `.dart` files. 9 * docgen is run on a `.dart` file or a directory containing `.dart` files.
10 * 10 *
(...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after
242 242
243 /** 243 /**
244 * Analyzes set of libraries by getting a mirror system and triggers the 244 * Analyzes set of libraries by getting a mirror system and triggers the
245 * documentation of the libraries. 245 * documentation of the libraries.
246 */ 246 */
247 Future<MirrorSystem> getMirrorSystem(List<String> args, {String packageRoot, 247 Future<MirrorSystem> getMirrorSystem(List<String> args, {String packageRoot,
248 bool parseSdk: false}) { 248 bool parseSdk: false}) {
249 var libraries = !parseSdk ? _listLibraries(args) : _listSdk(); 249 var libraries = !parseSdk ? _listLibraries(args) : _listSdk();
250 if (libraries.isEmpty) throw new StateError('No Libraries.'); 250 if (libraries.isEmpty) throw new StateError('No Libraries.');
251 // Finds the root of SDK library based off the location of docgen. 251 // Finds the root of SDK library based off the location of docgen.
252 var sdkRoot = path.join(path.dirname(path.dirname(path.dirname(path.dirname( 252 var sdkRoot = Platform.script.resolve('../../../sdk').toFilePath();
253 path.absolute(Platform.script))))), 'sdk');
254 logger.info('SDK Root: ${sdkRoot}'); 253 logger.info('SDK Root: ${sdkRoot}');
255 return _analyzeLibraries(libraries, sdkRoot, packageRoot: packageRoot); 254 return _analyzeLibraries(libraries, sdkRoot, packageRoot: packageRoot);
256 } 255 }
257 256
258 /** 257 /**
259 * Analyzes set of libraries and provides a mirror system which can be used 258 * Analyzes set of libraries and provides a mirror system which can be used
260 * for static inspection of the source code. 259 * for static inspection of the source code.
261 */ 260 */
262 Future<MirrorSystem> _analyzeLibraries(List<String> libraries, 261 Future<MirrorSystem> _analyzeLibraries(List<String> libraries,
263 String libraryRoot, {String packageRoot}) { 262 String libraryRoot, {String packageRoot}) {
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after
472 return commentText; 471 return commentText;
473 } 472 }
474 473
475 /** 474 /**
476 * Generates MDN comments from database.json. 475 * Generates MDN comments from database.json.
477 */ 476 */
478 void _mdnComment(Indexable item) { 477 void _mdnComment(Indexable item) {
479 //Check if MDN is loaded. 478 //Check if MDN is loaded.
480 if (_mdn == null) { 479 if (_mdn == null) {
481 // Reading in MDN related json file. 480 // Reading in MDN related json file.
482 var mdnDir = path.join(path.dirname(path.dirname(path.dirname(path.dirname( 481 var mdnDatabase =
483 path.absolute(Platform.script))))), 'utils', 'apidoc', 'mdn'); 482 Platform.script.resolve('../../../utils/apidoc/mdn/database.json');
484 _mdn = JSON.decode(new File(path.join(mdnDir, 'database.json')) 483 _mdn = JSON.decode(new File(mdnDatabase.toFilePath()).readAsStringSync());
485 .readAsStringSync());
486 } 484 }
487 if (item.comment.isNotEmpty) return; 485 if (item.comment.isNotEmpty) return;
488 var domAnnotation = item.annotations.firstWhere( 486 var domAnnotation = item.annotations.firstWhere(
489 (e) => e.qualifiedName == 'metadata.DomName', orElse: () => null); 487 (e) => e.qualifiedName == 'metadata.DomName', orElse: () => null);
490 if (domAnnotation == null) return; 488 if (domAnnotation == null) return;
491 var domName = domAnnotation.parameters.single; 489 var domName = domAnnotation.parameters.single;
492 var parts = domName.split('.'); 490 var parts = domName.split('.');
493 if (parts.length == 2) item.comment = _mdnMemberComment(parts[0], parts[1]); 491 if (parts.length == 2) item.comment = _mdnMemberComment(parts[0], parts[1]);
494 if (parts.length == 1) item.comment = _mdnTypeComment(parts[0]); 492 if (parts.length == 1) item.comment = _mdnTypeComment(parts[0]);
495 } 493 }
(...skipping 821 matching lines...) Expand 10 before | Expand all | Expand 10 after
1317 String docName(DeclarationMirror m) { 1315 String docName(DeclarationMirror m) {
1318 if (m is LibraryMirror) { 1316 if (m is LibraryMirror) {
1319 return (m as LibraryMirror).qualifiedName.replaceAll('.','-'); 1317 return (m as LibraryMirror).qualifiedName.replaceAll('.','-');
1320 } 1318 }
1321 var owner = m.owner; 1319 var owner = m.owner;
1322 if (owner == null) return m.qualifiedName; 1320 if (owner == null) return m.qualifiedName;
1323 // For the unnamed constructor we just return the class name. 1321 // For the unnamed constructor we just return the class name.
1324 if (m.simpleName == '') return docName(owner); 1322 if (m.simpleName == '') return docName(owner);
1325 return docName(owner) + '.' + m.simpleName; 1323 return docName(owner) + '.' + m.simpleName;
1326 } 1324 }
OLDNEW
« no previous file with comments | « pkg/analyzer/lib/src/services/runtime/coverage/coverage_impl.dart ('k') | pkg/http_server/test/utils.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698