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