// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

/// An exception thrown by `ArgParser`.
class ArgParserException extends FormatException {
  /// The command(s) that were parsed before discovering the error.
  ///
  /// This will be empty if the error was on the root parser.
  final List<String> commands;

  ArgParserException(String message, [Iterable<String> commands])
      : commands =
            commands == null ? const [] : new List.unmodifiable(commands),
        super(message);
}
