1ParseOk 2 ( Module 3 SrcSpanInfo 4 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 1 1 36 1 5 , srcInfoPoints = 6 [ SrcSpan "tests/examples/List2.hs" 1 1 1 1 7 , SrcSpan "tests/examples/List2.hs" 2 1 2 1 8 , SrcSpan "tests/examples/List2.hs" 3 1 3 1 9 , SrcSpan "tests/examples/List2.hs" 4 1 4 1 10 , SrcSpan "tests/examples/List2.hs" 5 1 5 1 11 , SrcSpan "tests/examples/List2.hs" 6 1 6 1 12 , SrcSpan "tests/examples/List2.hs" 7 1 7 1 13 , SrcSpan "tests/examples/List2.hs" 8 1 8 1 14 , SrcSpan "tests/examples/List2.hs" 9 1 9 1 15 , SrcSpan "tests/examples/List2.hs" 10 1 10 1 16 , SrcSpan "tests/examples/List2.hs" 11 1 11 1 17 , SrcSpan "tests/examples/List2.hs" 12 1 12 1 18 , SrcSpan "tests/examples/List2.hs" 13 1 13 1 19 , SrcSpan "tests/examples/List2.hs" 14 1 14 1 20 , SrcSpan "tests/examples/List2.hs" 15 1 15 1 21 , SrcSpan "tests/examples/List2.hs" 30 1 30 1 22 , SrcSpan "tests/examples/List2.hs" 30 1 30 1 23 , SrcSpan "tests/examples/List2.hs" 32 1 32 1 24 , SrcSpan "tests/examples/List2.hs" 33 1 33 1 25 , SrcSpan "tests/examples/List2.hs" 34 1 34 1 26 , SrcSpan "tests/examples/List2.hs" 36 1 36 1 27 , SrcSpan "tests/examples/List2.hs" 36 1 36 1 28 ] 29 } 30 (Just 31 (ModuleHead 32 SrcSpanInfo 33 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 30 1 30 30 34 , srcInfoPoints = 35 [ SrcSpan "tests/examples/List2.hs" 30 1 30 7 36 , SrcSpan "tests/examples/List2.hs" 30 25 30 30 37 ] 38 } 39 (ModuleName 40 SrcSpanInfo 41 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 30 8 30 24 42 , srcInfoPoints = [] 43 } 44 "Type.Family.List") 45 Nothing 46 Nothing)) 47 [ LanguagePragma 48 SrcSpanInfo 49 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 1 1 1 40 50 , srcInfoPoints = 51 [ SrcSpan "tests/examples/List2.hs" 1 1 1 13 52 , SrcSpan "tests/examples/List2.hs" 1 37 1 40 53 ] 54 } 55 [ Ident 56 SrcSpanInfo 57 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 1 14 1 36 58 , srcInfoPoints = [] 59 } 60 "TypeFamilyDependencies" 61 ] 62 , LanguagePragma 63 SrcSpanInfo 64 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 2 1 2 33 65 , srcInfoPoints = 66 [ SrcSpan "tests/examples/List2.hs" 2 1 2 13 67 , SrcSpan "tests/examples/List2.hs" 2 30 2 33 68 ] 69 } 70 [ Ident 71 SrcSpanInfo 72 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 2 14 2 29 73 , srcInfoPoints = [] 74 } 75 "PatternSynonyms" 76 ] 77 , LanguagePragma 78 SrcSpanInfo 79 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 3 1 3 33 80 , srcInfoPoints = 81 [ SrcSpan "tests/examples/List2.hs" 3 1 3 13 82 , SrcSpan "tests/examples/List2.hs" 3 30 3 33 83 ] 84 } 85 [ Ident 86 SrcSpanInfo 87 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 3 14 3 29 88 , srcInfoPoints = [] 89 } 90 "ConstraintKinds" 91 ] 92 , LanguagePragma 93 SrcSpanInfo 94 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 4 1 4 28 95 , srcInfoPoints = 96 [ SrcSpan "tests/examples/List2.hs" 4 1 4 13 97 , SrcSpan "tests/examples/List2.hs" 4 25 4 28 98 ] 99 } 100 [ Ident 101 SrcSpanInfo 102 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 4 14 4 24 103 , srcInfoPoints = [] 104 } 105 "RankNTypes" 106 ] 107 , LanguagePragma 108 SrcSpanInfo 109 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 5 1 5 36 110 , srcInfoPoints = 111 [ SrcSpan "tests/examples/List2.hs" 5 1 5 13 112 , SrcSpan "tests/examples/List2.hs" 5 33 5 36 113 ] 114 } 115 [ Ident 116 SrcSpanInfo 117 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 5 14 5 32 118 , srcInfoPoints = [] 119 } 120 "StandaloneDeriving" 121 ] 122 , LanguagePragma 123 SrcSpanInfo 124 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 6 1 6 35 125 , srcInfoPoints = 126 [ SrcSpan "tests/examples/List2.hs" 6 1 6 13 127 , SrcSpan "tests/examples/List2.hs" 6 32 6 35 128 ] 129 } 130 [ Ident 131 SrcSpanInfo 132 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 6 14 6 31 133 , srcInfoPoints = [] 134 } 135 "FlexibleInstances" 136 ] 137 , LanguagePragma 138 SrcSpanInfo 139 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 7 1 7 40 140 , srcInfoPoints = 141 [ SrcSpan "tests/examples/List2.hs" 7 1 7 13 142 , SrcSpan "tests/examples/List2.hs" 7 37 7 40 143 ] 144 } 145 [ Ident 146 SrcSpanInfo 147 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 7 14 7 36 148 , srcInfoPoints = [] 149 } 150 "FunctionalDependencies" 151 ] 152 , LanguagePragma 153 SrcSpanInfo 154 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 8 1 8 38 155 , srcInfoPoints = 156 [ SrcSpan "tests/examples/List2.hs" 8 1 8 13 157 , SrcSpan "tests/examples/List2.hs" 8 35 8 38 158 ] 159 } 160 [ Ident 161 SrcSpanInfo 162 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 8 14 8 34 163 , srcInfoPoints = [] 164 } 165 "UndecidableInstances" 166 ] 167 , LanguagePragma 168 SrcSpanInfo 169 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 9 1 9 30 170 , srcInfoPoints = 171 [ SrcSpan "tests/examples/List2.hs" 9 1 9 13 172 , SrcSpan "tests/examples/List2.hs" 9 27 9 30 173 ] 174 } 175 [ Ident 176 SrcSpanInfo 177 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 9 14 9 26 178 , srcInfoPoints = [] 179 } 180 "TypeFamilies" 181 ] 182 , LanguagePragma 183 SrcSpanInfo 184 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 10 1 10 28 185 , srcInfoPoints = 186 [ SrcSpan "tests/examples/List2.hs" 10 1 10 13 187 , SrcSpan "tests/examples/List2.hs" 10 25 10 28 188 ] 189 } 190 [ Ident 191 SrcSpanInfo 192 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 10 14 10 24 193 , srcInfoPoints = [] 194 } 195 "LambdaCase" 196 ] 197 , LanguagePragma 198 SrcSpanInfo 199 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 11 1 11 31 200 , srcInfoPoints = 201 [ SrcSpan "tests/examples/List2.hs" 11 1 11 13 202 , SrcSpan "tests/examples/List2.hs" 11 28 11 31 203 ] 204 } 205 [ Ident 206 SrcSpanInfo 207 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 11 14 11 27 208 , srcInfoPoints = [] 209 } 210 "TypeOperators" 211 ] 212 , LanguagePragma 213 SrcSpanInfo 214 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 12 1 12 32 215 , srcInfoPoints = 216 [ SrcSpan "tests/examples/List2.hs" 12 1 12 13 217 , SrcSpan "tests/examples/List2.hs" 12 29 12 32 218 ] 219 } 220 [ Ident 221 SrcSpanInfo 222 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 12 14 12 28 223 , srcInfoPoints = [] 224 } 225 "KindSignatures" 226 ] 227 , LanguagePragma 228 SrcSpanInfo 229 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 13 1 13 27 230 , srcInfoPoints = 231 [ SrcSpan "tests/examples/List2.hs" 13 1 13 13 232 , SrcSpan "tests/examples/List2.hs" 13 24 13 27 233 ] 234 } 235 [ Ident 236 SrcSpanInfo 237 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 13 14 13 23 238 , srcInfoPoints = [] 239 } 240 "DataKinds" 241 ] 242 , LanguagePragma 243 SrcSpanInfo 244 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 14 1 14 27 245 , srcInfoPoints = 246 [ SrcSpan "tests/examples/List2.hs" 14 1 14 13 247 , SrcSpan "tests/examples/List2.hs" 14 24 14 27 248 ] 249 } 250 [ Ident 251 SrcSpanInfo 252 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 14 14 14 23 253 , srcInfoPoints = [] 254 } 255 "PolyKinds" 256 ] 257 , LanguagePragma 258 SrcSpanInfo 259 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 15 1 15 23 260 , srcInfoPoints = 261 [ SrcSpan "tests/examples/List2.hs" 15 1 15 13 262 , SrcSpan "tests/examples/List2.hs" 15 20 15 23 263 ] 264 } 265 [ Ident 266 SrcSpanInfo 267 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 15 14 15 19 268 , srcInfoPoints = [] 269 } 270 "GADTs" 271 ] 272 ] 273 [] 274 [ TypeDecl 275 SrcSpanInfo 276 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 32 1 32 16 277 , srcInfoPoints = 278 [ SrcSpan "tests/examples/List2.hs" 32 1 32 5 279 , SrcSpan "tests/examples/List2.hs" 32 11 32 12 280 ] 281 } 282 (DHead 283 SrcSpanInfo 284 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 32 6 32 7 285 , srcInfoPoints = [] 286 } 287 (Ident 288 SrcSpanInfo 289 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 32 6 32 7 290 , srcInfoPoints = [] 291 } 292 "\216")) 293 (TyPromoted 294 SrcSpanInfo 295 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 32 13 32 16 296 , srcInfoPoints = 297 [ SrcSpan "tests/examples/List2.hs" 32 13 32 14 298 , SrcSpan "tests/examples/List2.hs" 32 15 32 16 299 ] 300 } 301 (PromotedList 302 SrcSpanInfo 303 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 32 13 32 16 304 , srcInfoPoints = 305 [ SrcSpan "tests/examples/List2.hs" 32 13 32 14 306 , SrcSpan "tests/examples/List2.hs" 32 15 32 16 307 ] 308 } 309 True 310 [])) 311 , TypeDecl 312 SrcSpanInfo 313 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 33 1 33 17 314 , srcInfoPoints = 315 [ SrcSpan "tests/examples/List2.hs" 33 1 33 5 316 , SrcSpan "tests/examples/List2.hs" 33 11 33 12 317 ] 318 } 319 (DHead 320 SrcSpanInfo 321 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 33 6 33 10 322 , srcInfoPoints = 323 [ SrcSpan "tests/examples/List2.hs" 33 6 33 7 324 , SrcSpan "tests/examples/List2.hs" 33 7 33 9 325 , SrcSpan "tests/examples/List2.hs" 33 9 33 10 326 ] 327 } 328 (Symbol 329 SrcSpanInfo 330 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 33 7 33 9 331 , srcInfoPoints = [] 332 } 333 ":<")) 334 (TyPromoted 335 SrcSpanInfo 336 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 33 13 33 17 337 , srcInfoPoints = [ SrcSpan "tests/examples/List2.hs" 33 13 33 14 ] 338 } 339 (PromotedCon 340 SrcSpanInfo 341 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 33 13 33 17 342 , srcInfoPoints = [ SrcSpan "tests/examples/List2.hs" 33 13 33 14 ] 343 } 344 True 345 (Special 346 SrcSpanInfo 347 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 33 14 33 17 348 , srcInfoPoints = 349 [ SrcSpan "tests/examples/List2.hs" 33 14 33 15 350 , SrcSpan "tests/examples/List2.hs" 33 15 33 16 351 , SrcSpan "tests/examples/List2.hs" 33 16 33 17 352 ] 353 } 354 (Cons 355 SrcSpanInfo 356 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 33 15 33 16 357 , srcInfoPoints = [] 358 })))) 359 , InfixDecl 360 SrcSpanInfo 361 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 34 1 34 12 362 , srcInfoPoints = [ SrcSpan "tests/examples/List2.hs" 34 8 34 9 ] 363 } 364 (AssocRight 365 SrcSpanInfo 366 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 34 1 34 7 367 , srcInfoPoints = [] 368 }) 369 (Just 5) 370 [ ConOp 371 SrcSpanInfo 372 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 34 10 34 12 373 , srcInfoPoints = [] 374 } 375 (Symbol 376 SrcSpanInfo 377 { srcInfoSpan = SrcSpan "tests/examples/List2.hs" 34 10 34 12 378 , srcInfoPoints = [] 379 } 380 ":<") 381 ] 382 ] 383 , [ Comment 384 False 385 (SrcSpan "tests/examples/List2.hs" 16 1 16 78) 386 "---------------------------------------------------------------------------" 387 , Comment False (SrcSpan "tests/examples/List2.hs" 17 1 17 5) " |" 388 , Comment 389 False 390 (SrcSpan "tests/examples/List2.hs" 18 1 18 35) 391 " Module : Type.Family.List" 392 , Comment 393 False 394 (SrcSpan "tests/examples/List2.hs" 19 1 19 49) 395 " Copyright : Copyright (C) 2015 Kyle Carter" 396 , Comment 397 False 398 (SrcSpan "tests/examples/List2.hs" 20 1 20 23) 399 " License : BSD3" 400 , Comment False (SrcSpan "tests/examples/List2.hs" 21 1 21 3) "" 401 , Comment 402 False 403 (SrcSpan "tests/examples/List2.hs" 22 1 22 53) 404 " Maintainer : Kyle Carter <kylcarte@indiana.edu>" 405 , Comment 406 False 407 (SrcSpan "tests/examples/List2.hs" 23 1 23 31) 408 " Stability : experimental" 409 , Comment 410 False 411 (SrcSpan "tests/examples/List2.hs" 24 1 24 29) 412 " Portability : RankNTypes" 413 , Comment False (SrcSpan "tests/examples/List2.hs" 25 1 25 3) "" 414 , Comment 415 False 416 (SrcSpan "tests/examples/List2.hs" 26 1 26 57) 417 " Convenient aliases and type families for working with" 418 , Comment 419 False 420 (SrcSpan "tests/examples/List2.hs" 27 1 27 21) 421 " type-level lists." 422 , Comment 423 False 424 (SrcSpan "tests/examples/List2.hs" 28 1 28 77) 425 "--------------------------------------------------------------------------" 426 ] 427 ) 428