summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'elm/battlemap/src/Error.elm')
-rw-r--r--elm/battlemap/src/Error.elm28
1 files changed, 26 insertions, 2 deletions
diff --git a/elm/battlemap/src/Error.elm b/elm/battlemap/src/Error.elm
index e2906dc..581bb24 100644
--- a/elm/battlemap/src/Error.elm
+++ b/elm/battlemap/src/Error.elm
@@ -1,5 +1,29 @@
-module Error exposing (Type(..))
+module Error exposing (Type, Mode(..), new, to_string)
-type Type =
+type Mode =
IllegalAction
| Programming
+
+type alias Type =
+ {
+ mode: Mode,
+ message: String
+ }
+
+new : Mode -> String -> Type
+new mode str =
+ {
+ mode = mode,
+ message = str
+ }
+
+to_string : Type -> String
+to_string e =
+ (
+ (case e.mode of
+ IllegalAction -> "Request discarded: "
+ Programming -> "Error in the program (please report): "
+ )
+ ++ e.message
+ )
+