0
|
1 /*******************************************
|
|
2 * Contains exception classes for MergeTag.
|
|
3 *
|
|
4 * Publically imports mde.exception.
|
|
5 ******************************************/
|
|
6 module mde.mergetag.exception;
|
|
7
|
|
8 public import mde.exception;
|
|
9
|
|
10 /// Base MergeTag exception class.
|
|
11 class MTException : mdeException {
|
|
12 this (char[] msg) {
|
|
13 super("MergeTag: " ~ msg);
|
|
14 }
|
|
15 this () {}
|
|
16 }
|
|
17
|
|
18 /** Thrown on file IO errors. */
|
|
19 class MTFileIOException : MTException {
|
|
20 this () {}
|
|
21 }
|
|
22
|
|
23 /** Thrown onunknown format errors; when reading or writing and the filetype cannot be guessed. */
|
|
24 class MTFileFormatException : MTException {
|
|
25 this () {}
|
|
26 }
|
|
27
|
|
28 /** Thrown when a string ID is parsed but cannot be found in the lookup table, hence cannot be used
|
|
29 * as an ID. It should always be caught and handled gracefully (by ignoring the tag or section
|
|
30 * involved).
|
|
31 */
|
|
32 class MTStringIDException : MTException {
|
|
33 this () {}
|
|
34 }
|
|
35
|
|
36 /** Thrown by the parse module on any error.
|
|
37 */
|
|
38 class MTParseException : MTException {
|
|
39 this () {}
|
|
40 }
|
|
41
|
|
42 /** Thrown by classes implementing DataSection when addTag is called with an unrecognised type string.
|
|
43 */
|
|
44 class MTUnknownTypeException : MTException {
|
|
45 this () {}
|
|
46 }
|