File tree Expand file tree Collapse file tree 1 file changed +62
-0
lines changed Expand file tree Collapse file tree 1 file changed +62
-0
lines changed Original file line number Diff line number Diff line change
1
+ //
2
+ // Error.swift
3
+ //
4
+ // Created by Matthew Judy on 7/25/19.
5
+ // Copyright © 2019 NibFile.com. All rights reserved.
6
+ //
7
+
8
+ import Foundation
9
+
10
+
11
+ public struct AteShit : LocalizedError
12
+ {
13
+ public enum Fuckery : String
14
+ {
15
+ case initializing
16
+ case parsing
17
+ case converting
18
+
19
+ case reading
20
+ case writing
21
+
22
+ case encoding
23
+ case decoding
24
+ }
25
+
26
+ public let whilst : Fuckery
27
+ public let grimDetails : Any ?
28
+
29
+
30
+ /// I'm making a note here: the app ate shit.
31
+ ///
32
+ /// throw AteShit(whilst: .initializing,
33
+ /// "We done fucked up.")
34
+ ///
35
+ /// - Parameters:
36
+ /// - whilst:
37
+ /// The general category of fuckery in which the app was engaged
38
+ /// when it ate shit
39
+ /// - grimDetails:
40
+ /// A description of the specific clusterfuck that has caused the
41
+ /// app to eat shit, or an object you want to tattle on about it.
42
+ ///
43
+ public init ( whilst: Fuckery , _ grimDetails: Any ? = nil )
44
+ {
45
+ self . whilst = whilst
46
+ self . grimDetails = grimDetails
47
+ }
48
+
49
+
50
+ public var errorDescription : String
51
+ {
52
+ let description = " [ERROR] The app ate shit whilst \( self . whilst) "
53
+
54
+ switch self . grimDetails
55
+ {
56
+ case . none: return description
57
+ case . some( let accessory) : return description. appending ( " : ' \( String ( describing: accessory) ) ' " )
58
+ }
59
+ }
60
+ }
61
+
62
+
You can’t perform that action at this time.
0 commit comments