1ParseOk
2  ( Module
3      SrcSpanInfo
4        { srcInfoSpan =
5            SrcSpan "tests/examples/GadtRecordFields.hs" 1 1 6 1
6        , srcInfoPoints =
7            [ SrcSpan "tests/examples/GadtRecordFields.hs" 1 1 1 1
8            , SrcSpan "tests/examples/GadtRecordFields.hs" 3 1 3 1
9            , SrcSpan "tests/examples/GadtRecordFields.hs" 3 1 3 1
10            , SrcSpan "tests/examples/GadtRecordFields.hs" 3 1 3 1
11            , SrcSpan "tests/examples/GadtRecordFields.hs" 6 1 6 1
12            , SrcSpan "tests/examples/GadtRecordFields.hs" 6 1 6 1
13            ]
14        }
15      Nothing
16      [ LanguagePragma
17          SrcSpanInfo
18            { srcInfoSpan =
19                SrcSpan "tests/examples/GadtRecordFields.hs" 1 1 1 23
20            , srcInfoPoints =
21                [ SrcSpan "tests/examples/GadtRecordFields.hs" 1 1 1 13
22                , SrcSpan "tests/examples/GadtRecordFields.hs" 1 20 1 23
23                ]
24            }
25          [ Ident
26              SrcSpanInfo
27                { srcInfoSpan =
28                    SrcSpan "tests/examples/GadtRecordFields.hs" 1 14 1 19
29                , srcInfoPoints = []
30                }
31              "GADTs"
32          ]
33      ]
34      []
35      [ GDataDecl
36          SrcSpanInfo
37            { srcInfoSpan =
38                SrcSpan "tests/examples/GadtRecordFields.hs" 3 1 6 0
39            , srcInfoPoints =
40                [ SrcSpan "tests/examples/GadtRecordFields.hs" 3 9 3 14
41                , SrcSpan "tests/examples/GadtRecordFields.hs" 4 3 4 3
42                , SrcSpan "tests/examples/GadtRecordFields.hs" 5 3 5 3
43                , SrcSpan "tests/examples/GadtRecordFields.hs" 6 1 6 0
44                ]
45            }
46          (DataType
47             SrcSpanInfo
48               { srcInfoSpan =
49                   SrcSpan "tests/examples/GadtRecordFields.hs" 3 1 3 5
50               , srcInfoPoints = []
51               })
52          Nothing
53          (DHead
54             SrcSpanInfo
55               { srcInfoSpan =
56                   SrcSpan "tests/examples/GadtRecordFields.hs" 3 6 3 8
57               , srcInfoPoints = []
58               }
59             (Ident
60                SrcSpanInfo
61                  { srcInfoSpan =
62                      SrcSpan "tests/examples/GadtRecordFields.hs" 3 6 3 8
63                  , srcInfoPoints = []
64                  }
65                "Ty"))
66          Nothing
67          [ GadtDecl
68              SrcSpanInfo
69                { srcInfoSpan =
70                    SrcSpan "tests/examples/GadtRecordFields.hs" 4 3 4 50
71                , srcInfoPoints =
72                    [ SrcSpan "tests/examples/GadtRecordFields.hs" 4 8 4 10
73                    , SrcSpan "tests/examples/GadtRecordFields.hs" 4 11 4 12
74                    , SrcSpan "tests/examples/GadtRecordFields.hs" 4 43 4 44
75                    , SrcSpan "tests/examples/GadtRecordFields.hs" 4 45 4 47
76                    , SrcSpan "tests/examples/GadtRecordFields.hs" 4 26 4 27
77                    ]
78                }
79              (Ident
80                 SrcSpanInfo
81                   { srcInfoSpan =
82                       SrcSpan "tests/examples/GadtRecordFields.hs" 4 3 4 7
83                   , srcInfoPoints = []
84                   }
85                 "TCon")
86              Nothing
87              Nothing
88              (Just
89                 [ FieldDecl
90                     SrcSpanInfo
91                       { srcInfoSpan =
92                           SrcSpan "tests/examples/GadtRecordFields.hs" 4 13 4 26
93                       , srcInfoPoints =
94                           [ SrcSpan "tests/examples/GadtRecordFields.hs" 4 20 4 22 ]
95                       }
96                     [ Ident
97                         SrcSpanInfo
98                           { srcInfoSpan =
99                               SrcSpan "tests/examples/GadtRecordFields.hs" 4 13 4 19
100                           , srcInfoPoints = []
101                           }
102                         "field1"
103                     ]
104                     (TyCon
105                        SrcSpanInfo
106                          { srcInfoSpan =
107                              SrcSpan "tests/examples/GadtRecordFields.hs" 4 23 4 26
108                          , srcInfoPoints = []
109                          }
110                        (UnQual
111                           SrcSpanInfo
112                             { srcInfoSpan =
113                                 SrcSpan "tests/examples/GadtRecordFields.hs" 4 23 4 26
114                             , srcInfoPoints = []
115                             }
116                           (Ident
117                              SrcSpanInfo
118                                { srcInfoSpan =
119                                    SrcSpan "tests/examples/GadtRecordFields.hs" 4 23 4 26
120                                , srcInfoPoints = []
121                                }
122                              "Int")))
123                 , FieldDecl
124                     SrcSpanInfo
125                       { srcInfoSpan =
126                           SrcSpan "tests/examples/GadtRecordFields.hs" 4 28 4 42
127                       , srcInfoPoints =
128                           [ SrcSpan "tests/examples/GadtRecordFields.hs" 4 35 4 37 ]
129                       }
130                     [ Ident
131                         SrcSpanInfo
132                           { srcInfoSpan =
133                               SrcSpan "tests/examples/GadtRecordFields.hs" 4 28 4 34
134                           , srcInfoPoints = []
135                           }
136                         "field2"
137                     ]
138                     (TyCon
139                        SrcSpanInfo
140                          { srcInfoSpan =
141                              SrcSpan "tests/examples/GadtRecordFields.hs" 4 38 4 42
142                          , srcInfoPoints = []
143                          }
144                        (UnQual
145                           SrcSpanInfo
146                             { srcInfoSpan =
147                                 SrcSpan "tests/examples/GadtRecordFields.hs" 4 38 4 42
148                             , srcInfoPoints = []
149                             }
150                           (Ident
151                              SrcSpanInfo
152                                { srcInfoSpan =
153                                    SrcSpan "tests/examples/GadtRecordFields.hs" 4 38 4 42
154                                , srcInfoPoints = []
155                                }
156                              "Bool")))
157                 ])
158              (TyCon
159                 SrcSpanInfo
160                   { srcInfoSpan =
161                       SrcSpan "tests/examples/GadtRecordFields.hs" 4 48 4 50
162                   , srcInfoPoints = []
163                   }
164                 (UnQual
165                    SrcSpanInfo
166                      { srcInfoSpan =
167                          SrcSpan "tests/examples/GadtRecordFields.hs" 4 48 4 50
168                      , srcInfoPoints = []
169                      }
170                    (Ident
171                       SrcSpanInfo
172                         { srcInfoSpan =
173                             SrcSpan "tests/examples/GadtRecordFields.hs" 4 48 4 50
174                         , srcInfoPoints = []
175                         }
176                       "Ty")))
177          , GadtDecl
178              SrcSpanInfo
179                { srcInfoSpan =
180                    SrcSpan "tests/examples/GadtRecordFields.hs" 5 3 5 14
181                , srcInfoPoints =
182                    [ SrcSpan "tests/examples/GadtRecordFields.hs" 5 9 5 11 ]
183                }
184              (Ident
185                 SrcSpanInfo
186                   { srcInfoSpan =
187                       SrcSpan "tests/examples/GadtRecordFields.hs" 5 3 5 8
188                   , srcInfoPoints = []
189                   }
190                 "TCon2")
191              Nothing
192              Nothing
193              Nothing
194              (TyCon
195                 SrcSpanInfo
196                   { srcInfoSpan =
197                       SrcSpan "tests/examples/GadtRecordFields.hs" 5 12 5 14
198                   , srcInfoPoints = []
199                   }
200                 (UnQual
201                    SrcSpanInfo
202                      { srcInfoSpan =
203                          SrcSpan "tests/examples/GadtRecordFields.hs" 5 12 5 14
204                      , srcInfoPoints = []
205                      }
206                    (Ident
207                       SrcSpanInfo
208                         { srcInfoSpan =
209                             SrcSpan "tests/examples/GadtRecordFields.hs" 5 12 5 14
210                         , srcInfoPoints = []
211                         }
212                       "Ty")))
213          ]
214          []
215      ]
216  , []
217  )
218