| OLD | NEW |
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 * This generates the reference documentation for the core libraries that come | 6 * This generates the reference documentation for the core libraries that come |
| 7 * with dart. It is built on top of dartdoc, which is a general-purpose library | 7 * with dart. It is built on top of dartdoc, which is a general-purpose library |
| 8 * for generating docs from any Dart code. This library extends that to include | 8 * for generating docs from any Dart code. This library extends that to include |
| 9 * additional information and styling specific to our standard library. | 9 * additional information and styling specific to our standard library. |
| 10 * | 10 * |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 102 | 102 |
| 103 // TODO(johnniwinther): Libraries for the compilation seem to be more like | 103 // TODO(johnniwinther): Libraries for the compilation seem to be more like |
| 104 // URIs. Perhaps Path should have a toURI() method. | 104 // URIs. Perhaps Path should have a toURI() method. |
| 105 // Add all of the core libraries. | 105 // Add all of the core libraries. |
| 106 final apidocLibraries = <Path>[]; | 106 final apidocLibraries = <Path>[]; |
| 107 DART2JS_LIBRARY_MAP.forEach((String name, LibraryInfo info) { | 107 DART2JS_LIBRARY_MAP.forEach((String name, LibraryInfo info) { |
| 108 if (!info.isInternal) { | 108 if (!info.isInternal) { |
| 109 apidocLibraries.add(new Path('dart:$name')); | 109 apidocLibraries.add(new Path('dart:$name')); |
| 110 } | 110 } |
| 111 }); | 111 }); |
| 112 apidocLibraries.add(doc.scriptDir.append('../../pkg/unittest/unittest.dart')); | |
| 113 apidocLibraries.add(doc.scriptDir.append('../../pkg/intl/intl.dart')); | |
| 114 | 112 |
| 115 print('Generating docs...'); | 113 final includedLibraries = <String>[]; |
| 116 final apidoc = new Apidoc(mdn, htmldoc, outputDir, mode, generateAppCache); | 114 var lister = new Directory.fromPath( |
| 117 // Select the libraries to include in the produced documentation: | 115 doc.scriptDir.append('../../pkg/')).list(); |
| 118 apidoc.includeApi = true; | 116 lister.onDir = (dirPath) { |
| 119 apidoc.includedLibraries = <String>[ | 117 var path = new Path(dirPath); |
| 120 'unittest', | 118 var libname = path.filename; |
| 121 'intl', | 119 path = path.append('${libname}.dart'); |
| 122 ]; | 120 if (new File.fromPath(path).existsSync()) { |
| 121 apidocLibraries.add(path); |
| 122 includedLibraries.add(libname); |
| 123 } else { |
| 124 print('Warning: could not find package at $path'); |
| 125 } |
| 126 }; |
| 127 lister.onDone = (success) { |
| 128 print('Generating docs...'); |
| 129 final apidoc = new Apidoc(mdn, htmldoc, outputDir, mode, generateAppCache); |
| 130 // Select the libraries to include in the produced documentation: |
| 131 apidoc.includeApi = true; |
| 132 apidoc.includedLibraries = includedLibraries; |
| 123 | 133 |
| 124 Futures.wait([compiled, copiedStatic, copiedApiDocStatic]).then((_) { | 134 Futures.wait([compiled, copiedStatic, copiedApiDocStatic]).then((_) { |
| 125 apidoc.documentLibraries(apidocLibraries, doc.libPath); | 135 apidoc.documentLibraries(apidocLibraries, doc.libPath); |
| 126 }); | 136 }); |
| 137 }; |
| 127 } | 138 } |
| 128 | 139 |
| 129 /** | 140 /** |
| 130 * This class is purely here to scrape handwritten HTML documentation. | 141 * This class is purely here to scrape handwritten HTML documentation. |
| 131 * This scraped documentation will later be merged with the generated | 142 * This scraped documentation will later be merged with the generated |
| 132 * HTML library. | 143 * HTML library. |
| 133 */ | 144 */ |
| 134 class Htmldoc extends doc.Dartdoc { | 145 class Htmldoc extends doc.Dartdoc { |
| 135 String libraryComment; | 146 String libraryComment; |
| 136 | 147 |
| (...skipping 378 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 515 final typeName = member.surroundingDeclaration.simpleName; | 526 final typeName = member.surroundingDeclaration.simpleName; |
| 516 var memberName = '$typeName.${member.simpleName}'; | 527 var memberName = '$typeName.${member.simpleName}'; |
| 517 if (member is MethodMirror && (member.isConstructor || member.isFactory)) { | 528 if (member is MethodMirror && (member.isConstructor || member.isFactory)) { |
| 518 final separator = member.constructorName == '' ? '' : '.'; | 529 final separator = member.constructorName == '' ? '' : '.'; |
| 519 memberName = 'new $typeName$separator${member.constructorName}'; | 530 memberName = 'new $typeName$separator${member.constructorName}'; |
| 520 } | 531 } |
| 521 | 532 |
| 522 return a(memberUrl(member), memberName); | 533 return a(memberUrl(member), memberName); |
| 523 } | 534 } |
| 524 } | 535 } |
| OLD | NEW |