@@ -15,7 +15,11 @@ module Generics.Diff.Instances where
15
15
16
16
import Control.Applicative
17
17
import Control.Concurrent
18
+ import Control.Exception
19
+ import Data.Array.Byte
20
+ import Data.Char
18
21
import Data.Complex
22
+ import Data.Data
19
23
import Data.Fixed
20
24
import qualified Data.Functor.Compose as F
21
25
import Data.Functor.Identity
@@ -34,23 +38,41 @@ import qualified Data.Text as T
34
38
import Data.Text.Encoding.Error (UnicodeException )
35
39
import qualified Data.Text.Lazy as TL
36
40
import qualified Data.Text.Lazy.Builder as TLB
37
- import Data.Typeable
41
+ import Data.Type.Coercion
38
42
import Data.Unique
39
43
import Data.Version
40
44
import Data.Void
41
45
import Data.Word
46
+ import Foreign.C.ConstPtr
47
+ import Foreign.C.Error
42
48
import Foreign.C.Types
43
49
import Foreign.ForeignPtr
44
50
import Foreign.Ptr
45
51
import Foreign.StablePtr
52
+ import GHC.Arr
53
+ import GHC.Base
54
+ import GHC.ByteOrder
46
55
import GHC.Conc
47
56
import GHC.Event
57
+ import GHC.Fingerprint
58
+ import qualified GHC.Generics as G
59
+ import GHC.IO.Buffer
60
+ import GHC.IO.Device
61
+ import GHC.IOArray
62
+ import GHC.IOPort
63
+ import GHC.InfoProv
48
64
import GHC.StableName
65
+ import GHC.Stack
66
+ import GHC.Stack.CloneStack
67
+ import GHC.TypeLits
49
68
import Generics.Diff.Class
50
69
import Generics.Diff.Type
51
70
import Generics.SOP
52
- import Numeric.Natural
71
+ import System.Exit
53
72
import System.IO
73
+ import System.IO.Error
74
+ import System.Timeout
75
+ import Text.Read
54
76
import qualified Type.Reflection as TR
55
77
56
78
-- primitive(ish) types
@@ -143,6 +165,53 @@ instance Diff TL.Text where diff = eqDiff
143
165
instance Diff TLB. Builder where diff = eqDiff
144
166
instance Diff UnicodeException where diff = eqDiff
145
167
168
+ instance Diff ArithException where diff = eqDiff
169
+ instance Diff ArrayException where diff = eqDiff
170
+ instance Diff Associativity where diff = eqDiff
171
+ instance Diff AsyncException where diff = eqDiff
172
+ instance Diff BlockReason where diff = eqDiff
173
+ instance Diff BufferMode where diff = eqDiff
174
+ instance Diff BufferState where diff = eqDiff
175
+ instance Diff ByteArray where diff = eqDiff
176
+ instance Diff ByteOrder where diff = eqDiff
177
+ instance Diff CBool where diff = eqDiff
178
+ instance Diff (Coercion a b ) where diff = eqDiff
179
+ instance Diff (ConstPtr a ) where diff = eqDiff
180
+ instance Diff DataRep where diff = eqDiff
181
+ instance Diff G. DecidedStrictness where diff = eqDiff
182
+ instance Diff Errno where diff = eqDiff
183
+ instance Diff ErrorCall where diff = eqDiff
184
+ instance Diff ExitCode where diff = eqDiff
185
+ instance Diff FdKey where diff = eqDiff
186
+ instance Diff Fingerprint where diff = eqDiff
187
+ instance Diff G. Fixity where diff = eqDiff
188
+ instance Diff GeneralCategory where diff = eqDiff
189
+ instance Diff InfoProv where diff = eqDiff
190
+ instance Diff (IOArray i e ) where diff = eqDiff
191
+ instance Diff IODeviceType where diff = eqDiff
192
+ instance Diff IOErrorType where diff = eqDiff
193
+ instance Diff IOException where diff = eqDiff
194
+ instance Diff IOMode where diff = eqDiff
195
+ instance Diff (IOPort a ) where diff = eqDiff
196
+ instance Diff Lexeme where diff = eqDiff
197
+ instance Diff Lifetime where diff = eqDiff
198
+ instance Diff MaskingState where diff = eqDiff
199
+ instance Diff (MutableByteArray a ) where diff = eqDiff
200
+ instance Diff NewlineMode where diff = eqDiff
201
+ instance Diff Newline where diff = eqDiff
202
+ instance Diff (OrderingI a b ) where diff = eqDiff
203
+ instance Diff SeekMode where diff = eqDiff
204
+ instance Diff SomeChar where diff = eqDiff
205
+ instance Diff SomeNat where diff = eqDiff
206
+ instance Diff SomeSymbol where diff = eqDiff
207
+ instance Diff SrcLoc where diff = eqDiff
208
+ instance Diff StackEntry where diff = eqDiff
209
+ instance Diff (STArray s i a ) where diff = eqDiff
210
+ instance Diff ThreadStatus where diff = eqDiff
211
+ instance Diff TimeoutKey where diff = eqDiff
212
+ instance Diff Timeout where diff = eqDiff
213
+ instance Diff TrName where diff = eqDiff
214
+
146
215
{- FOURMOLU_ENABLE -}
147
216
148
217
-- list-like types
0 commit comments