ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 1 1 14 1 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 1 1 1 1 , SrcSpan "tests/examples/t402.hs" 2 1 2 1 , SrcSpan "tests/examples/t402.hs" 3 1 3 1 , SrcSpan "tests/examples/t402.hs" 4 1 4 1 , SrcSpan "tests/examples/t402.hs" 5 1 5 1 , SrcSpan "tests/examples/t402.hs" 6 1 6 1 , SrcSpan "tests/examples/t402.hs" 6 1 6 1 , SrcSpan "tests/examples/t402.hs" 8 1 8 1 , SrcSpan "tests/examples/t402.hs" 9 1 9 1 , SrcSpan "tests/examples/t402.hs" 10 1 10 1 , SrcSpan "tests/examples/t402.hs" 12 1 12 1 , SrcSpan "tests/examples/t402.hs" 14 1 14 1 , SrcSpan "tests/examples/t402.hs" 14 1 14 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 6 1 6 18 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 6 1 6 7 , SrcSpan "tests/examples/t402.hs" 6 13 6 18 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 6 8 6 12 , srcInfoPoints = [] } "Test") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 1 1 1 30 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 1 1 1 13 , SrcSpan "tests/examples/t402.hs" 1 27 1 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 2 1 2 40 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 2 1 2 13 , SrcSpan "tests/examples/t402.hs" 2 37 2 40 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 2 14 2 19 , srcInfoPoints = [] } "GADTs" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 3 1 3 31 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 3 1 3 13 , SrcSpan "tests/examples/t402.hs" 3 28 3 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 3 14 3 27 , srcInfoPoints = [] } "TypeOperators" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 4 1 4 27 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 4 1 4 13 , SrcSpan "tests/examples/t402.hs" 4 24 4 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 4 14 4 23 , srcInfoPoints = [] } "DataKinds" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 5 1 5 28 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 5 1 5 13 , SrcSpan "tests/examples/t402.hs" 5 25 5 28 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 5 14 5 24 , srcInfoPoints = [] } "TypeInType" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 8 1 8 41 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 8 1 8 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 8 18 8 41 , srcInfoPoints = [] } "Data.Singletons.Prelude" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 9 1 9 42 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 9 1 9 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 9 18 9 42 , srcInfoPoints = [] } "Data.Singletons.TypeLits" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 10 1 10 73 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 10 1 10 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 10 18 10 36 , srcInfoPoints = [] } "Data.Type.Equality" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 10 48 10 73 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 10 48 10 49 , SrcSpan "tests/examples/t402.hs" 10 59 10 60 , SrcSpan "tests/examples/t402.hs" 10 72 10 73 ] } False [ IThingAll SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 10 49 10 59 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 10 55 10 56 , SrcSpan "tests/examples/t402.hs" 10 56 10 58 , SrcSpan "tests/examples/t402.hs" 10 58 10 59 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 10 49 10 54 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 10 49 10 50 , SrcSpan "tests/examples/t402.hs" 10 50 10 53 , SrcSpan "tests/examples/t402.hs" 10 53 10 54 ] } ":~:") , IThingAll SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 10 61 10 72 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 10 68 10 69 , SrcSpan "tests/examples/t402.hs" 10 69 10 71 , SrcSpan "tests/examples/t402.hs" 10 71 10 72 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 10 61 10 67 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 10 61 10 62 , SrcSpan "tests/examples/t402.hs" 10 62 10 66 , SrcSpan "tests/examples/t402.hs" 10 66 10 67 ] } ":~~:") ]) } ] [ GDataInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 1 14 0 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 12 6 12 14 , SrcSpan "tests/examples/t402.hs" 12 37 12 42 , SrcSpan "tests/examples/t402.hs" 13 9 13 9 , SrcSpan "tests/examples/t402.hs" 14 1 14 0 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 1 12 5 , srcInfoPoints = [] }) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 15 12 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 15 12 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 15 12 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 15 12 19 , srcInfoPoints = [] } "Sing"))) (TyKind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 20 12 36 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 12 20 12 21 , SrcSpan "tests/examples/t402.hs" 12 23 12 25 , SrcSpan "tests/examples/t402.hs" 12 35 12 36 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 21 12 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 21 12 22 , srcInfoPoints = [] } "z")) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 26 12 35 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 12 26 12 27 , SrcSpan "tests/examples/t402.hs" 12 34 12 35 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 27 12 34 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 27 12 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 27 12 28 , srcInfoPoints = [] } "a")) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 29 12 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 29 12 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 29 12 32 , srcInfoPoints = [] } ":~:"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 33 12 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 12 33 12 34 , srcInfoPoints = [] } "b")))))) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 13 9 13 27 , srcInfoPoints = [ SrcSpan "tests/examples/t402.hs" 13 15 13 17 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 13 9 13 14 , srcInfoPoints = [] } "SRefl") Nothing Nothing Nothing (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 13 18 13 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 13 18 13 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 13 18 13 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 13 18 13 22 , srcInfoPoints = [] } "Sing"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 13 23 13 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 13 23 13 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/t402.hs" 13 23 13 27 , srcInfoPoints = [] } "Refl")))) ] [] ] , [] )