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

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

Issue 18438003: Removed ArgResult in lib/docgen.dart and removed top level variables. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 5 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 | « no previous file | pkg/docgen/lib/docgen.dart » ('j') | pkg/docgen/lib/docgen.dart » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 import 'dart:io'; 5 import 'dart:io';
6 6
7 import 'package:args/args.dart'; 7 import 'package:args/args.dart';
8 import 'package:logging/logging.dart'; 8 import 'package:logging/logging.dart';
9 9
10 import '../lib/docgen.dart'; 10 import '../lib/docgen.dart';
11 11
12 /** 12 /**
13 * Analyzes Dart files and generates a representation of included libraries, 13 * Analyzes Dart files and generates a representation of included libraries,
14 * classes, and members. 14 * classes, and members.
15 */ 15 */
16 void main() { 16 void main() {
17 logger.onRecord.listen((record) => print(record.message)); 17 logger.onRecord.listen((record) => print(record.message));
18 var results = initArgParser().parse(new Options().arguments); 18 var results = _initArgParser().parse(new Options().arguments);
19 if (results['help']) return; 19
20 docgen(results); 20 var outputToYaml = results['yaml'] || results['output-format'] == 'yaml';
21 var outputToJson = results['json'] || results['output-format'] == 'json';
22 if (outputToYaml && outputToJson) {
23 throw new ArgumentError('Cannot have contradictory output flags.');
24 }
25 outputToYaml = outputToYaml || !outputToJson;
26
27 docgen(results.rest,
28 packageRoot: results['package-root'],
29 outputToYaml: outputToYaml,
30 includePrivate: results['include-private'],
31 includeSdk: results['parse-sdk'] || results['include-sdk'],
32 parseSdk: results['parse-sdk']);
21 } 33 }
22 34
23 /** 35 /**
24 * Creates parser for docgen command line arguments. 36 * Creates parser for docgen command line arguments.
25 */ 37 */
26 ArgParser initArgParser() { 38 ArgParser _initArgParser() {
27 var parser = new ArgParser(); 39 var parser = new ArgParser();
28 parser.addFlag('help', abbr: 'h', 40 parser.addFlag('help', abbr: 'h',
29 help: 'Prints help and usage information.', 41 help: 'Prints help and usage information.',
30 negatable: false, 42 negatable: false,
31 callback: (help) { 43 callback: (help) {
32 if (help) { 44 if (help) {
33 logger.info(parser.getUsage()); 45 logger.info(parser.getUsage());
34 logger.info(USAGE); 46 logger.info(USAGE);
47 exit(0);
35 } 48 }
36 }); 49 });
37 parser.addFlag('verbose', abbr: 'v', 50 parser.addFlag('verbose', abbr: 'v',
38 help: 'Output more logging information.', negatable: false, 51 help: 'Output more logging information.', negatable: false,
39 callback: (verbose) { 52 callback: (verbose) {
40 if (verbose) Logger.root.level = Level.FINEST; 53 if (verbose) Logger.root.level = Level.FINEST;
41 }); 54 });
42 parser.addOption('output-format', abbr: 'o', 55 parser.addOption('output-format', abbr: 'o',
43 help: 'Sets the output format.', 56 help: 'Sets the output format.',
44 allowed: ['yaml', 'json'], 57 allowed: ['yaml', 'json'],
45 allowedHelp: {'yaml' : 'Outputs to YAML. (Default)', 58 allowedHelp: {'yaml' : 'Outputs to YAML. (Default)',
46 'json' : 'Outputs to JSON.'}); 59 'json' : 'Outputs to JSON.'});
47 parser.addFlag('yaml', abbr: 'y', 60 parser.addFlag('yaml', abbr: 'y',
48 help: 'Same as output-format=yaml.', negatable: false); 61 help: 'Same as output-format=yaml.', negatable: false);
49 parser.addFlag('json', abbr: 'j', 62 parser.addFlag('json', abbr: 'j',
50 help: 'Same as output-format=json.', negatable: false); 63 help: 'Same as output-format=json.', negatable: false);
51 parser.addFlag('include-private', 64 parser.addFlag('include-private',
52 help: 'Flag to include private declarations.', negatable: false); 65 help: 'Flag to include private declarations.', negatable: false);
53 parser.addFlag('include-sdk', 66 parser.addFlag('include-sdk',
54 help: 'Flag to parse SDK Library files.', negatable: false); 67 help: 'Flag to parse SDK Library files.', negatable: false);
55 parser.addFlag('parse-sdk', 68 parser.addFlag('parse-sdk',
56 help: 'Parses the SDK libraries only.', 69 help: 'Parses the SDK libraries only.',
57 defaultsTo: false, negatable: false); 70 defaultsTo: false, negatable: false);
58 parser.addOption('package-root', 71 parser.addOption('package-root',
59 help: "Sets the package root of the library being analyzed."); 72 help: "Sets the package root of the library being analyzed.");
60 73
61 return parser; 74 return parser;
62 } 75 }
OLDNEW
« no previous file with comments | « no previous file | pkg/docgen/lib/docgen.dart » ('j') | pkg/docgen/lib/docgen.dart » ('J')

Powered by Google App Engine
This is Rietveld 408576698