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

Side by Side Diff: pkg/args/lib/args.dart

Issue 12401002: Make List.from and Iterable.toList default to not growable. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 9 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/args/lib/src/parser.dart » ('j') | 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) 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 * This library lets you define parsers for parsing raw command-line arguments 6 * This library lets you define parsers for parsing raw command-line arguments
7 * into a set of options and values using [GNU][] and [POSIX][] style options. 7 * into a set of options and values using [GNU][] and [POSIX][] style options.
8 * 8 *
9 * ## Defining options ## 9 * ## Defining options ##
10 * 10 *
(...skipping 289 matching lines...) Expand 10 before | Expand all | Expand 10 after
300 options[name] = new Option(name, abbr, help, allowed, allowedHelp, 300 options[name] = new Option(name, abbr, help, allowed, allowedHelp,
301 defaultsTo, callback, isFlag: isFlag, negatable: negatable, 301 defaultsTo, callback, isFlag: isFlag, negatable: negatable,
302 allowMultiple: allowMultiple); 302 allowMultiple: allowMultiple);
303 } 303 }
304 304
305 /** 305 /**
306 * Parses [args], a list of command-line arguments, matches them against the 306 * Parses [args], a list of command-line arguments, matches them against the
307 * flags and options defined by this parser, and returns the result. 307 * flags and options defined by this parser, and returns the result.
308 */ 308 */
309 ArgResults parse(List<String> args) => 309 ArgResults parse(List<String> args) =>
310 new Parser(null, this, args.toList(growable: true)).parse(); 310 new Parser(null, this, args.toList()).parse();
311 311
312 /** 312 /**
313 * Generates a string displaying usage information for the defined options. 313 * Generates a string displaying usage information for the defined options.
314 * This is basically the help text shown on the command line. 314 * This is basically the help text shown on the command line.
315 */ 315 */
316 String getUsage() => new Usage(this).generate(); 316 String getUsage() => new Usage(this).generate();
317 317
318 /** 318 /**
319 * Get the default value for an option. Useful after parsing to test 319 * Get the default value for an option. Useful after parsing to test
320 * if the user specified something other than the default. 320 * if the user specified something other than the default.
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
390 operator [](String name) { 390 operator [](String name) {
391 if (!_options.containsKey(name)) { 391 if (!_options.containsKey(name)) {
392 throw new ArgumentError( 392 throw new ArgumentError(
393 'Could not find an option named "$name".'); 393 'Could not find an option named "$name".');
394 } 394 }
395 395
396 return _options[name]; 396 return _options[name];
397 } 397 }
398 398
399 /** Get the names of the options as a [Collection]. */ 399 /** Get the names of the options as a [Collection]. */
400 Collection<String> get options => _options.keys.toList(); 400 Collection<String> get options => _options.keys.toList(growable: false);
401 } 401 }
402 402
OLDNEW
« no previous file with comments | « no previous file | pkg/args/lib/src/parser.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698