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

Side by Side Diff: utils/apidoc/apidoc.dart

Issue 10829361: 'Find-as-you-type'-search in dartdoc/apidoc. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Rebased Created 8 years, 3 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 | Annotate | Revision Log
« no previous file with comments | « tests/utils/dartdoc_search_test.dart ('k') | no next file » | 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) 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 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 } else { 55 } else {
56 print('Unknown option: $arg'); 56 print('Unknown option: $arg');
57 return; 57 return;
58 } 58 }
59 break; 59 break;
60 } 60 }
61 } 61 }
62 62
63 doc.cleanOutputDirectory(outputDir); 63 doc.cleanOutputDirectory(outputDir);
64 64
65 // Compile the client-side code to JS.
66 // TODO(bob): Right path.
67
68 final clientScript = (mode == doc.MODE_STATIC) ?
69 'static' : 'live-nav';
70 final Future compiled = doc.compileScript(
71 doc.scriptDir.append('../../pkg/dartdoc/client-$clientScript.dart'),
72 outputDir.append('client-$clientScript.js'));
73
74 // TODO(rnystrom): Use platform-specific path separator.
75 // The basic dartdoc-provided static content. 65 // The basic dartdoc-provided static content.
76 final Future copiedStatic = doc.copyDirectory( 66 final Future copiedStatic = doc.copyDirectory(
77 doc.scriptDir.append('../../pkg/dartdoc/static'), 67 doc.scriptDir.append('../../pkg/dartdoc/static'),
78 outputDir); 68 outputDir);
79 69
80 // The apidoc-specific static content. 70 // The apidoc-specific static content.
81 final Future copiedApiDocStatic = doc.copyDirectory( 71 final Future copiedApiDocStatic = doc.copyDirectory(
82 doc.scriptDir.append('static'), 72 doc.scriptDir.append('static'),
83 outputDir); 73 outputDir);
84 74
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 if (new File.fromPath(path).existsSync()) { 112 if (new File.fromPath(path).existsSync()) {
123 apidocLibraries.add(path); 113 apidocLibraries.add(path);
124 includedLibraries.add(libname); 114 includedLibraries.add(libname);
125 } else { 115 } else {
126 print('Warning: could not find package at $path'); 116 print('Warning: could not find package at $path');
127 } 117 }
128 }; 118 };
129 lister.onDone = (success) { 119 lister.onDone = (success) {
130 print('Generating docs...'); 120 print('Generating docs...');
131 final apidoc = new Apidoc(mdn, htmldoc, outputDir, mode, generateAppCache); 121 final apidoc = new Apidoc(mdn, htmldoc, outputDir, mode, generateAppCache);
122 apidoc.dartdocPath = doc.scriptDir.append('../../pkg/dartdoc/');
132 // Select the libraries to include in the produced documentation: 123 // Select the libraries to include in the produced documentation:
133 apidoc.includeApi = true; 124 apidoc.includeApi = true;
134 apidoc.includedLibraries = includedLibraries; 125 apidoc.includedLibraries = includedLibraries;
135 126
136 Futures.wait([compiled, copiedStatic, copiedApiDocStatic]).then((_) { 127 Futures.wait([copiedStatic, copiedApiDocStatic]).then((_) {
137 apidoc.documentLibraries(apidocLibraries, doc.libPath); 128 apidoc.documentLibraries(apidocLibraries, doc.libPath);
129
130 final clientScript = (mode == doc.MODE_STATIC) ? 'static' : 'live-nav';
131 final Future compiled = doc.compileScript(
132 apidoc.dartdocPath.append('client-$clientScript.dart'),
133 outputDir.append('client-$clientScript.js'));
134
135 Futures.wait([compiled, copiedStatic, copiedApiDocStatic]).then((_) {
136 apidoc.cleanup();
137 });
138 }); 138 });
139 }; 139 };
140 } 140 }
141 141
142 /** 142 /**
143 * This class is purely here to scrape handwritten HTML documentation. 143 * This class is purely here to scrape handwritten HTML documentation.
144 * This scraped documentation will later be merged with the generated 144 * This scraped documentation will later be merged with the generated
145 * HTML library. 145 * HTML library.
146 */ 146 */
147 class Htmldoc extends doc.Dartdoc { 147 class Htmldoc extends doc.Dartdoc {
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after
334 '''); 334 ''');
335 } 335 }
336 336
337 void docIndexLibrary(LibraryMirror library) { 337 void docIndexLibrary(LibraryMirror library) {
338 // TODO(rnystrom): Hackish. The IO libraries reference this but we don't 338 // TODO(rnystrom): Hackish. The IO libraries reference this but we don't
339 // want it in the docs. 339 // want it in the docs.
340 if (library.simpleName == 'dart:nativewrappers') return; 340 if (library.simpleName == 'dart:nativewrappers') return;
341 super.docIndexLibrary(library); 341 super.docIndexLibrary(library);
342 } 342 }
343 343
344 void docLibraryNavigationJson(LibraryMirror library, Map libraryMap) { 344 void docLibraryNavigationJson(LibraryMirror library, List libraryList) {
345 // TODO(rnystrom): Hackish. The IO libraries reference this but we don't 345 // TODO(rnystrom): Hackish. The IO libraries reference this but we don't
346 // want it in the docs. 346 // want it in the docs.
347 if (library.simpleName == 'dart:nativewrappers') return; 347 if (library.simpleName == 'dart:nativewrappers') return;
348 super.docLibraryNavigationJson(library, libraryMap); 348 super.docLibraryNavigationJson(library, libraryList);
349 } 349 }
350 350
351 void docLibrary(LibraryMirror library) { 351 void docLibrary(LibraryMirror library) {
352 // TODO(rnystrom): Hackish. The IO libraries reference this but we don't 352 // TODO(rnystrom): Hackish. The IO libraries reference this but we don't
353 // want it in the docs. 353 // want it in the docs.
354 if (library.simpleName == 'dart:nativewrappers') return; 354 if (library.simpleName == 'dart:nativewrappers') return;
355 super.docLibrary(library); 355 super.docLibrary(library);
356 } 356 }
357 357
358 /** Override definition from parent class to strip out annotation tags. */ 358 /** Override definition from parent class to strip out annotation tags. */
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
528 final typeName = member.surroundingDeclaration.simpleName; 528 final typeName = member.surroundingDeclaration.simpleName;
529 var memberName = '$typeName.${member.simpleName}'; 529 var memberName = '$typeName.${member.simpleName}';
530 if (member is MethodMirror && (member.isConstructor || member.isFactory)) { 530 if (member is MethodMirror && (member.isConstructor || member.isFactory)) {
531 final separator = member.constructorName == '' ? '' : '.'; 531 final separator = member.constructorName == '' ? '' : '.';
532 memberName = 'new $typeName$separator${member.constructorName}'; 532 memberName = 'new $typeName$separator${member.constructorName}';
533 } 533 }
534 534
535 return a(memberUrl(member), memberName); 535 return a(memberUrl(member), memberName);
536 } 536 }
537 } 537 }
OLDNEW
« no previous file with comments | « tests/utils/dartdoc_search_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698