ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 1 1 19 1 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 1 1 1 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 2 1 2 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 2 1 2 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 6 1 6 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 10 1 10 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 16 1 16 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 17 1 17 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 18 1 18 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 19 1 19 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 19 1 19 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 1 2 34 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 2 1 2 7 , SrcSpan "tests/examples/PatternSynonyms2.hs" 2 29 2 34 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 8 2 11 , srcInfoPoints = [] } "Foo") Nothing (Just (ExportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 12 2 28 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 2 12 2 13 , SrcSpan "tests/examples/PatternSynonyms2.hs" 2 27 2 28 ] } [ EAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 13 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 2 13 2 20 ] } (PatternNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 13 2 20 , srcInfoPoints = [] }) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 21 2 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 21 2 27 , srcInfoPoints = [] } "Single")) ])))) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 1 1 1 71 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 1 1 1 13 , SrcSpan "tests/examples/PatternSynonyms2.hs" 1 29 1 30 , SrcSpan "tests/examples/PatternSynonyms2.hs" 1 50 1 51 , SrcSpan "tests/examples/PatternSynonyms2.hs" 1 68 1 71 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 1 14 1 29 , srcInfoPoints = [] } "PatternSynonyms" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 1 31 1 50 , srcInfoPoints = [] } "ScopedTypeVariables" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 1 52 1 66 , srcInfoPoints = [] } "KindSignatures" ] ] [] [ PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 1 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 6 1 6 8 , SrcSpan "tests/examples/PatternSynonyms2.hs" 6 18 6 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 9 6 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 9 6 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 9 6 15 , srcInfoPoints = [] } "Single")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 16 6 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 16 6 17 , srcInfoPoints = [] } "x") ]) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 21 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 6 21 6 22 , SrcSpan "tests/examples/PatternSynonyms2.hs" 6 23 6 24 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 22 6 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 22 6 23 , srcInfoPoints = [] } "x") ]) (ExplicitBidirectional SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 3 10 0 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 7 3 7 8 , SrcSpan "tests/examples/PatternSynonyms2.hs" 7 9 7 9 , SrcSpan "tests/examples/PatternSynonyms2.hs" 8 9 8 9 , SrcSpan "tests/examples/PatternSynonyms2.hs" 10 1 10 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 9 7 23 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 9 7 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 9 7 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 9 7 15 , srcInfoPoints = [] } "Single")) [ PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 16 7 17 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 16 7 17 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 16 7 17 , srcInfoPoints = [] } 4 "4") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 18 7 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 7 18 7 19 ] } (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 20 7 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 7 20 7 21 , SrcSpan "tests/examples/PatternSynonyms2.hs" 7 22 7 23 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 21 7 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 21 7 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 21 7 22 , srcInfoPoints = [] } "x")) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 9 8 23 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 9 8 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 9 8 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 9 8 15 , srcInfoPoints = [] } "Single")) [ PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 16 8 17 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 16 8 17 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 16 8 17 , srcInfoPoints = [] } 5 "5") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 18 8 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 8 18 8 19 ] } (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 20 8 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 8 20 8 21 , SrcSpan "tests/examples/PatternSynonyms2.hs" 8 22 8 23 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 21 8 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 21 8 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 21 8 22 , srcInfoPoints = [] } "x")) ])) Nothing ]) , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 1 10 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 10 1 10 8 , SrcSpan "tests/examples/PatternSynonyms2.hs" 10 18 10 19 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 9 10 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 9 10 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 9 10 15 , srcInfoPoints = [] } "Double")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 16 10 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 16 10 17 , srcInfoPoints = [] } "x") ]) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 20 10 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 10 20 10 21 , SrcSpan "tests/examples/PatternSynonyms2.hs" 10 22 10 23 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 21 10 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 21 10 22 , srcInfoPoints = [] } "x") ]) ImplicitBidirectional , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 1 16 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 16 8 16 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 1 16 7 , srcInfoPoints = [] } "single" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 11 16 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 16 15 16 17 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 11 16 14 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 16 11 16 12 , SrcSpan "tests/examples/PatternSynonyms2.hs" 16 13 16 14 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 12 16 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 12 16 13 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 18 16 25 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 18 16 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 18 16 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 18 16 23 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 24 16 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 24 16 25 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 1 18 19 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 1 17 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 1 17 7 , srcInfoPoints = [] } "single") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 8 17 18 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 17 8 17 9 , SrcSpan "tests/examples/PatternSynonyms2.hs" 17 17 17 18 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 9 17 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 9 17 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 9 17 15 , srcInfoPoints = [] } "Single")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 16 17 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 16 17 17 , srcInfoPoints = [] } "x") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 19 17 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 17 19 17 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 21 17 27 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 21 17 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 21 17 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 21 17 25 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 26 17 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 26 17 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 26 17 27 , srcInfoPoints = [] } "x"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 1 18 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 1 18 7 , srcInfoPoints = [] } "single") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 8 18 9 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 10 18 19 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 18 10 18 11 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 12 18 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 12 18 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 12 18 19 , srcInfoPoints = [] } "Nothing")))) Nothing ] ] , [] )