1 /**
2     Predefined exception classes for error hanlding.
3 
4     Copyright: © 2019 Arne Ludwig <arne.ludwig@posteo.de>
5     License: Subject to the terms of the MIT license, as written in the
6              included LICENSE file.
7     Authors: Arne Ludwig <arne.ludwig@posteo.de>
8 */
9 module darg_plus.exception;
10 
11 
12 /// Convenience class for errors during CLI parsing and processing.
13 class CLIException : Exception
14 {
15     import std.exception : basicExceptionCtors;
16 
17     ///
18     mixin basicExceptionCtors;
19 }
20 
21 
22 /// Convenience class for use with `--usage` flag.
23 class UsageRequested : CLIException
24 {
25     import std.exception : basicExceptionCtors;
26 
27     ///
28     mixin basicExceptionCtors;
29 }
30 
31 
32 /// Convenience class for use with `--usage` flag.
33 class ValidationError : CLIException
34 {
35     import std.exception : basicExceptionCtors;
36 
37     ///
38     mixin basicExceptionCtors;
39 }