| OLD | NEW |
| 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 * Parser support for transforming raw command-line arguments into a set | 6 * Parser support for transforming raw command-line arguments into a set |
| 7 * of options and values. | 7 * of options and values. |
| 8 * | 8 * |
| 9 * This library supports [GNU][] and [POSIX][] style options, and it works | 9 * This library supports [GNU][] and [POSIX][] style options, and it works |
| 10 * in both server-side and client-side apps. | 10 * in both server-side and client-side apps. |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 77 * is parsed. If an option isn't provided in the args, its callback is | 77 * is parsed. If an option isn't provided in the args, its callback is |
| 78 * passed the default value, or `null` if no default value is set. | 78 * passed the default value, or `null` if no default value is set. |
| 79 * | 79 * |
| 80 * ## Parsing arguments | 80 * ## Parsing arguments |
| 81 * | 81 * |
| 82 * Once you have an [ArgParser] set up with some options and flags, you | 82 * Once you have an [ArgParser] set up with some options and flags, you |
| 83 * use it by calling [ArgParser.parse()] with a set of arguments: | 83 * use it by calling [ArgParser.parse()] with a set of arguments: |
| 84 * | 84 * |
| 85 * var results = parser.parse(['some', 'command', 'line', 'args']); | 85 * var results = parser.parse(['some', 'command', 'line', 'args']); |
| 86 * | 86 * |
| 87 * These arguments usually come from dart:io's Options class | 87 * These arguments usually come from the arguments to main |
| 88 * (`new Options().arguments`), but you can pass in any list of strings. | 88 * (`main(List<String> arguments`), but you can pass in any list of strings. |
| 89 * The parse() method returns an instance of [ArgResults], a map-like | 89 * The parse() method returns an instance of [ArgResults], a map-like |
| 90 * object that contains the values of the parsed options. | 90 * object that contains the values of the parsed options. |
| 91 * | 91 * |
| 92 * var parser = new ArgParser(); | 92 * var parser = new ArgParser(); |
| 93 * parser.addOption('mode'); | 93 * parser.addOption('mode'); |
| 94 * parser.addFlag('verbose', defaultsTo: true); | 94 * parser.addFlag('verbose', defaultsTo: true); |
| 95 * var results = parser.parse(['--mode', 'debug', 'something', 'else']); | 95 * var results = parser.parse(['--mode', 'debug', 'something', 'else']); |
| 96 * | 96 * |
| 97 * print(results['mode']); // debug | 97 * print(results['mode']); // debug |
| 98 * print(results['verbose']); // true | 98 * print(results['verbose']); // true |
| (...skipping 347 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 446 'Could not find an option named "$name".'); | 446 'Could not find an option named "$name".'); |
| 447 } | 447 } |
| 448 | 448 |
| 449 return _options[name]; | 449 return _options[name]; |
| 450 } | 450 } |
| 451 | 451 |
| 452 /** Get the names of the options as an [Iterable]. */ | 452 /** Get the names of the options as an [Iterable]. */ |
| 453 Iterable<String> get options => _options.keys; | 453 Iterable<String> get options => _options.keys; |
| 454 } | 454 } |
| 455 | 455 |
| OLD | NEW |