diff mde/file/exception.d @ 81:d8fccaa45d5f

Moved file IO code from mde/mergetag to mde/file[/mergetag] and changed how some errors are caught.
author Diggory Hardy <diggory.hardy@gmail.com>
date Fri, 29 Aug 2008 11:59:43 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mde/file/exception.d	Fri Aug 29 11:59:43 2008 +0100
@@ -0,0 +1,48 @@
+/* LICENSE BLOCK
+Part of mde: a Modular D game-oriented Engine
+Copyright © 2007-2008 Diggory Hardy
+
+This program is free software: you can redistribute it and/or modify it under the terms
+of the GNU General Public License as published by the Free Software Foundation, either
+version 2 of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>. */
+
+/// Base file exception classes
+module mde.file.exception;
+
+import mde.exception;
+
+/// Base exception for all file exceptions
+class fileException : mdeException
+{
+    char[] getSymbol () {
+        return super.getSymbol ~ ".file";
+    }
+    
+    this (char[] msg) {
+        super(msg);
+    }
+}
+
+/** Exception for errors finding, opening, closing, reading or writing files,
+ * but not for parsing content. */
+class ioException : fileException
+{
+    this (char[] msg) {
+        super(msg);
+    }
+}
+
+/** Exception for parsing, formatting and serializing content. */
+class parseException : fileException
+{
+    this (char[] msg) {
+        super(msg);
+    }
+}