OLD | NEW |
| (Empty) |
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 | |
3 // BSD-style license that can be found in the LICENSE file. | |
4 | |
5 /** | |
6 * Traverses apidoc and dartdoc and lists all possible input files that are | |
7 * used when building API documentation. Used by gyp to determine when apidocs | |
8 * need to be regenerated (see `apidoc.gyp`). | |
9 */ | |
10 library list_files; | |
11 | |
12 import 'dart:io'; | |
13 | |
14 const allowedExtensions = const [ | |
15 '.css', '.dart', '.ico', '.js', '.json', '.png', '.sh', '.txt' | |
16 ]; | |
17 | |
18 void main() { | |
19 final scriptDir = new File(new Options().script).directorySync().path; | |
20 final dartDir = '$scriptDir/../../../'; | |
21 listFiles('$dartDir/utils/apidoc'); | |
22 listFiles('$dartDir/sdk/lib/_internal/dartdoc'); | |
23 } | |
24 | |
25 void listFiles(String dirPath) { | |
26 final dir = new Directory(dirPath); | |
27 | |
28 dir.onFile = (path) { | |
29 if (allowedExtensions.indexOf(extension(path)) != -1) { | |
30 print(path); | |
31 } | |
32 }; | |
33 | |
34 dir.list(recursive: true); | |
35 } | |
36 | |
37 String extension(String path) { | |
38 int lastDot = path.lastIndexOf('.'); | |
39 if (lastDot == -1) return ''; | |
40 | |
41 return path.substring(lastDot); | |
42 } | |
OLD | NEW |