ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 1 1 8 1 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 1 1 1 1 , SrcSpan "tests/examples/ConstraintKinds3.hs" 2 1 2 1 , SrcSpan "tests/examples/ConstraintKinds3.hs" 4 1 4 1 , SrcSpan "tests/examples/ConstraintKinds3.hs" 4 1 4 1 , SrcSpan "tests/examples/ConstraintKinds3.hs" 4 1 4 1 , SrcSpan "tests/examples/ConstraintKinds3.hs" 8 1 8 1 , SrcSpan "tests/examples/ConstraintKinds3.hs" 8 1 8 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 1 1 1 13 , SrcSpan "tests/examples/ConstraintKinds3.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 1 14 1 29 , srcInfoPoints = [] } "ConstraintKinds" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 2 1 2 39 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 2 1 2 13 , SrcSpan "tests/examples/ConstraintKinds3.hs" 2 36 2 39 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 2 14 2 35 , srcInfoPoints = [] } "MultiParamTypeClasses" ] ] [] [ ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 1 6 25 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 4 1 4 6 , SrcSpan "tests/examples/ConstraintKinds3.hs" 4 15 4 20 , SrcSpan "tests/examples/ConstraintKinds3.hs" 6 3 6 3 , SrcSpan "tests/examples/ConstraintKinds3.hs" 8 1 8 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 7 4 14 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 7 4 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 7 4 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 7 4 10 , srcInfoPoints = [] } "Foo")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 11 4 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 11 4 12 , srcInfoPoints = [] } "c"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 13 4 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 13 4 14 , srcInfoPoints = [] } "a"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 3 6 25 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 6 7 6 9 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 3 6 25 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 6 7 6 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 3 6 6 , srcInfoPoints = [] } "bar" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 10 6 25 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 10 6 18 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 6 10 6 11 , SrcSpan "tests/examples/ConstraintKinds3.hs" 6 14 6 15 , SrcSpan "tests/examples/ConstraintKinds3.hs" 6 16 6 18 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 10 6 18 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 6 10 6 11 , SrcSpan "tests/examples/ConstraintKinds3.hs" 6 14 6 15 , SrcSpan "tests/examples/ConstraintKinds3.hs" 6 16 6 18 ] } (AppA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 11 6 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 11 6 12 , srcInfoPoints = [] } "c") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 13 6 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 13 6 14 , srcInfoPoints = [] } "a") ])))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 19 6 25 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 6 21 6 23 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 19 6 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 19 6 20 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 24 6 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 24 6 25 , srcInfoPoints = [] } "a"))))) ]) ] , [] )