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