1ParseOk
2  ( Module
3      SrcSpanInfo
4        { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 1 1 3 1
5        , srcInfoPoints =
6            [ SrcSpan "tests/examples/ReadP.hs" 1 1 1 1
7            , SrcSpan "tests/examples/ReadP.hs" 2 1 2 1
8            , SrcSpan "tests/examples/ReadP.hs" 2 1 2 1
9            , SrcSpan "tests/examples/ReadP.hs" 2 1 2 1
10            , SrcSpan "tests/examples/ReadP.hs" 3 1 3 1
11            , SrcSpan "tests/examples/ReadP.hs" 3 1 3 1
12            ]
13        }
14      Nothing
15      [ LanguagePragma
16          SrcSpanInfo
17            { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 1 1 1 31
18            , srcInfoPoints =
19                [ SrcSpan "tests/examples/ReadP.hs" 1 1 1 13
20                , SrcSpan "tests/examples/ReadP.hs" 1 28 1 31
21                ]
22            }
23          [ Ident
24              SrcSpanInfo
25                { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 1 14 1 27
26                , srcInfoPoints = []
27                }
28              "TypeOperators"
29          ]
30      ]
31      []
32      [ DataDecl
33          SrcSpanInfo
34            { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 1 2 51
35            , srcInfoPoints = [ SrcSpan "tests/examples/ReadP.hs" 2 17 2 18 ]
36            }
37          (NewType
38             SrcSpanInfo
39               { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 1 2 8
40               , srcInfoPoints = []
41               })
42          Nothing
43          (DHApp
44             SrcSpanInfo
45               { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 9 2 16
46               , srcInfoPoints = []
47               }
48             (DHead
49                SrcSpanInfo
50                  { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 9 2 14
51                  , srcInfoPoints = []
52                  }
53                (Ident
54                   SrcSpanInfo
55                     { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 9 2 14
56                     , srcInfoPoints = []
57                     }
58                   "ReadP"))
59             (UnkindedVar
60                SrcSpanInfo
61                  { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 15 2 16
62                  , srcInfoPoints = []
63                  }
64                (Ident
65                   SrcSpanInfo
66                     { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 15 2 16
67                     , srcInfoPoints = []
68                     }
69                   "a")))
70          [ QualConDecl
71              SrcSpanInfo
72                { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 19 2 51
73                , srcInfoPoints = []
74                }
75              Nothing
76              Nothing
77              (ConDecl
78                 SrcSpanInfo
79                   { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 19 2 51
80                   , srcInfoPoints = []
81                   }
82                 (Ident
83                    SrcSpanInfo
84                      { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 19 2 20
85                      , srcInfoPoints = []
86                      }
87                    "R")
88                 [ TyParen
89                     SrcSpanInfo
90                       { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 21 2 51
91                       , srcInfoPoints =
92                           [ SrcSpan "tests/examples/ReadP.hs" 2 21 2 22
93                           , SrcSpan "tests/examples/ReadP.hs" 2 50 2 51
94                           ]
95                       }
96                     (TyInfix
97                        SrcSpanInfo
98                          { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 22 2 50
99                          , srcInfoPoints = []
100                          }
101                        (TyApp
102                           SrcSpanInfo
103                             { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 22 2 30
104                             , srcInfoPoints = []
105                             }
106                           (TyVar
107                              SrcSpanInfo
108                                { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 22 2 28
109                                , srcInfoPoints = []
110                                }
111                              (Ident
112                                 SrcSpanInfo
113                                   { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 22 2 28
114                                   , srcInfoPoints = []
115                                   }
116                                 "forall"))
117                           (TyVar
118                              SrcSpanInfo
119                                { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 29 2 30
120                                , srcInfoPoints = []
121                                }
122                              (Ident
123                                 SrcSpanInfo
124                                   { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 29 2 30
125                                   , srcInfoPoints = []
126                                   }
127                                 "b")))
128                        (UnpromotedName
129                           SrcSpanInfo
130                             { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 31 2 32
131                             , srcInfoPoints = []
132                             }
133                           (UnQual
134                              SrcSpanInfo
135                                { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 31 2 32
136                                , srcInfoPoints = []
137                                }
138                              (Symbol
139                                 SrcSpanInfo
140                                   { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 31 2 32
141                                   , srcInfoPoints = []
142                                   }
143                                 ".")))
144                        (TyFun
145                           SrcSpanInfo
146                             { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 33 2 50
147                             , srcInfoPoints = [ SrcSpan "tests/examples/ReadP.hs" 2 44 2 46 ]
148                             }
149                           (TyParen
150                              SrcSpanInfo
151                                { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 33 2 43
152                                , srcInfoPoints =
153                                    [ SrcSpan "tests/examples/ReadP.hs" 2 33 2 34
154                                    , SrcSpan "tests/examples/ReadP.hs" 2 42 2 43
155                                    ]
156                                }
157                              (TyFun
158                                 SrcSpanInfo
159                                   { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 34 2 42
160                                   , srcInfoPoints = [ SrcSpan "tests/examples/ReadP.hs" 2 36 2 38 ]
161                                   }
162                                 (TyVar
163                                    SrcSpanInfo
164                                      { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 34 2 35
165                                      , srcInfoPoints = []
166                                      }
167                                    (Ident
168                                       SrcSpanInfo
169                                         { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 34 2 35
170                                         , srcInfoPoints = []
171                                         }
172                                       "a"))
173                                 (TyApp
174                                    SrcSpanInfo
175                                      { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 39 2 42
176                                      , srcInfoPoints = []
177                                      }
178                                    (TyCon
179                                       SrcSpanInfo
180                                         { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 39 2 40
181                                         , srcInfoPoints = []
182                                         }
183                                       (UnQual
184                                          SrcSpanInfo
185                                            { srcInfoSpan =
186                                                SrcSpan "tests/examples/ReadP.hs" 2 39 2 40
187                                            , srcInfoPoints = []
188                                            }
189                                          (Ident
190                                             SrcSpanInfo
191                                               { srcInfoSpan =
192                                                   SrcSpan "tests/examples/ReadP.hs" 2 39 2 40
193                                               , srcInfoPoints = []
194                                               }
195                                             "P")))
196                                    (TyVar
197                                       SrcSpanInfo
198                                         { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 41 2 42
199                                         , srcInfoPoints = []
200                                         }
201                                       (Ident
202                                          SrcSpanInfo
203                                            { srcInfoSpan =
204                                                SrcSpan "tests/examples/ReadP.hs" 2 41 2 42
205                                            , srcInfoPoints = []
206                                            }
207                                          "b")))))
208                           (TyApp
209                              SrcSpanInfo
210                                { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 47 2 50
211                                , srcInfoPoints = []
212                                }
213                              (TyCon
214                                 SrcSpanInfo
215                                   { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 47 2 48
216                                   , srcInfoPoints = []
217                                   }
218                                 (UnQual
219                                    SrcSpanInfo
220                                      { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 47 2 48
221                                      , srcInfoPoints = []
222                                      }
223                                    (Ident
224                                       SrcSpanInfo
225                                         { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 47 2 48
226                                         , srcInfoPoints = []
227                                         }
228                                       "P")))
229                              (TyVar
230                                 SrcSpanInfo
231                                   { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 49 2 50
232                                   , srcInfoPoints = []
233                                   }
234                                 (Ident
235                                    SrcSpanInfo
236                                      { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 49 2 50
237                                      , srcInfoPoints = []
238                                      }
239                                    "b")))))
240                 ])
241          ]
242          []
243      ]
244  , []
245  )
246