1ParseOk
2  ( Module
3      SrcSpanInfo
4        { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 1 1 8 1
5        , srcInfoPoints =
6            [ SrcSpan "tests/examples/ArrowLayout.hs" 1 1 1 1
7            , SrcSpan "tests/examples/ArrowLayout.hs" 2 1 2 1
8            , SrcSpan "tests/examples/ArrowLayout.hs" 2 1 2 1
9            , SrcSpan "tests/examples/ArrowLayout.hs" 4 1 4 1
10            , SrcSpan "tests/examples/ArrowLayout.hs" 8 1 8 1
11            , SrcSpan "tests/examples/ArrowLayout.hs" 8 1 8 1
12            ]
13        }
14      (Just
15         (ModuleHead
16            SrcSpanInfo
17              { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 2 1 2 25
18              , srcInfoPoints =
19                  [ SrcSpan "tests/examples/ArrowLayout.hs" 2 1 2 7
20                  , SrcSpan "tests/examples/ArrowLayout.hs" 2 20 2 25
21                  ]
22              }
23            (ModuleName
24               SrcSpanInfo
25                 { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 2 8 2 19
26                 , srcInfoPoints = []
27                 }
28               "ArrowLayout")
29            Nothing
30            Nothing))
31      [ LanguagePragma
32          SrcSpanInfo
33            { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 1 1 1 24
34            , srcInfoPoints =
35                [ SrcSpan "tests/examples/ArrowLayout.hs" 1 1 1 13
36                , SrcSpan "tests/examples/ArrowLayout.hs" 1 21 1 24
37                ]
38            }
39          [ Ident
40              SrcSpanInfo
41                { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 1 14 1 20
42                , srcInfoPoints = []
43                }
44              "Arrows"
45          ]
46      ]
47      []
48      [ PatBind
49          SrcSpanInfo
50            { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 1 7 15
51            , srcInfoPoints = []
52            }
53          (PVar
54             SrcSpanInfo
55               { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 1 4 4
56               , srcInfoPoints = []
57               }
58             (Ident
59                SrcSpanInfo
60                  { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 1 4 4
61                  , srcInfoPoints = []
62                  }
63                "exp"))
64          (UnGuardedRhs
65             SrcSpanInfo
66               { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 5 7 15
67               , srcInfoPoints =
68                   [ SrcSpan "tests/examples/ArrowLayout.hs" 4 5 4 6 ]
69               }
70             (Proc
71                SrcSpanInfo
72                  { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 7 7 15
73                  , srcInfoPoints =
74                      [ SrcSpan "tests/examples/ArrowLayout.hs" 4 7 4 11
75                      , SrcSpan "tests/examples/ArrowLayout.hs" 4 15 4 17
76                      ]
77                  }
78                (PApp
79                   SrcSpanInfo
80                     { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 12 4 14
81                     , srcInfoPoints =
82                         [ SrcSpan "tests/examples/ArrowLayout.hs" 4 12 4 13
83                         , SrcSpan "tests/examples/ArrowLayout.hs" 4 13 4 14
84                         ]
85                     }
86                   (Special
87                      SrcSpanInfo
88                        { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 12 4 14
89                        , srcInfoPoints =
90                            [ SrcSpan "tests/examples/ArrowLayout.hs" 4 12 4 13
91                            , SrcSpan "tests/examples/ArrowLayout.hs" 4 13 4 14
92                            ]
93                        }
94                      (UnitCon
95                         SrcSpanInfo
96                           { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 12 4 14
97                           , srcInfoPoints =
98                               [ SrcSpan "tests/examples/ArrowLayout.hs" 4 12 4 13
99                               , SrcSpan "tests/examples/ArrowLayout.hs" 4 13 4 14
100                               ]
101                           }))
102                   [])
103                (Do
104                   SrcSpanInfo
105                     { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 18 7 15
106                     , srcInfoPoints =
107                         [ SrcSpan "tests/examples/ArrowLayout.hs" 4 18 4 20
108                         , SrcSpan "tests/examples/ArrowLayout.hs" 5 3 5 3
109                         , SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 3
110                         , SrcSpan "tests/examples/ArrowLayout.hs" 8 1 8 0
111                         ]
112                     }
113                   [ RecStmt
114                       SrcSpanInfo
115                         { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 3 6 25
116                         , srcInfoPoints =
117                             [ SrcSpan "tests/examples/ArrowLayout.hs" 5 3 5 6
118                             , SrcSpan "tests/examples/ArrowLayout.hs" 5 7 5 7
119                             , SrcSpan "tests/examples/ArrowLayout.hs" 6 7 6 7
120                             , SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 0
121                             ]
122                         }
123                       [ LetStmt
124                           SrcSpanInfo
125                             { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 7 5 20
126                             , srcInfoPoints =
127                                 [ SrcSpan "tests/examples/ArrowLayout.hs" 5 7 5 10 ]
128                             }
129                           (BDecls
130                              SrcSpanInfo
131                                { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 11 5 20
132                                , srcInfoPoints =
133                                    [ SrcSpan "tests/examples/ArrowLayout.hs" 5 11 5 11
134                                    , SrcSpan "tests/examples/ArrowLayout.hs" 6 7 6 0
135                                    ]
136                                }
137                              [ PatBind
138                                  SrcSpanInfo
139                                    { srcInfoSpan =
140                                        SrcSpan "tests/examples/ArrowLayout.hs" 5 11 5 20
141                                    , srcInfoPoints = []
142                                    }
143                                  (PVar
144                                     SrcSpanInfo
145                                       { srcInfoSpan =
146                                           SrcSpan "tests/examples/ArrowLayout.hs" 5 11 5 12
147                                       , srcInfoPoints = []
148                                       }
149                                     (Ident
150                                        SrcSpanInfo
151                                          { srcInfoSpan =
152                                              SrcSpan "tests/examples/ArrowLayout.hs" 5 11 5 12
153                                          , srcInfoPoints = []
154                                          }
155                                        "e"))
156                                  (UnGuardedRhs
157                                     SrcSpanInfo
158                                       { srcInfoSpan =
159                                           SrcSpan "tests/examples/ArrowLayout.hs" 5 13 5 20
160                                       , srcInfoPoints =
161                                           [ SrcSpan "tests/examples/ArrowLayout.hs" 5 13 5 14 ]
162                                       }
163                                     (InfixApp
164                                        SrcSpanInfo
165                                          { srcInfoSpan =
166                                              SrcSpan "tests/examples/ArrowLayout.hs" 5 15 5 20
167                                          , srcInfoPoints = []
168                                          }
169                                        (Lit
170                                           SrcSpanInfo
171                                             { srcInfoSpan =
172                                                 SrcSpan "tests/examples/ArrowLayout.hs" 5 15 5 16
173                                             , srcInfoPoints = []
174                                             }
175                                           (Int
176                                              SrcSpanInfo
177                                                { srcInfoSpan =
178                                                    SrcSpan
179                                                      "tests/examples/ArrowLayout.hs" 5 15 5 16
180                                                , srcInfoPoints = []
181                                                }
182                                              1
183                                              "1"))
184                                        (QVarOp
185                                           SrcSpanInfo
186                                             { srcInfoSpan =
187                                                 SrcSpan "tests/examples/ArrowLayout.hs" 5 17 5 18
188                                             , srcInfoPoints = []
189                                             }
190                                           (UnQual
191                                              SrcSpanInfo
192                                                { srcInfoSpan =
193                                                    SrcSpan
194                                                      "tests/examples/ArrowLayout.hs" 5 17 5 18
195                                                , srcInfoPoints = []
196                                                }
197                                              (Symbol
198                                                 SrcSpanInfo
199                                                   { srcInfoSpan =
200                                                       SrcSpan
201                                                         "tests/examples/ArrowLayout.hs" 5 17 5 18
202                                                   , srcInfoPoints = []
203                                                   }
204                                                 "+")))
205                                        (Var
206                                           SrcSpanInfo
207                                             { srcInfoSpan =
208                                                 SrcSpan "tests/examples/ArrowLayout.hs" 5 19 5 20
209                                             , srcInfoPoints = []
210                                             }
211                                           (UnQual
212                                              SrcSpanInfo
213                                                { srcInfoSpan =
214                                                    SrcSpan
215                                                      "tests/examples/ArrowLayout.hs" 5 19 5 20
216                                                , srcInfoPoints = []
217                                                }
218                                              (Ident
219                                                 SrcSpanInfo
220                                                   { srcInfoSpan =
221                                                       SrcSpan
222                                                         "tests/examples/ArrowLayout.hs" 5 19 5 20
223                                                   , srcInfoPoints = []
224                                                   }
225                                                 "i")))))
226                                  Nothing
227                              ])
228                       , Generator
229                           SrcSpanInfo
230                             { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 7 6 25
231                             , srcInfoPoints =
232                                 [ SrcSpan "tests/examples/ArrowLayout.hs" 6 9 6 11 ]
233                             }
234                           (PVar
235                              SrcSpanInfo
236                                { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 7 6 8
237                                , srcInfoPoints = []
238                                }
239                              (Ident
240                                 SrcSpanInfo
241                                   { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 7 6 8
242                                   , srcInfoPoints = []
243                                   }
244                                 "i"))
245                           (LeftArrApp
246                              SrcSpanInfo
247                                { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 12 6 25
248                                , srcInfoPoints =
249                                    [ SrcSpan "tests/examples/ArrowLayout.hs" 6 21 6 23 ]
250                                }
251                              (Var
252                                 SrcSpanInfo
253                                   { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 12 6 20
254                                   , srcInfoPoints = []
255                                   }
256                                 (UnQual
257                                    SrcSpanInfo
258                                      { srcInfoSpan =
259                                          SrcSpan "tests/examples/ArrowLayout.hs" 6 12 6 20
260                                      , srcInfoPoints = []
261                                      }
262                                    (Ident
263                                       SrcSpanInfo
264                                         { srcInfoSpan =
265                                             SrcSpan "tests/examples/ArrowLayout.hs" 6 12 6 20
266                                         , srcInfoPoints = []
267                                         }
268                                       "integral")))
269                              (Var
270                                 SrcSpanInfo
271                                   { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 24 6 25
272                                   , srcInfoPoints = []
273                                   }
274                                 (UnQual
275                                    SrcSpanInfo
276                                      { srcInfoSpan =
277                                          SrcSpan "tests/examples/ArrowLayout.hs" 6 24 6 25
278                                      , srcInfoPoints = []
279                                      }
280                                    (Ident
281                                       SrcSpanInfo
282                                         { srcInfoSpan =
283                                             SrcSpan "tests/examples/ArrowLayout.hs" 6 24 6 25
284                                         , srcInfoPoints = []
285                                         }
286                                       "e"))))
287                       ]
288                   , Qualifier
289                       SrcSpanInfo
290                         { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 15
291                         , srcInfoPoints =
292                             [ SrcSpan "tests/examples/ArrowLayout.hs" 7 11 7 13 ]
293                         }
294                       (LeftArrApp
295                          SrcSpanInfo
296                            { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 15
297                            , srcInfoPoints =
298                                [ SrcSpan "tests/examples/ArrowLayout.hs" 7 11 7 13 ]
299                            }
300                          (Var
301                             SrcSpanInfo
302                               { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 10
303                               , srcInfoPoints = []
304                               }
305                             (UnQual
306                                SrcSpanInfo
307                                  { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 10
308                                  , srcInfoPoints = []
309                                  }
310                                (Ident
311                                   SrcSpanInfo
312                                     { srcInfoSpan =
313                                         SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 10
314                                     , srcInfoPoints = []
315                                     }
316                                   "returnA")))
317                          (Var
318                             SrcSpanInfo
319                               { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 14 7 15
320                               , srcInfoPoints = []
321                               }
322                             (UnQual
323                                SrcSpanInfo
324                                  { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 14 7 15
325                                  , srcInfoPoints = []
326                                  }
327                                (Ident
328                                   SrcSpanInfo
329                                     { srcInfoSpan =
330                                         SrcSpan "tests/examples/ArrowLayout.hs" 7 14 7 15
331                                     , srcInfoPoints = []
332                                     }
333                                   "e"))))
334                   ])))
335          Nothing
336      ]
337  , []
338  )
339