ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 1 1 13 1 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 1 1 1 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 1 3 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 1 3 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 1 3 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 1 4 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 1 9 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 1 11 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 1 12 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 13 1 13 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 13 1 13 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 1 1 1 37 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 1 1 1 13 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 1 34 1 37 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 1 14 1 33 , srcInfoPoints = [] } "ScopedTypeVariables" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 1 3 16 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 6 3 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 1 3 5 , srcInfoPoints = [] } "test" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 9 3 16 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 9 3 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 9 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 9 3 11 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 12 3 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 12 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 12 3 16 , srcInfoPoints = [] } "Char")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 1 6 13 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 1 4 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 1 4 5 , srcInfoPoints = [] } "test")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 6 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 6 4 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 8 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 8 4 10 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 5 5 5 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 5 6 5 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 1 9 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 5 5 25 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 15 5 17 ] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 5 5 14 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 7 5 9 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 5 5 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 5 5 6 , srcInfoPoints = [] } "x")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 10 5 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 10 5 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 10 5 14 , srcInfoPoints = [] } "Char")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 18 5 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 18 5 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 18 5 25 , srcInfoPoints = [] } "getChar"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 5 6 13 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 5 6 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 5 6 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 5 6 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 5 6 11 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 12 6 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 12 6 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 12 6 13 , srcInfoPoints = [] } "x")))) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 1 9 26 , srcInfoPoints = [] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 1 9 16 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 7 9 9 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 1 9 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 1 9 6 , srcInfoPoints = [] } "value")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 10 9 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 10 9 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 10 9 16 , srcInfoPoints = [] } "String")))) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 17 9 26 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 17 9 18 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 19 9 26 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 19 9 26 , srcInfoPoints = [] } "Hello" "Hello"))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 1 11 40 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 12 11 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 1 11 11 , srcInfoPoints = [] } "forallTest" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 15 11 40 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 15 11 21 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 24 11 25 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 22 11 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 22 11 23 , srcInfoPoints = [] } "x") ]) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 26 11 33 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 31 11 33 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 26 11 33 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 31 11 33 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 26 11 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 26 11 28 , srcInfoPoints = [] } "Eq")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 29 11 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 29 11 30 , srcInfoPoints = [] } "x") ]))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 34 11 40 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 36 11 38 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 34 11 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 34 11 35 , srcInfoPoints = [] } "x")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 39 11 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 39 11 40 , srcInfoPoints = [] } "x")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 1 12 54 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 1 12 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 1 12 11 , srcInfoPoints = [] } "forallTest") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 12 12 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 12 12 13 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 14 12 54 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 14 12 15 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 16 12 54 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 16 12 18 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 26 12 30 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 48 12 52 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 19 12 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 19 12 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 19 12 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 19 12 20 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 21 12 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 21 12 23 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 21 12 23 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 24 12 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 24 12 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 24 12 25 , srcInfoPoints = [] } "x")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 31 12 47 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 31 12 32 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 46 12 47 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 32 12 46 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 42 12 44 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 32 12 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 32 12 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 32 12 41 , srcInfoPoints = [] } "undefined"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 45 12 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 45 12 46 , srcInfoPoints = [] } "x")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 53 12 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 53 12 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 53 12 54 , srcInfoPoints = [] } "x"))))) Nothing ] ] , [] )