summaryrefslogtreecommitdiff
path: root/testdata/Builtins.out
diff options
context:
space:
mode:
Diffstat (limited to 'testdata/Builtins.out')
-rw-r--r--testdata/Builtins.out837
1 files changed, 432 insertions, 405 deletions
diff --git a/testdata/Builtins.out b/testdata/Builtins.out
index 8730e52a..6c11e155 100644
--- a/testdata/Builtins.out
+++ b/testdata/Builtins.out
@@ -89,31 +89,31 @@ data Mat :: Nat -> Nat -> Type -> Type where
89 a 89 a
90 (match'Mat (\_ -> _) (\_ _ (c :: _) -> _rhs c) a undefined)))) 90 (match'Mat (\_ -> _) (\_ _ (c :: _) -> _rhs c) a undefined))))
91 91
92'Signed :: Type -> Type 92'Signed :: Type -> Constraint
93'Signed 93'Signed
94 = \(a :: _) -> match'Int 94 = \(a :: _) -> match'Int
95 (\_ -> _) 95 (\_ -> _)
96 (_rhs 'Unit) 96 (_rhs 'CUnit)
97 a 97 a
98 (match'Float 98 (match'Float
99 (\_ -> _) 99 (\_ -> _)
100 (_rhs 'Unit) 100 (_rhs 'CUnit)
101 a 101 a
102 (_rhs ('Empty "no instance of 'Signed on ???"))) 102 (_rhs ('CEmpty "no instance of 'Signed on ???")))
103 103
104'Component :: Type -> Type 104'Component :: Type -> Constraint
105'Component 105'Component
106 = \(a :: _) -> match'Int 106 = \(a :: _) -> match'Int
107 (\_ -> _) 107 (\_ -> _)
108 (_rhs 'Unit) 108 (_rhs 'CUnit)
109 a 109 a
110 (match'Word 110 (match'Word
111 (\_ -> _) 111 (\_ -> _)
112 (_rhs 'Unit) 112 (_rhs 'CUnit)
113 a 113 a
114 (match'Float 114 (match'Float
115 (\_ -> _) 115 (\_ -> _)
116 (_rhs 'Unit) 116 (_rhs 'CUnit)
117 a 117 a
118 (match'VecS 118 (match'VecS
119 (\_ -> _) 119 (\_ -> _)
@@ -121,20 +121,20 @@ data Mat :: Nat -> Nat -> Type -> Type where
121 (\_ -> _) 121 (\_ -> _)
122 (case'Nat 122 (case'Nat
123 (\_ -> _) 123 (\_ -> _)
124 (_rhs ('Empty "no instance of 'Component on ???")) 124 (_rhs ('CEmpty "no instance of 'Component on ???"))
125 (\(d :: _) -> case'Nat 125 (\(d :: _) -> case'Nat
126 (\_ -> _) 126 (\_ -> _)
127 (_rhs ('Empty "no instance of 'Component on ???")) 127 (_rhs ('CEmpty "no instance of 'Component on ???"))
128 (\(e :: _) -> case'Nat 128 (\(e :: _) -> case'Nat
129 (\_ -> _) 129 (\_ -> _)
130 (_rhs 'Unit) 130 (_rhs 'CUnit)
131 (\(f :: _) -> case'Nat 131 (\(f :: _) -> case'Nat
132 (\_ -> _) 132 (\_ -> _)
133 (_rhs 'Unit) 133 (_rhs 'CUnit)
134 (\(g :: _) -> case'Nat 134 (\(g :: _) -> case'Nat
135 (\_ -> _) 135 (\_ -> _)
136 (_rhs 'Unit) 136 (_rhs 'CUnit)
137 (\_ -> _rhs ('Empty "no instance of 'Component on ???")) 137 (\_ -> _rhs ('CEmpty "no instance of 'Component on ???"))
138 g) 138 g)
139 f) 139 f)
140 e) 140 e)
@@ -145,35 +145,35 @@ data Mat :: Nat -> Nat -> Type -> Type where
145 (\_ -> _) 145 (\_ -> _)
146 (case'Nat 146 (case'Nat
147 (\_ -> _) 147 (\_ -> _)
148 (_rhs ('Empty "no instance of 'Component on ???")) 148 (_rhs ('CEmpty "no instance of 'Component on ???"))
149 (\(h :: _) -> case'Nat 149 (\(h :: _) -> case'Nat
150 (\_ -> _) 150 (\_ -> _)
151 (_rhs ('Empty "no instance of 'Component on ???")) 151 (_rhs ('CEmpty "no instance of 'Component on ???"))
152 (\(i :: _) -> case'Nat 152 (\(i :: _) -> case'Nat
153 (\_ -> _) 153 (\_ -> _)
154 (_rhs 'Unit) 154 (_rhs 'CUnit)
155 (\(j :: _) -> case'Nat 155 (\(j :: _) -> case'Nat
156 (\_ -> _) 156 (\_ -> _)
157 (_rhs 'Unit) 157 (_rhs 'CUnit)
158 (\(k :: _) -> case'Nat 158 (\(k :: _) -> case'Nat
159 (\_ -> _) 159 (\_ -> _)
160 (_rhs 'Unit) 160 (_rhs 'CUnit)
161 (\_ -> _rhs ('Empty "no instance of 'Component on ???")) 161 (\_ -> _rhs ('CEmpty "no instance of 'Component on ???"))
162 k) 162 k)
163 j) 163 j)
164 i) 164 i)
165 h) 165 h)
166 c) 166 c)
167 b 167 b
168 (_rhs ('Empty "no instance of 'Component on ???")))) 168 (_rhs ('CEmpty "no instance of 'Component on ???"))))
169 a 169 a
170 (match'Bool 170 (match'Bool
171 (\_ -> _) 171 (\_ -> _)
172 (_rhs 'Unit) 172 (_rhs 'CUnit)
173 a 173 a
174 (_rhs ('Empty "no instance of 'Component on ???")))))) 174 (_rhs ('CEmpty "no instance of 'Component on ???"))))))
175 175
176zero :: forall a . Component a => a 176zero :: forall a . CW (Component a) => a
177zero 177zero
178 = \ @a @_ -> match'Int 178 = \ @a @_ -> match'Int
179 (\_ -> _) 179 (\_ -> _)
@@ -241,7 +241,7 @@ zero
241 a 241 a
242 (match'Bool (\_ -> _) (_rhs let u = _rhs False in u) a (_rhs undefined))))) 242 (match'Bool (\_ -> _) (_rhs let u = _rhs False in u) a (_rhs undefined)))))
243 243
244one :: forall a . Component a => a 244one :: forall a . CW (Component a) => a
245one 245one
246 = \ @a @_ -> match'Int 246 = \ @a @_ -> match'Int
247 (\_ -> _) 247 (\_ -> _)
@@ -309,23 +309,23 @@ one
309 a 309 a
310 (match'Bool (\_ -> _) (_rhs let u = _rhs True in u) a (_rhs undefined))))) 310 (match'Bool (\_ -> _) (_rhs let u = _rhs True in u) a (_rhs undefined)))))
311 311
312'Integral :: Type -> Type 312'Integral :: Type -> Constraint
313'Integral 313'Integral
314 = \(a :: _) -> match'Int 314 = \(a :: _) -> match'Int
315 (\_ -> _) 315 (\_ -> _)
316 (_rhs 'Unit) 316 (_rhs 'CUnit)
317 a 317 a
318 (match'Word 318 (match'Word
319 (\_ -> _) 319 (\_ -> _)
320 (_rhs 'Unit) 320 (_rhs 'CUnit)
321 a 321 a
322 (_rhs ('Empty "no instance of 'Integral on ???"))) 322 (_rhs ('CEmpty "no instance of 'Integral on ???")))
323 323
324'Floating :: Type -> Type 324'Floating :: Type -> Constraint
325'Floating 325'Floating
326 = \(a :: _) -> match'Float 326 = \(a :: _) -> match'Float
327 (\_ -> _) 327 (\_ -> _)
328 (_rhs 'Unit) 328 (_rhs 'CUnit)
329 a 329 a
330 (match'VecS 330 (match'VecS
331 (\_ -> _) 331 (\_ -> _)
@@ -333,66 +333,66 @@ one
333 (\_ -> _) 333 (\_ -> _)
334 (case'Nat 334 (case'Nat
335 (\_ -> _) 335 (\_ -> _)
336 (_rhs ('Empty "no instance of 'Floating on ???")) 336 (_rhs ('CEmpty "no instance of 'Floating on ???"))
337 (\(d :: _) -> case'Nat 337 (\(d :: _) -> case'Nat
338 (\_ -> _) 338 (\_ -> _)
339 (_rhs ('Empty "no instance of 'Floating on ???")) 339 (_rhs ('CEmpty "no instance of 'Floating on ???"))
340 (\(e :: _) -> case'Nat 340 (\(e :: _) -> case'Nat
341 (\_ -> _) 341 (\_ -> _)
342 (_rhs 'Unit) 342 (_rhs 'CUnit)
343 (\(f :: _) -> case'Nat 343 (\(f :: _) -> case'Nat
344 (\_ -> _) 344 (\_ -> _)
345 (_rhs 'Unit) 345 (_rhs 'CUnit)
346 (\(g :: _) -> case'Nat 346 (\(g :: _) -> case'Nat
347 (\_ -> _) 347 (\_ -> _)
348 (_rhs 'Unit) 348 (_rhs 'CUnit)
349 (\_ -> _rhs ('Empty "no instance of 'Floating on ???")) 349 (\_ -> _rhs ('CEmpty "no instance of 'Floating on ???"))
350 g) 350 g)
351 f) 351 f)
352 e) 352 e)
353 d) 353 d)
354 c) 354 c)
355 b 355 b
356 (_rhs ('Empty "no instance of 'Floating on ???"))) 356 (_rhs ('CEmpty "no instance of 'Floating on ???")))
357 a 357 a
358 (match'Mat 358 (match'Mat
359 (\_ -> _) 359 (\_ -> _)
360 (\(h :: _) (i :: _) (j :: _) -> case'Nat 360 (\(h :: _) (i :: _) (j :: _) -> case'Nat
361 (\_ -> _) 361 (\_ -> _)
362 (_rhs ('Empty "no instance of 'Floating on ???")) 362 (_rhs ('CEmpty "no instance of 'Floating on ???"))
363 (\(k :: _) -> case'Nat 363 (\(k :: _) -> case'Nat
364 (\_ -> _) 364 (\_ -> _)
365 (_rhs ('Empty "no instance of 'Floating on ???")) 365 (_rhs ('CEmpty "no instance of 'Floating on ???"))
366 (\(l :: _) -> case'Nat 366 (\(l :: _) -> case'Nat
367 (\_ -> _) 367 (\_ -> _)
368 (case'Nat 368 (case'Nat
369 (\_ -> _) 369 (\_ -> _)
370 (_rhs ('Empty "no instance of 'Floating on ???")) 370 (_rhs ('CEmpty "no instance of 'Floating on ???"))
371 (\(m :: _) -> case'Nat 371 (\(m :: _) -> case'Nat
372 (\_ -> _) 372 (\_ -> _)
373 (_rhs ('Empty "no instance of 'Floating on ???")) 373 (_rhs ('CEmpty "no instance of 'Floating on ???"))
374 (\(n :: _) -> case'Nat 374 (\(n :: _) -> case'Nat
375 (\_ -> _) 375 (\_ -> _)
376 (match'Float 376 (match'Float
377 (\_ -> _) 377 (\_ -> _)
378 (_rhs 'Unit) 378 (_rhs 'CUnit)
379 j 379 j
380 (_rhs ('Empty "no instance of 'Floating on ???"))) 380 (_rhs ('CEmpty "no instance of 'Floating on ???")))
381 (\(o :: _) -> case'Nat 381 (\(o :: _) -> case'Nat
382 (\_ -> _) 382 (\_ -> _)
383 (match'Float 383 (match'Float
384 (\_ -> _) 384 (\_ -> _)
385 (_rhs 'Unit) 385 (_rhs 'CUnit)
386 j 386 j
387 (_rhs ('Empty "no instance of 'Floating on ???"))) 387 (_rhs ('CEmpty "no instance of 'Floating on ???")))
388 (\(p :: _) -> case'Nat 388 (\(p :: _) -> case'Nat
389 (\_ -> _) 389 (\_ -> _)
390 (match'Float 390 (match'Float
391 (\_ -> _) 391 (\_ -> _)
392 (_rhs 'Unit) 392 (_rhs 'CUnit)
393 j 393 j
394 (_rhs ('Empty "no instance of 'Floating on ???"))) 394 (_rhs ('CEmpty "no instance of 'Floating on ???")))
395 (\_ -> _rhs ('Empty "no instance of 'Floating on ???")) 395 (\_ -> _rhs ('CEmpty "no instance of 'Floating on ???"))
396 p) 396 p)
397 o) 397 o)
398 n) 398 n)
@@ -402,32 +402,32 @@ one
402 (\_ -> _) 402 (\_ -> _)
403 (case'Nat 403 (case'Nat
404 (\_ -> _) 404 (\_ -> _)
405 (_rhs ('Empty "no instance of 'Floating on ???")) 405 (_rhs ('CEmpty "no instance of 'Floating on ???"))
406 (\(r :: _) -> case'Nat 406 (\(r :: _) -> case'Nat
407 (\_ -> _) 407 (\_ -> _)
408 (_rhs ('Empty "no instance of 'Floating on ???")) 408 (_rhs ('CEmpty "no instance of 'Floating on ???"))
409 (\(s :: _) -> case'Nat 409 (\(s :: _) -> case'Nat
410 (\_ -> _) 410 (\_ -> _)
411 (match'Float 411 (match'Float
412 (\_ -> _) 412 (\_ -> _)
413 (_rhs 'Unit) 413 (_rhs 'CUnit)
414 j 414 j
415 (_rhs ('Empty "no instance of 'Floating on ???"))) 415 (_rhs ('CEmpty "no instance of 'Floating on ???")))
416 (\(t :: _) -> case'Nat 416 (\(t :: _) -> case'Nat
417 (\_ -> _) 417 (\_ -> _)
418 (match'Float 418 (match'Float
419 (\_ -> _) 419 (\_ -> _)
420 (_rhs 'Unit) 420 (_rhs 'CUnit)
421 j 421 j
422 (_rhs ('Empty "no instance of 'Floating on ???"))) 422 (_rhs ('CEmpty "no instance of 'Floating on ???")))
423 (\(u :: _) -> case'Nat 423 (\(u :: _) -> case'Nat
424 (\_ -> _) 424 (\_ -> _)
425 (match'Float 425 (match'Float
426 (\_ -> _) 426 (\_ -> _)
427 (_rhs 'Unit) 427 (_rhs 'CUnit)
428 j 428 j
429 (_rhs ('Empty "no instance of 'Floating on ???"))) 429 (_rhs ('CEmpty "no instance of 'Floating on ???")))
430 (\_ -> _rhs ('Empty "no instance of 'Floating on ???")) 430 (\_ -> _rhs ('CEmpty "no instance of 'Floating on ???"))
431 u) 431 u)
432 t) 432 t)
433 s) 433 s)
@@ -437,117 +437,127 @@ one
437 (\_ -> _) 437 (\_ -> _)
438 (case'Nat 438 (case'Nat
439 (\_ -> _) 439 (\_ -> _)
440 (_rhs ('Empty "no instance of 'Floating on ???")) 440 (_rhs ('CEmpty "no instance of 'Floating on ???"))
441 (\(w :: _) -> case'Nat 441 (\(w :: _) -> case'Nat
442 (\_ -> _) 442 (\_ -> _)
443 (_rhs ('Empty "no instance of 'Floating on ???")) 443 (_rhs ('CEmpty "no instance of 'Floating on ???"))
444 (\(x :: _) -> case'Nat 444 (\(x :: _) -> case'Nat
445 (\_ -> _) 445 (\_ -> _)
446 (match'Float 446 (match'Float
447 (\_ -> _) 447 (\_ -> _)
448 (_rhs 'Unit) 448 (_rhs 'CUnit)
449 j 449 j
450 (_rhs ('Empty "no instance of 'Floating on ???"))) 450 (_rhs ('CEmpty "no instance of 'Floating on ???")))
451 (\(y :: _) -> case'Nat 451 (\(y :: _) -> case'Nat
452 (\_ -> _) 452 (\_ -> _)
453 (match'Float 453 (match'Float
454 (\_ -> _) 454 (\_ -> _)
455 (_rhs 'Unit) 455 (_rhs 'CUnit)
456 j 456 j
457 (_rhs ('Empty "no instance of 'Floating on ???"))) 457 (_rhs ('CEmpty "no instance of 'Floating on ???")))
458 (\(z :: _) -> case'Nat 458 (\(z :: _) -> case'Nat
459 (\_ -> _) 459 (\_ -> _)
460 (match'Float 460 (match'Float
461 (\_ -> _) 461 (\_ -> _)
462 (_rhs 'Unit) 462 (_rhs 'CUnit)
463 j 463 j
464 (_rhs ('Empty "no instance of 'Floating on ???"))) 464 (_rhs ('CEmpty "no instance of 'Floating on ???")))
465 (\_ -> _rhs ('Empty "no instance of 'Floating on ???")) 465 (\_ -> _rhs ('CEmpty "no instance of 'Floating on ???"))
466 z) 466 z)
467 y) 467 y)
468 x) 468 x)
469 w) 469 w)
470 i) 470 i)
471 (\_ -> _rhs ('Empty "no instance of 'Floating on ???")) 471 (\_ -> _rhs ('CEmpty "no instance of 'Floating on ???"))
472 v) 472 v)
473 q) 473 q)
474 l) 474 l)
475 k) 475 k)
476 h) 476 h)
477 a 477 a
478 (_rhs ('Empty "no instance of 'Floating on ???")))) 478 (_rhs ('CEmpty "no instance of 'Floating on ???"))))
479 479
480PrimAdd :: forall (a :: _) . Num (MatVecScalarElem a) => a -> a -> a 480PrimAdd :: forall (a :: _) . CW (Num (MatVecScalarElem a)) => a -> a -> a
481 481
482PrimSub :: forall (a :: _) . Num (MatVecScalarElem a) => a -> a -> a 482PrimSub :: forall (a :: _) . CW (Num (MatVecScalarElem a)) => a -> a -> a
483 483
484PrimMul :: forall (a :: _) . Num (MatVecScalarElem a) => a -> a -> a 484PrimMul :: forall (a :: _) . CW (Num (MatVecScalarElem a)) => a -> a -> a
485 485
486PrimAddS 486PrimAddS
487 :: forall (a :: _) (b :: _) . (a ~ MatVecScalarElem b, Num a) => b -> a -> b 487 :: forall (a :: _) (b :: _)
488 . (CW (a ~ MatVecScalarElem b), CW (Num a)) => b -> a -> b
488 489
489PrimSubS 490PrimSubS
490 :: forall (a :: _) (b :: _) . (a ~ MatVecScalarElem b, Num a) => b -> a -> b 491 :: forall (a :: _) (b :: _)
492 . (CW (a ~ MatVecScalarElem b), CW (Num a)) => b -> a -> b
491 493
492PrimMulS 494PrimMulS
493 :: forall (a :: _) (b :: _) . (a ~ MatVecScalarElem b, Num a) => b -> a -> b 495 :: forall (a :: _) (b :: _)
496 . (CW (a ~ MatVecScalarElem b), CW (Num a)) => b -> a -> b
494 497
495PrimDiv 498PrimDiv
496 :: forall (a :: _) (b :: _) (c :: _) . (Num a, b ~ VecScalar c a) => b -> b -> b 499 :: forall (a :: _) (b :: _) (c :: _)
500 . (CW (Num a), CW (b ~ VecScalar c a)) => b -> b -> b
497 501
498PrimMod 502PrimMod
499 :: forall (a :: _) (b :: _) (c :: _) . (Num a, b ~ VecScalar c a) => b -> b -> b 503 :: forall (a :: _) (b :: _) (c :: _)
504 . (CW (Num a), CW (b ~ VecScalar c a)) => b -> b -> b
500 505
501PrimDivS 506PrimDivS
502 :: forall (a :: _) (b :: _) (c :: _) . (Num a, b ~ VecScalar c a) => b -> a -> b 507 :: forall (a :: _) (b :: _) (c :: _)
508 . (CW (Num a), CW (b ~ VecScalar c a)) => b -> a -> b
503 509
504PrimModS 510PrimModS
505 :: forall (a :: _) (b :: _) (c :: _) . (Num a, b ~ VecScalar c a) => b -> a -> b 511 :: forall (a :: _) (b :: _) (c :: _)
512 . (CW (Num a), CW (b ~ VecScalar c a)) => b -> a -> b
506 513
507PrimNeg :: forall (a :: _) . Signed (MatVecScalarElem a) => a -> a 514PrimNeg :: forall (a :: _) . CW (Signed (MatVecScalarElem a)) => a -> a
508 515
509PrimBAnd 516PrimBAnd
510 :: forall (a :: _) (b :: _) (c :: _) 517 :: forall (a :: _) (b :: _) (c :: _)
511 . (Integral a, b ~ VecScalar c a) => b -> b -> b 518 . (CW (Integral a), CW (b ~ VecScalar c a)) => b -> b -> b
512 519
513PrimBOr 520PrimBOr
514 :: forall (a :: _) (b :: _) (c :: _) 521 :: forall (a :: _) (b :: _) (c :: _)
515 . (Integral a, b ~ VecScalar c a) => b -> b -> b 522 . (CW (Integral a), CW (b ~ VecScalar c a)) => b -> b -> b
516 523
517PrimBXor 524PrimBXor
518 :: forall (a :: _) (b :: _) (c :: _) 525 :: forall (a :: _) (b :: _) (c :: _)
519 . (Integral a, b ~ VecScalar c a) => b -> b -> b 526 . (CW (Integral a), CW (b ~ VecScalar c a)) => b -> b -> b
520 527
521PrimBAndS 528PrimBAndS
522 :: forall (a :: _) (b :: _) (c :: _) 529 :: forall (a :: _) (b :: _) (c :: _)
523 . (Integral a, b ~ VecScalar c a) => b -> a -> b 530 . (CW (Integral a), CW (b ~ VecScalar c a)) => b -> a -> b
524 531
525PrimBOrS 532PrimBOrS
526 :: forall (a :: _) (b :: _) (c :: _) 533 :: forall (a :: _) (b :: _) (c :: _)
527 . (Integral a, b ~ VecScalar c a) => b -> a -> b 534 . (CW (Integral a), CW (b ~ VecScalar c a)) => b -> a -> b
528 535
529PrimBXorS 536PrimBXorS
530 :: forall (a :: _) (b :: _) (c :: _) 537 :: forall (a :: _) (b :: _) (c :: _)
531 . (Integral a, b ~ VecScalar c a) => b -> a -> b 538 . (CW (Integral a), CW (b ~ VecScalar c a)) => b -> a -> b
532 539
533PrimBNot 540PrimBNot
534 :: forall (a :: _) (b :: _) (c :: _) . (Integral a, b ~ VecScalar c a) => b -> b 541 :: forall (a :: _) (b :: _) (c :: _)
542 . (CW (Integral a), CW (b ~ VecScalar c a)) => b -> b
535 543
536PrimBShiftL 544PrimBShiftL
537 :: forall (a :: _) (b :: _) (c :: _) (d :: _) 545 :: forall (a :: _) (b :: _) (c :: _) (d :: _)
538 . (Integral a, b ~ VecScalar c a, d ~ VecScalar c Word) => b -> d -> b 546 . (CW (Integral a), CW (b ~ VecScalar c a), CW (d ~ VecScalar c Word))
547 => b -> d -> b
539 548
540PrimBShiftR 549PrimBShiftR
541 :: forall (a :: _) (b :: _) (c :: _) (d :: _) 550 :: forall (a :: _) (b :: _) (c :: _) (d :: _)
542 . (Integral a, b ~ VecScalar c a, d ~ VecScalar c Word) => b -> d -> b 551 . (CW (Integral a), CW (b ~ VecScalar c a), CW (d ~ VecScalar c Word))
552 => b -> d -> b
543 553
544PrimBShiftLS 554PrimBShiftLS
545 :: forall (a :: _) (b :: _) (c :: _) 555 :: forall (a :: _) (b :: _) (c :: _)
546 . (Integral a, b ~ VecScalar c a) => b -> Word -> b 556 . (CW (Integral a), CW (b ~ VecScalar c a)) => b -> Word -> b
547 557
548PrimBShiftRS 558PrimBShiftRS
549 :: forall (a :: _) (b :: _) (c :: _) 559 :: forall (a :: _) (b :: _) (c :: _)
550 . (Integral a, b ~ VecScalar c a) => b -> Word -> b 560 . (CW (Integral a), CW (b ~ VecScalar c a)) => b -> Word -> b
551 561
552PrimAnd :: Bool -> Bool -> Bool 562PrimAnd :: Bool -> Bool -> Bool
553 563
@@ -555,127 +565,134 @@ PrimOr :: Bool -> Bool -> Bool
555 565
556PrimXor :: Bool -> Bool -> Bool 566PrimXor :: Bool -> Bool -> Bool
557 567
558PrimNot :: forall (a :: _) (b :: _) . (a ~ VecScalar b Bool) => a -> a 568PrimNot :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Bool) => a -> a
559 569
560PrimAny :: forall (a :: _) . VecScalar a Bool -> Bool 570PrimAny :: forall (a :: _) . VecScalar a Bool -> Bool
561 571
562PrimAll :: forall (a :: _) . VecScalar a Bool -> Bool 572PrimAll :: forall (a :: _) . VecScalar a Bool -> Bool
563 573
564PrimACos :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 574PrimACos :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
565 575
566PrimACosH :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 576PrimACosH :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
567 577
568PrimASin :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 578PrimASin :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
569 579
570PrimASinH :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 580PrimASinH :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
571 581
572PrimATan :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 582PrimATan :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
573 583
574PrimATanH :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 584PrimATanH :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
575 585
576PrimCos :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 586PrimCos :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
577 587
578PrimCosH :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 588PrimCosH :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
579 589
580PrimDegrees :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 590PrimDegrees :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
581 591
582PrimRadians :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 592PrimRadians :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
583 593
584PrimSin :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 594PrimSin :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
585 595
586PrimSinH :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 596PrimSinH :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
587 597
588PrimTan :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 598PrimTan :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
589 599
590PrimTanH :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 600PrimTanH :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
591 601
592PrimExp :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 602PrimExp :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
593 603
594PrimLog :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 604PrimLog :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
595 605
596PrimExp2 :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 606PrimExp2 :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
597 607
598PrimLog2 :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 608PrimLog2 :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
599 609
600PrimSqrt :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 610PrimSqrt :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
601 611
602PrimInvSqrt :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 612PrimInvSqrt :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
603 613
604PrimPow :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a -> a 614PrimPow :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a -> a
605 615
606PrimATan2 :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a -> a 616PrimATan2
617 :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a -> a
607 618
608PrimFloor :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 619PrimFloor :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
609 620
610PrimTrunc :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 621PrimTrunc :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
611 622
612PrimRound :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 623PrimRound :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
613 624
614PrimRoundEven :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 625PrimRoundEven :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
615 626
616PrimCeil :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 627PrimCeil :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
617 628
618PrimFract :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 629PrimFract :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
619 630
620PrimMin 631PrimMin
621 :: forall (a :: _) (b :: _) (c :: _) . (Num a, b ~ VecScalar c a) => b -> b -> b 632 :: forall (a :: _) (b :: _) (c :: _)
633 . (CW (Num a), CW (b ~ VecScalar c a)) => b -> b -> b
622 634
623PrimMax 635PrimMax
624 :: forall (a :: _) (b :: _) (c :: _) . (Num a, b ~ VecScalar c a) => b -> b -> b 636 :: forall (a :: _) (b :: _) (c :: _)
637 . (CW (Num a), CW (b ~ VecScalar c a)) => b -> b -> b
625 638
626PrimMinS 639PrimMinS
627 :: forall (a :: _) (b :: _) (c :: _) . (Num a, b ~ VecScalar c a) => b -> a -> b 640 :: forall (a :: _) (b :: _) (c :: _)
641 . (CW (Num a), CW (b ~ VecScalar c a)) => b -> a -> b
628 642
629PrimMaxS 643PrimMaxS
630 :: forall (a :: _) (b :: _) (c :: _) . (Num a, b ~ VecScalar c a) => b -> a -> b 644 :: forall (a :: _) (b :: _) (c :: _)
645 . (CW (Num a), CW (b ~ VecScalar c a)) => b -> a -> b
631 646
632PrimIsNan 647PrimIsNan
633 :: forall (a :: _) (b :: _) (c :: _) 648 :: forall (a :: _) (b :: _) (c :: _)
634 . (a ~ VecScalar b Float, c ~ VecScalar b Bool) => a -> c 649 . (CW (a ~ VecScalar b Float), CW (c ~ VecScalar b Bool)) => a -> c
635 650
636PrimIsInf 651PrimIsInf
637 :: forall (a :: _) (b :: _) (c :: _) 652 :: forall (a :: _) (b :: _) (c :: _)
638 . (a ~ VecScalar b Float, c ~ VecScalar b Bool) => a -> c 653 . (CW (a ~ VecScalar b Float), CW (c ~ VecScalar b Bool)) => a -> c
639 654
640PrimAbs 655PrimAbs
641 :: forall (a :: _) (b :: _) (c :: _) . (Signed a, b ~ VecScalar c a) => b -> b 656 :: forall (a :: _) (b :: _) (c :: _)
657 . (CW (Signed a), CW (b ~ VecScalar c a)) => b -> b
642 658
643PrimSign 659PrimSign
644 :: forall (a :: _) (b :: _) (c :: _) . (Signed a, b ~ VecScalar c a) => b -> b 660 :: forall (a :: _) (b :: _) (c :: _)
661 . (CW (Signed a), CW (b ~ VecScalar c a)) => b -> b
645 662
646PrimModF 663PrimModF
647 :: forall (a :: _) (b :: _) 664 :: forall (a :: _) (b :: _)
648 . (a ~ VecScalar b Float) => a -> HList (a : a : '[]) 665 . CW (a ~ VecScalar b Float) => a -> HList (a : a : '[])
649 666
650PrimClamp 667PrimClamp
651 :: forall (a :: _) (b :: _) (c :: _) 668 :: forall (a :: _) (b :: _) (c :: _)
652 . (Num a, b ~ VecScalar c a) => b -> b -> b -> b 669 . (CW (Num a), CW (b ~ VecScalar c a)) => b -> b -> b -> b
653 670
654PrimClampS 671PrimClampS
655 :: forall (a :: _) (b :: _) (c :: _) 672 :: forall (a :: _) (b :: _) (c :: _)
656 . (Num a, b ~ VecScalar c a) => b -> a -> a -> b 673 . (CW (Num a), CW (b ~ VecScalar c a)) => b -> a -> a -> b
657 674
658PrimMix 675PrimMix
659 :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a -> a -> a 676 :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a -> a -> a
660 677
661PrimMixS 678PrimMixS
662 :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a -> Float -> a 679 :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a -> Float -> a
663 680
664PrimMixB 681PrimMixB
665 :: forall (a :: _) (b :: _) (c :: _) 682 :: forall (a :: _) (b :: _) (c :: _)
666 . (a ~ VecScalar b Float, c ~ VecScalar b Bool) => a -> a -> c -> a 683 . (CW (a ~ VecScalar b Float), CW (c ~ VecScalar b Bool)) => a -> a -> c -> a
667 684
668PrimStep :: forall (a :: _) (b :: _) . (a ~ Vec b Float) => a -> a -> a 685PrimStep :: forall (a :: _) (b :: _) . CW (a ~ Vec b Float) => a -> a -> a
669 686
670PrimStepS 687PrimStepS
671 :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => Float -> a -> a 688 :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => Float -> a -> a
672 689
673PrimSmoothStep 690PrimSmoothStep
674 :: forall (a :: _) (b :: _) . (a ~ Vec b Float) => a -> a -> a -> a 691 :: forall (a :: _) (b :: _) . CW (a ~ Vec b Float) => a -> a -> a -> a
675 692
676PrimSmoothStepS 693PrimSmoothStepS
677 :: forall (a :: _) (b :: _) 694 :: forall (a :: _) (b :: _)
678 . (a ~ VecScalar b Float) => Float -> Float -> a -> a 695 . CW (a ~ VecScalar b Float) => Float -> Float -> a -> a
679 696
680PrimFloatBitsToInt :: forall (a :: _) . VecScalar a Float -> VecScalar a Int 697PrimFloatBitsToInt :: forall (a :: _) . VecScalar a Float -> VecScalar a Int
681 698
@@ -685,24 +702,28 @@ PrimIntBitsToFloat :: forall (a :: _) . VecScalar a Int -> VecScalar a Float
685 702
686PrimUIntBitsToFloat :: forall (a :: _) . VecScalar a Word -> VecScalar a Float 703PrimUIntBitsToFloat :: forall (a :: _) . VecScalar a Word -> VecScalar a Float
687 704
688PrimLength :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> Float 705PrimLength
706 :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> Float
689 707
690PrimDistance 708PrimDistance
691 :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a -> Float 709 :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a -> Float
692 710
693PrimDot :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a -> Float 711PrimDot
712 :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a -> Float
694 713
695PrimCross :: forall (a :: _) . (a ~ VecScalar (fromInt 3) Float) => a -> a -> a 714PrimCross
715 :: forall (a :: _) . CW (a ~ VecScalar (fromInt 3) Float) => a -> a -> a
696 716
697PrimNormalize :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 717PrimNormalize :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
698 718
699PrimFaceForward 719PrimFaceForward
700 :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a -> a -> a 720 :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a -> a -> a
701 721
702PrimRefract 722PrimRefract
703 :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a -> a -> a 723 :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a -> a -> a
704 724
705PrimReflect :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a -> a 725PrimReflect
726 :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a -> a
706 727
707PrimTranspose :: forall (a :: _) (b :: _) (c :: _) . Mat a b c -> Mat b a c 728PrimTranspose :: forall (a :: _) (b :: _) (c :: _) . Mat a b c -> Mat b a c
708 729
@@ -725,39 +746,39 @@ PrimMulMatMat
725 746
726PrimLessThan 747PrimLessThan
727 :: forall (a :: _) (b :: _) (c :: _) (d :: _) 748 :: forall (a :: _) (b :: _) (c :: _) (d :: _)
728 . (Num c, a ~ VecScalar b c, d ~ VecScalar b Bool) => a -> a -> d 749 . (CW (Num c), CW (a ~ VecScalar b c), CW (d ~ VecScalar b Bool)) => a -> a -> d
729 750
730PrimLessThanEqual 751PrimLessThanEqual
731 :: forall (a :: _) (b :: _) (c :: _) (d :: _) 752 :: forall (a :: _) (b :: _) (c :: _) (d :: _)
732 . (Num c, a ~ VecScalar b c, d ~ VecScalar b Bool) => a -> a -> d 753 . (CW (Num c), CW (a ~ VecScalar b c), CW (d ~ VecScalar b Bool)) => a -> a -> d
733 754
734PrimGreaterThan 755PrimGreaterThan
735 :: forall (a :: _) (b :: _) (c :: _) (d :: _) 756 :: forall (a :: _) (b :: _) (c :: _) (d :: _)
736 . (Num c, a ~ VecScalar b c, d ~ VecScalar b Bool) => a -> a -> d 757 . (CW (Num c), CW (a ~ VecScalar b c), CW (d ~ VecScalar b Bool)) => a -> a -> d
737 758
738PrimGreaterThanEqual 759PrimGreaterThanEqual
739 :: forall (a :: _) (b :: _) (c :: _) (d :: _) 760 :: forall (a :: _) (b :: _) (c :: _) (d :: _)
740 . (Num c, a ~ VecScalar b c, d ~ VecScalar b Bool) => a -> a -> d 761 . (CW (Num c), CW (a ~ VecScalar b c), CW (d ~ VecScalar b Bool)) => a -> a -> d
741 762
742PrimEqualV 763PrimEqualV
743 :: forall (a :: _) (b :: _) (c :: _) (d :: _) 764 :: forall (a :: _) (b :: _) (c :: _) (d :: _)
744 . (Num c, a ~ VecScalar b c, d ~ VecScalar b Bool) => a -> a -> d 765 . (CW (Num c), CW (a ~ VecScalar b c), CW (d ~ VecScalar b Bool)) => a -> a -> d
745 766
746PrimNotEqualV 767PrimNotEqualV
747 :: forall (a :: _) (b :: _) (c :: _) (d :: _) 768 :: forall (a :: _) (b :: _) (c :: _) (d :: _)
748 . (Num c, a ~ VecScalar b c, d ~ VecScalar b Bool) => a -> a -> d 769 . (CW (Num c), CW (a ~ VecScalar b c), CW (d ~ VecScalar b Bool)) => a -> a -> d
749 770
750PrimEqual 771PrimEqual
751 :: forall (a :: _) (b :: _) . (b ~ MatVecScalarElem a) => a -> a -> Bool 772 :: forall (a :: _) (b :: _) . CW (b ~ MatVecScalarElem a) => a -> a -> Bool
752 773
753PrimNotEqual 774PrimNotEqual
754 :: forall (a :: _) (b :: _) . (b ~ MatVecScalarElem a) => a -> a -> Bool 775 :: forall (a :: _) (b :: _) . CW (b ~ MatVecScalarElem a) => a -> a -> Bool
755 776
756PrimDFdx :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 777PrimDFdx :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
757 778
758PrimDFdy :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 779PrimDFdy :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
759 780
760PrimFWidth :: forall (a :: _) (b :: _) . (a ~ VecScalar b Float) => a -> a 781PrimFWidth :: forall (a :: _) (b :: _) . CW (a ~ VecScalar b Float) => a -> a
761 782
762PrimNoise1 :: forall (a :: _) . VecScalar a Float -> Float 783PrimNoise1 :: forall (a :: _) . VecScalar a Float -> Float
763 784
@@ -838,7 +859,7 @@ mapPrimitives = \(a :: _) -> _rhs (map (mapPrimitive a))
838 859
839fetchArrays 860fetchArrays
840 :: forall (a :: _) (b :: _) (c :: _) 861 :: forall (a :: _) (b :: _) (c :: _)
841 . (b ~ map ListElem c) => HList c -> PrimitiveStream a (HList b) 862 . CW (b ~ map ListElem c) => HList c -> PrimitiveStream a (HList b)
842 863
843fetch 864fetch
844 :: forall (a :: _) (b :: _) . String -> HList b -> PrimitiveStream a (HList b) 865 :: forall (a :: _) (b :: _) . String -> HList b -> PrimitiveStream a (HList b)
@@ -848,7 +869,7 @@ Attribute :: forall (a :: _) . String -> a
848fetchStream 869fetchStream
849 :: forall (a :: _) (b :: [Type]) 870 :: forall (a :: _) (b :: [Type])
850 . String 871 . String
851 -> forall (c :: [String]) -> (len c ~ len b) => PrimitiveStream a (HList b) 872 -> forall (c :: [String]) -> CW (len c ~ len b) => PrimitiveStream a (HList b)
852 873
853data SimpleFragment (_ :: Type) :: Type where 874data SimpleFragment (_ :: Type) :: Type where
854 SimpleFragment :: forall a . Vec (fromInt 3) Float -> a -> SimpleFragment a 875 SimpleFragment :: forall a . Vec (fromInt 3) Float -> a -> SimpleFragment a
@@ -906,7 +927,7 @@ data Image (_ :: Nat) (_ :: ImageKind) :: Type where
906 927
907ColorImage 928ColorImage
908 :: forall (a :: _) (b :: _) (c :: _) (d :: _) 929 :: forall (a :: _) (b :: _) (c :: _) (d :: _)
909 . (Num c, d ~ VecScalar b c) => d -> Image a (Color d) 930 . (CW (Num c), CW (d ~ VecScalar b c)) => d -> Image a (Color d)
910 931
911DepthImage :: forall (a :: _) . Float -> Image a Depth 932DepthImage :: forall (a :: _) . Float -> Image a Depth
912 933
@@ -1071,7 +1092,8 @@ data RasterContext (_ :: Type) :: PrimitiveType -> Type where
1071 1092
1072data Blending :: Type -> Type where 1093data Blending :: Type -> Type where
1073 NoBlending :: forall (a :: _) . Blending a 1094 NoBlending :: forall (a :: _) . Blending a
1074 BlendLogicOp :: forall (b :: _) . Integral b => LogicOperation -> Blending b 1095 BlendLogicOp
1096 :: forall (b :: _) . CW (Integral b) => LogicOperation -> Blending b
1075 Blend 1097 Blend
1076 :: HList (BlendEquation : BlendEquation : '[]) 1098 :: HList (BlendEquation : BlendEquation : '[])
1077 -> HList 1099 -> HList
@@ -1088,20 +1110,20 @@ data StencilOps :: Type where
1088data FragmentOperation :: ImageKind -> Type where 1110data FragmentOperation :: ImageKind -> Type where
1089 ColorOp 1111 ColorOp
1090 :: forall (a :: _) (b :: _) 1112 :: forall (a :: _) (b :: _)
1091 . Num a 1113 . CW (Num a)
1092 => Blending a -> VecScalar b Bool -> FragmentOperation (Color (VecScalar b a)) 1114 => Blending a -> VecScalar b Bool -> FragmentOperation (Color (VecScalar b a))
1093 DepthOp :: ComparisonFunction -> Bool -> FragmentOperation Depth 1115 DepthOp :: ComparisonFunction -> Bool -> FragmentOperation Depth
1094 StencilOp 1116 StencilOp
1095 :: StencilTests -> StencilOps -> StencilOps -> FragmentOperation Stencil 1117 :: StencilTests -> StencilOps -> StencilOps -> FragmentOperation Stencil
1096 1118
1097data Interpolated (_ :: Type) :: Type where 1119data Interpolated (_ :: Type) :: Type where
1098 Smooth :: forall a . Floating a => Interpolated a 1120 Smooth :: forall a . CW (Floating a) => Interpolated a
1099 NoPerspective :: forall b . Floating b => Interpolated b 1121 NoPerspective :: forall b . CW (Floating b) => Interpolated b
1100 Flat :: forall c . Interpolated c 1122 Flat :: forall c . Interpolated c
1101 1123
1102rasterizePrimitive 1124rasterizePrimitive
1103 :: forall (a :: _) (b :: _) (c :: _) (d :: _) 1125 :: forall (a :: _) (b :: _) (c :: _) (d :: _)
1104 . (map Interpolated a ~ b, c ~ Vec (fromInt 4) Float : a) 1126 . (CW (map Interpolated a ~ b), CW (c ~ Vec (fromInt 4) Float : a))
1105 => HList b 1127 => HList b
1106 -> RasterContext (HList c) d 1128 -> RasterContext (HList c) d
1107 -> Primitive (HList c) d -> FragmentStream (fromInt 1) (HList a) 1129 -> Primitive (HList c) d -> FragmentStream (fromInt 1) (HList a)
@@ -1113,14 +1135,14 @@ rasterizePrimitives
1113'ImageLC 1135'ImageLC
1114 = \(a :: _) -> match'Image (\_ -> _) (\(b :: _) _ -> _rhs b) a undefined 1136 = \(a :: _) -> match'Image (\_ -> _) (\(b :: _) _ -> _rhs b) a undefined
1115 1137
1116allSame :: forall (a :: _) . [a] -> Type 1138allSame :: forall (a :: _) . [a] -> Constraint
1117allSame 1139allSame
1118 = \(a :: _) -> case'List 1140 = \(a :: _) -> case'List
1119 (\_ -> _) 1141 (\_ -> _)
1120 (_rhs 'Unit) 1142 (_rhs 'CUnit)
1121 (\(b :: _) (c :: _) -> case'List 1143 (\(b :: _) (c :: _) -> case'List
1122 (\_ -> _) 1144 (\_ -> _)
1123 (_rhs 'Unit) 1145 (_rhs 'CUnit)
1124 (\(d :: _) (e :: _) -> _rhs ('T2 (b `'EqCTt` d) (allSame (d : e)))) 1146 (\(d :: _) (e :: _) -> _rhs ('T2 (b `'EqCTt` d) (allSame (d : e))))
1125 c) 1147 c)
1126 a 1148 a
@@ -1153,7 +1175,7 @@ imageType'
1153 1175
1154Accumulate 1176Accumulate
1155 :: forall (a :: _) (b :: Nat) (c :: [Type]) 1177 :: forall (a :: _) (b :: Nat) (c :: [Type])
1156 . (a ~ map FragmentOperationKind c) 1178 . CW (a ~ map FragmentOperationKind c)
1157 => HList c 1179 => HList c
1158 -> FragmentStream b (HList (imageType' a)) -> FrameBuffer b a -> FrameBuffer b a 1180 -> FragmentStream b (HList (imageType' a)) -> FrameBuffer b a -> FrameBuffer b a
1159 1181
@@ -1176,7 +1198,7 @@ infixl 0 overlay
1176 1198
1177FrameBuffer 1199FrameBuffer
1178 :: forall (a :: [Type]) 1200 :: forall (a :: [Type])
1179 . sameLayerCounts a 1201 . CW (sameLayerCounts a)
1180 => HList a -> FrameBuffer (ImageLC (head a)) (map GetImageKind a) 1202 => HList a -> FrameBuffer (ImageLC (head a)) (map GetImageKind a)
1181 1203
1182imageFrame = _rhs FrameBuffer 1204imageFrame = _rhs FrameBuffer
@@ -1276,12 +1298,12 @@ match'Mat
1276 :: forall (a :: Type -> Type) 1298 :: forall (a :: Type -> Type)
1277 -> (forall (b :: Nat) (c :: Nat) d -> a (Mat b c d)) -> forall e -> a e -> a e 1299 -> (forall (b :: Nat) (c :: Nat) d -> a (Mat b c d)) -> forall e -> a e -> a e
1278'MatVecScalarElem :: Type -> Type 1300'MatVecScalarElem :: Type -> Type
1279'Signed :: Type -> Type 1301'Signed :: Type -> Constraint
1280'Component :: Type -> Type 1302'Component :: Type -> Constraint
1281zero :: forall a . Component a => a 1303zero :: forall a . Component a => a
1282one :: forall a . Component a => a 1304one :: forall a . Component a => a
1283'Integral :: Type -> Type 1305'Integral :: Type -> Constraint
1284'Floating :: Type -> Type 1306'Floating :: Type -> Constraint
1285PrimAdd :: forall a . Num (MatVecScalarElem a) => a -> a -> a 1307PrimAdd :: forall a . Num (MatVecScalarElem a) => a -> a -> a
1286PrimSub :: forall a . Num (MatVecScalarElem a) => a -> a -> a 1308PrimSub :: forall a . Num (MatVecScalarElem a) => a -> a -> a
1287PrimMul :: forall a . Num (MatVecScalarElem a) => a -> a -> a 1309PrimMul :: forall a . Num (MatVecScalarElem a) => a -> a -> a
@@ -1801,7 +1823,7 @@ Blend
1801case'Blending 1823case'Blending
1802 :: forall (a :: forall b -> Blending b -> Type) 1824 :: forall (a :: forall b -> Blending b -> Type)
1803 -> (forall c . a c ('NoBlending c)) 1825 -> (forall c . a c ('NoBlending c))
1804 -> (forall d (e :: Integral d) 1826 -> (forall d (e :: CW (Integral d))
1805 . forall (f :: LogicOperation) -> a d ('BlendLogicOp d e f)) 1827 . forall (f :: LogicOperation) -> a d ('BlendLogicOp d e f))
1806 -> (forall (g :: (BlendEquation, BlendEquation)) 1828 -> (forall (g :: (BlendEquation, BlendEquation))
1807 (h :: ((BlendingFactor, BlendingFactor), (BlendingFactor, BlendingFactor))) 1829 (h :: ((BlendingFactor, BlendingFactor), (BlendingFactor, BlendingFactor)))
@@ -1830,7 +1852,7 @@ StencilOp
1830 :: StencilTests -> StencilOps -> StencilOps -> FragmentOperation 'Stencil 1852 :: StencilTests -> StencilOps -> StencilOps -> FragmentOperation 'Stencil
1831case'FragmentOperation 1853case'FragmentOperation
1832 :: forall (a :: forall (b :: ImageKind) -> FragmentOperation b -> Type) 1854 :: forall (a :: forall (b :: ImageKind) -> FragmentOperation b -> Type)
1833 -> (forall c (d :: Nat) (e :: Num c) 1855 -> (forall c (d :: Nat) (e :: CW (Num c))
1834 . forall (f :: Blending c) (g :: VecScalar d Bool) 1856 . forall (f :: Blending c) (g :: VecScalar d Bool)
1835 -> a ('Color (VecScalar d c)) ('ColorOp c d e f g)) 1857 -> a ('Color (VecScalar d c)) ('ColorOp c d e f g))
1836 -> (forall (h :: ComparisonFunction) (i :: Bool) -> a 'Depth ('DepthOp h i)) 1858 -> (forall (h :: ComparisonFunction) (i :: Bool) -> a 'Depth ('DepthOp h i))
@@ -1848,8 +1870,8 @@ Flat :: forall a . Interpolated a
1848case'Interpolated 1870case'Interpolated
1849 :: forall a 1871 :: forall a
1850 . forall (b :: Interpolated a -> Type) 1872 . forall (b :: Interpolated a -> Type)
1851 -> (forall (c :: Floating a) . b ('Smooth c)) 1873 -> (forall (c :: CW (Floating a)) . b ('Smooth c))
1852 -> (forall (d :: Floating a) . b ('NoPerspective d)) 1874 -> (forall (d :: CW (Floating a)) . b ('NoPerspective d))
1853 -> b 'Flat -> forall (e :: Interpolated a) -> b e 1875 -> b 'Flat -> forall (e :: Interpolated a) -> b e
1854match'Interpolated 1876match'Interpolated
1855 :: forall (a :: Type -> Type) 1877 :: forall (a :: Type -> Type)
@@ -1868,8 +1890,8 @@ rasterizePrimitives
1868 -> [Primitive (HList (Vec 4 Float : a)) b] 1890 -> [Primitive (HList (Vec 4 Float : a)) b]
1869 -> [Vector 1 (Maybe (SimpleFragment (HList a)))] 1891 -> [Vector 1 (Maybe (SimpleFragment (HList a)))]
1870'ImageLC :: Type -> Nat 1892'ImageLC :: Type -> Nat
1871allSame :: forall a . [a] -> Type 1893allSame :: forall a . [a] -> Constraint
1872sameLayerCounts :: [Type] -> Type 1894sameLayerCounts :: [Type] -> Constraint
1873'FrameBuffer :: Nat -> [ImageKind] -> Type 1895'FrameBuffer :: Nat -> [ImageKind] -> Type
1874case'FrameBuffer 1896case'FrameBuffer
1875 :: forall (a :: Nat) (b :: [ImageKind]) 1897 :: forall (a :: Nat) (b :: [ImageKind])
@@ -2763,9 +2785,10 @@ testdata/Builtins.lc 47:35-48:37
2763testdata/Builtins.lc 48:36-48:37 2785testdata/Builtins.lc 48:36-48:37
2764 Type 2786 Type
2765testdata/Builtins.lc 52:7-52:13 2787testdata/Builtins.lc 52:7-52:13
2766 Type -> Type 2788 Type -> Constraint
2767testdata/Builtins.lc 57:7-57:16 2789testdata/Builtins.lc 57:7-57:16
2768 Type -> Type | Type -> Type | Type -> Type 2790 Type -> Constraint | Type -> Constraint | Constraint | Type
2791 -> Constraint | Constraint
2769testdata/Builtins.lc 57:7-58:12 2792testdata/Builtins.lc 57:7-58:12
2770 Type 2793 Type
2771testdata/Builtins.lc 57:7-59:11 2794testdata/Builtins.lc 57:7-59:11
@@ -3003,9 +3026,9 @@ testdata/Builtins.lc 90:22-90:26
3003testdata/Builtins.lc 90:27-90:31 3026testdata/Builtins.lc 90:27-90:31
3004 Bool 3027 Bool
3005testdata/Builtins.lc 92:7-92:15 3028testdata/Builtins.lc 92:7-92:15
3006 Type -> Type 3029 Type -> Constraint
3007testdata/Builtins.lc 97:7-97:15 3030testdata/Builtins.lc 97:7-97:15
3008 Type -> Type 3031 Type -> Constraint
3009testdata/Builtins.lc 118:1-118:8 3032testdata/Builtins.lc 118:1-118:8
3010 forall a . Num (MatVecScalarElem a) => a -> a -> a 3033 forall a . Num (MatVecScalarElem a) => a -> a -> a
3011testdata/Builtins.lc 118:10-118:17 3034testdata/Builtins.lc 118:10-118:17
@@ -3013,9 +3036,9 @@ testdata/Builtins.lc 118:10-118:17
3013testdata/Builtins.lc 118:19-118:26 3036testdata/Builtins.lc 118:19-118:26
3014 forall a . Num (MatVecScalarElem a) => a -> a -> a 3037 forall a . Num (MatVecScalarElem a) => a -> a -> a
3015testdata/Builtins.lc 118:34-118:37 3038testdata/Builtins.lc 118:34-118:37
3016 Type -> Type | Type -> Type | Type -> Type 3039 Type -> Constraint | Type -> Constraint | Type -> Constraint
3017testdata/Builtins.lc 118:34-118:58 3040testdata/Builtins.lc 118:34-118:58
3018 Type | Type | Type 3041 Constraint | Constraint | Constraint
3019testdata/Builtins.lc 118:34-118:73 3042testdata/Builtins.lc 118:34-118:73
3020 Type | Type | Type 3043 Type | Type | Type
3021testdata/Builtins.lc 118:39-118:55 3044testdata/Builtins.lc 118:39-118:55
@@ -3045,12 +3068,12 @@ testdata/Builtins.lc 119:34-119:80
3045testdata/Builtins.lc 119:35-119:36 3068testdata/Builtins.lc 119:35-119:36
3046 _e | _e | _e 3069 _e | _e | _e
3047testdata/Builtins.lc 119:35-119:38 3070testdata/Builtins.lc 119:35-119:38
3048 _d -> Type | _d -> Type | _d -> Type 3071 _d -> Constraint | _d -> Constraint | _d -> Constraint
3049testdata/Builtins.lc 119:35-119:57 3072testdata/Builtins.lc 119:35-119:57
3050 Type | Type | Type 3073 Constraint | Constraint | Constraint
3051testdata/Builtins.lc 119:37-119:38 3074testdata/Builtins.lc 119:37-119:38
3052 forall a . a -> a -> Type | forall a . a -> a -> Type | forall a 3075 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3053 . a -> a -> Type 3076 . a -> a -> Constraint
3054testdata/Builtins.lc 119:39-119:55 3077testdata/Builtins.lc 119:39-119:55
3055 Type -> Type | Type -> Type | Type -> Type 3078 Type -> Type | Type -> Type | Type -> Type
3056testdata/Builtins.lc 119:39-119:57 3079testdata/Builtins.lc 119:39-119:57
@@ -3058,9 +3081,9 @@ testdata/Builtins.lc 119:39-119:57
3058testdata/Builtins.lc 119:56-119:57 3081testdata/Builtins.lc 119:56-119:57
3059 _b | _b | _b 3082 _b | _b | _b
3060testdata/Builtins.lc 119:59-119:62 3083testdata/Builtins.lc 119:59-119:62
3061 Type -> Type | Type -> Type | Type -> Type 3084 Type -> Constraint | Type -> Constraint | Type -> Constraint
3062testdata/Builtins.lc 119:59-119:64 3085testdata/Builtins.lc 119:59-119:64
3063 Type | Type | Type 3086 Constraint | Constraint | Constraint
3064testdata/Builtins.lc 119:59-119:80 3087testdata/Builtins.lc 119:59-119:80
3065 Type | Type | Type 3088 Type | Type | Type
3066testdata/Builtins.lc 119:63-119:64 3089testdata/Builtins.lc 119:63-119:64
@@ -3082,21 +3105,21 @@ testdata/Builtins.lc 120:10-120:17
3082testdata/Builtins.lc 120:34-120:75 3105testdata/Builtins.lc 120:34-120:75
3083 Type | Type | Type | Type | Type | Type 3106 Type | Type | Type | Type | Type | Type
3084testdata/Builtins.lc 120:35-120:38 3107testdata/Builtins.lc 120:35-120:38
3085 Type -> Type | Type -> Type 3108 Type -> Constraint | Type -> Constraint
3086testdata/Builtins.lc 120:35-120:40 3109testdata/Builtins.lc 120:35-120:40
3087 Type | Type 3110 Constraint | Constraint
3088testdata/Builtins.lc 120:39-120:40 3111testdata/Builtins.lc 120:39-120:40
3089 _f | _f 3112 _f | _f
3090testdata/Builtins.lc 120:42-120:43 3113testdata/Builtins.lc 120:42-120:43
3091 _f | _f 3114 _f | _f
3092testdata/Builtins.lc 120:42-120:45 3115testdata/Builtins.lc 120:42-120:45
3093 _e -> Type | _e -> Type 3116 _e -> Constraint | _e -> Constraint
3094testdata/Builtins.lc 120:42-120:59 3117testdata/Builtins.lc 120:42-120:59
3095 Type | Type 3118 Constraint | Constraint
3096testdata/Builtins.lc 120:42-120:75 3119testdata/Builtins.lc 120:42-120:75
3097 Type | Type 3120 Type | Type
3098testdata/Builtins.lc 120:44-120:45 3121testdata/Builtins.lc 120:44-120:45
3099 forall a . a -> a -> Type | forall a . a -> a -> Type 3122 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
3100testdata/Builtins.lc 120:46-120:55 3123testdata/Builtins.lc 120:46-120:55
3101 Nat -> Type -> Type | Nat -> Type -> Type 3124 Nat -> Type -> Type | Nat -> Type -> Type
3102testdata/Builtins.lc 120:46-120:57 3125testdata/Builtins.lc 120:46-120:57
@@ -3124,21 +3147,21 @@ testdata/Builtins.lc 121:11-121:19
3124testdata/Builtins.lc 121:34-121:75 3147testdata/Builtins.lc 121:34-121:75
3125 Type | Type | Type | Type | Type | Type 3148 Type | Type | Type | Type | Type | Type
3126testdata/Builtins.lc 121:35-121:38 3149testdata/Builtins.lc 121:35-121:38
3127 Type -> Type | Type -> Type 3150 Type -> Constraint | Type -> Constraint
3128testdata/Builtins.lc 121:35-121:40 3151testdata/Builtins.lc 121:35-121:40
3129 Type | Type 3152 Constraint | Constraint
3130testdata/Builtins.lc 121:39-121:40 3153testdata/Builtins.lc 121:39-121:40
3131 _f | _f 3154 _f | _f
3132testdata/Builtins.lc 121:42-121:43 3155testdata/Builtins.lc 121:42-121:43
3133 _f | _f 3156 _f | _f
3134testdata/Builtins.lc 121:42-121:45 3157testdata/Builtins.lc 121:42-121:45
3135 _e -> Type | _e -> Type 3158 _e -> Constraint | _e -> Constraint
3136testdata/Builtins.lc 121:42-121:59 3159testdata/Builtins.lc 121:42-121:59
3137 Type | Type 3160 Constraint | Constraint
3138testdata/Builtins.lc 121:42-121:75 3161testdata/Builtins.lc 121:42-121:75
3139 Type | Type 3162 Type | Type
3140testdata/Builtins.lc 121:44-121:45 3163testdata/Builtins.lc 121:44-121:45
3141 forall a . a -> a -> Type | forall a . a -> a -> Type 3164 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
3142testdata/Builtins.lc 121:46-121:55 3165testdata/Builtins.lc 121:46-121:55
3143 Nat -> Type -> Type | Nat -> Type -> Type 3166 Nat -> Type -> Type | Nat -> Type -> Type
3144testdata/Builtins.lc 121:46-121:57 3167testdata/Builtins.lc 121:46-121:57
@@ -3162,9 +3185,9 @@ testdata/Builtins.lc 121:74-121:75
3162testdata/Builtins.lc 122:1-122:8 3185testdata/Builtins.lc 122:1-122:8
3163 forall a . Signed (MatVecScalarElem a) => a -> a 3186 forall a . Signed (MatVecScalarElem a) => a -> a
3164testdata/Builtins.lc 122:34-122:40 3187testdata/Builtins.lc 122:34-122:40
3165 Type -> Type 3188 Type -> Constraint
3166testdata/Builtins.lc 122:34-122:61 3189testdata/Builtins.lc 122:34-122:61
3167 Type 3190 Constraint
3168testdata/Builtins.lc 122:34-122:71 3191testdata/Builtins.lc 122:34-122:71
3169 Type 3192 Type
3170testdata/Builtins.lc 122:42-122:58 3193testdata/Builtins.lc 122:42-122:58
@@ -3188,22 +3211,22 @@ testdata/Builtins.lc 124:20-124:28
3188testdata/Builtins.lc 124:34-124:80 3211testdata/Builtins.lc 124:34-124:80
3189 Type | Type | Type | Type | Type | Type | Type | Type | Type 3212 Type | Type | Type | Type | Type | Type | Type | Type | Type
3190testdata/Builtins.lc 124:35-124:43 3213testdata/Builtins.lc 124:35-124:43
3191 Type -> Type | Type -> Type | Type -> Type 3214 Type -> Constraint | Type -> Constraint | Type -> Constraint
3192testdata/Builtins.lc 124:35-124:45 3215testdata/Builtins.lc 124:35-124:45
3193 Type | Type | Type 3216 Constraint | Constraint | Constraint
3194testdata/Builtins.lc 124:44-124:45 3217testdata/Builtins.lc 124:44-124:45
3195 _f | _f | _f 3218 _f | _f | _f
3196testdata/Builtins.lc 124:47-124:48 3219testdata/Builtins.lc 124:47-124:48
3197 _f | _f | _f 3220 _f | _f | _f
3198testdata/Builtins.lc 124:47-124:50 3221testdata/Builtins.lc 124:47-124:50
3199 _e -> Type | _e -> Type | _e -> Type 3222 _e -> Constraint | _e -> Constraint | _e -> Constraint
3200testdata/Builtins.lc 124:47-124:64 3223testdata/Builtins.lc 124:47-124:64
3201 Type | Type | Type 3224 Constraint | Constraint | Constraint
3202testdata/Builtins.lc 124:47-124:80 3225testdata/Builtins.lc 124:47-124:80
3203 Type | Type | Type 3226 Type | Type | Type
3204testdata/Builtins.lc 124:49-124:50 3227testdata/Builtins.lc 124:49-124:50
3205 forall a . a -> a -> Type | forall a . a -> a -> Type | forall a 3228 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3206 . a -> a -> Type 3229 . a -> a -> Constraint
3207testdata/Builtins.lc 124:51-124:60 3230testdata/Builtins.lc 124:51-124:60
3208 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type 3231 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type
3209testdata/Builtins.lc 124:51-124:62 3232testdata/Builtins.lc 124:51-124:62
@@ -3233,22 +3256,22 @@ testdata/Builtins.lc 125:22-125:31
3233testdata/Builtins.lc 125:34-125:80 3256testdata/Builtins.lc 125:34-125:80
3234 Type | Type | Type | Type | Type | Type | Type | Type | Type 3257 Type | Type | Type | Type | Type | Type | Type | Type | Type
3235testdata/Builtins.lc 125:35-125:43 3258testdata/Builtins.lc 125:35-125:43
3236 Type -> Type | Type -> Type | Type -> Type 3259 Type -> Constraint | Type -> Constraint | Type -> Constraint
3237testdata/Builtins.lc 125:35-125:45 3260testdata/Builtins.lc 125:35-125:45
3238 Type | Type | Type 3261 Constraint | Constraint | Constraint
3239testdata/Builtins.lc 125:44-125:45 3262testdata/Builtins.lc 125:44-125:45
3240 _f | _f | _f 3263 _f | _f | _f
3241testdata/Builtins.lc 125:47-125:48 3264testdata/Builtins.lc 125:47-125:48
3242 _f | _f | _f 3265 _f | _f | _f
3243testdata/Builtins.lc 125:47-125:50 3266testdata/Builtins.lc 125:47-125:50
3244 _e -> Type | _e -> Type | _e -> Type 3267 _e -> Constraint | _e -> Constraint | _e -> Constraint
3245testdata/Builtins.lc 125:47-125:64 3268testdata/Builtins.lc 125:47-125:64
3246 Type | Type | Type 3269 Constraint | Constraint | Constraint
3247testdata/Builtins.lc 125:47-125:80 3270testdata/Builtins.lc 125:47-125:80
3248 Type | Type | Type 3271 Type | Type | Type
3249testdata/Builtins.lc 125:49-125:50 3272testdata/Builtins.lc 125:49-125:50
3250 forall a . a -> a -> Type | forall a . a -> a -> Type | forall a 3273 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3251 . a -> a -> Type 3274 . a -> a -> Constraint
3252testdata/Builtins.lc 125:51-125:60 3275testdata/Builtins.lc 125:51-125:60
3253 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type 3276 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type
3254testdata/Builtins.lc 125:51-125:62 3277testdata/Builtins.lc 125:51-125:62
@@ -3274,21 +3297,21 @@ testdata/Builtins.lc 126:1-126:9
3274testdata/Builtins.lc 126:34-126:75 3297testdata/Builtins.lc 126:34-126:75
3275 Type | Type | Type 3298 Type | Type | Type
3276testdata/Builtins.lc 126:35-126:43 3299testdata/Builtins.lc 126:35-126:43
3277 Type -> Type 3300 Type -> Constraint
3278testdata/Builtins.lc 126:35-126:45 3301testdata/Builtins.lc 126:35-126:45
3279 Type 3302 Constraint
3280testdata/Builtins.lc 126:44-126:45 3303testdata/Builtins.lc 126:44-126:45
3281 _f 3304 _f
3282testdata/Builtins.lc 126:47-126:48 3305testdata/Builtins.lc 126:47-126:48
3283 _f 3306 _f
3284testdata/Builtins.lc 126:47-126:50 3307testdata/Builtins.lc 126:47-126:50
3285 _e -> Type 3308 _e -> Constraint
3286testdata/Builtins.lc 126:47-126:64 3309testdata/Builtins.lc 126:47-126:64
3287 Type 3310 Constraint
3288testdata/Builtins.lc 126:47-126:75 3311testdata/Builtins.lc 126:47-126:75
3289 Type 3312 Type
3290testdata/Builtins.lc 126:49-126:50 3313testdata/Builtins.lc 126:49-126:50
3291 forall a . a -> a -> Type 3314 forall a . a -> a -> Constraint
3292testdata/Builtins.lc 126:51-126:60 3315testdata/Builtins.lc 126:51-126:60
3293 Nat -> Type -> Type 3316 Nat -> Type -> Type
3294testdata/Builtins.lc 126:51-126:62 3317testdata/Builtins.lc 126:51-126:62
@@ -3314,21 +3337,21 @@ testdata/Builtins.lc 127:14-127:25
3314testdata/Builtins.lc 127:34-127:102 3337testdata/Builtins.lc 127:34-127:102
3315 Type | Type | Type | Type | Type | Type | Type | Type 3338 Type | Type | Type | Type | Type | Type | Type | Type
3316testdata/Builtins.lc 127:35-127:43 3339testdata/Builtins.lc 127:35-127:43
3317 Type -> Type | Type -> Type 3340 Type -> Constraint | Type -> Constraint
3318testdata/Builtins.lc 127:35-127:45 3341testdata/Builtins.lc 127:35-127:45
3319 Type | Type 3342 Constraint | Constraint
3320testdata/Builtins.lc 127:44-127:45 3343testdata/Builtins.lc 127:44-127:45
3321 _h | _h 3344 _h | _h
3322testdata/Builtins.lc 127:47-127:48 3345testdata/Builtins.lc 127:47-127:48
3323 _h | _h 3346 _h | _h
3324testdata/Builtins.lc 127:47-127:50 3347testdata/Builtins.lc 127:47-127:50
3325 _g -> Type | _g -> Type 3348 _g -> Constraint | _g -> Constraint
3326testdata/Builtins.lc 127:47-127:64 3349testdata/Builtins.lc 127:47-127:64
3327 Type | Type 3350 Constraint | Constraint
3328testdata/Builtins.lc 127:47-127:102 3351testdata/Builtins.lc 127:47-127:102
3329 Type | Type 3352 Type | Type
3330testdata/Builtins.lc 127:49-127:50 3353testdata/Builtins.lc 127:49-127:50
3331 forall a . a -> a -> Type | forall a . a -> a -> Type 3354 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
3332testdata/Builtins.lc 127:51-127:60 3355testdata/Builtins.lc 127:51-127:60
3333 Nat -> Type -> Type | Nat -> Type -> Type 3356 Nat -> Type -> Type | Nat -> Type -> Type
3334testdata/Builtins.lc 127:51-127:62 3357testdata/Builtins.lc 127:51-127:62
@@ -3342,13 +3365,13 @@ testdata/Builtins.lc 127:63-127:64
3342testdata/Builtins.lc 127:66-127:67 3365testdata/Builtins.lc 127:66-127:67
3343 _e | _e 3366 _e | _e
3344testdata/Builtins.lc 127:66-127:69 3367testdata/Builtins.lc 127:66-127:69
3345 _d -> Type | _d -> Type 3368 _d -> Constraint | _d -> Constraint
3346testdata/Builtins.lc 127:66-127:86 3369testdata/Builtins.lc 127:66-127:86
3347 Type | Type 3370 Constraint | Constraint
3348testdata/Builtins.lc 127:66-127:102 3371testdata/Builtins.lc 127:66-127:102
3349 Type | Type 3372 Type | Type
3350testdata/Builtins.lc 127:68-127:69 3373testdata/Builtins.lc 127:68-127:69
3351 forall a . a -> a -> Type | forall a . a -> a -> Type 3374 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
3352testdata/Builtins.lc 127:70-127:79 3375testdata/Builtins.lc 127:70-127:79
3353 Nat -> Type -> Type | Nat -> Type -> Type 3376 Nat -> Type -> Type | Nat -> Type -> Type
3354testdata/Builtins.lc 127:70-127:81 3377testdata/Builtins.lc 127:70-127:81
@@ -3376,21 +3399,21 @@ testdata/Builtins.lc 128:15-128:27
3376testdata/Builtins.lc 128:34-128:83 3399testdata/Builtins.lc 128:34-128:83
3377 Type | Type | Type | Type | Type | Type 3400 Type | Type | Type | Type | Type | Type
3378testdata/Builtins.lc 128:35-128:43 3401testdata/Builtins.lc 128:35-128:43
3379 Type -> Type | Type -> Type 3402 Type -> Constraint | Type -> Constraint
3380testdata/Builtins.lc 128:35-128:45 3403testdata/Builtins.lc 128:35-128:45
3381 Type | Type 3404 Constraint | Constraint
3382testdata/Builtins.lc 128:44-128:45 3405testdata/Builtins.lc 128:44-128:45
3383 _f | _f 3406 _f | _f
3384testdata/Builtins.lc 128:47-128:48 3407testdata/Builtins.lc 128:47-128:48
3385 _f | _f 3408 _f | _f
3386testdata/Builtins.lc 128:47-128:50 3409testdata/Builtins.lc 128:47-128:50
3387 _e -> Type | _e -> Type 3410 _e -> Constraint | _e -> Constraint
3388testdata/Builtins.lc 128:47-128:64 3411testdata/Builtins.lc 128:47-128:64
3389 Type | Type 3412 Constraint | Constraint
3390testdata/Builtins.lc 128:47-128:83 3413testdata/Builtins.lc 128:47-128:83
3391 Type | Type 3414 Type | Type
3392testdata/Builtins.lc 128:49-128:50 3415testdata/Builtins.lc 128:49-128:50
3393 forall a . a -> a -> Type | forall a . a -> a -> Type 3416 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
3394testdata/Builtins.lc 128:51-128:60 3417testdata/Builtins.lc 128:51-128:60
3395 Nat -> Type -> Type | Nat -> Type -> Type 3418 Nat -> Type -> Type | Nat -> Type -> Type
3396testdata/Builtins.lc 128:51-128:62 3419testdata/Builtins.lc 128:51-128:62
@@ -3432,11 +3455,11 @@ testdata/Builtins.lc 131:47-131:79
3432testdata/Builtins.lc 131:48-131:49 3455testdata/Builtins.lc 131:48-131:49
3433 _e 3456 _e
3434testdata/Builtins.lc 131:48-131:51 3457testdata/Builtins.lc 131:48-131:51
3435 _d -> Type 3458 _d -> Constraint
3436testdata/Builtins.lc 131:48-131:68 3459testdata/Builtins.lc 131:48-131:68
3437 Type 3460 Constraint
3438testdata/Builtins.lc 131:50-131:51 3461testdata/Builtins.lc 131:50-131:51
3439 forall a . a -> a -> Type 3462 forall a . a -> a -> Constraint
3440testdata/Builtins.lc 131:52-131:61 3463testdata/Builtins.lc 131:52-131:61
3441 Nat -> Type -> Type 3464 Nat -> Type -> Type
3442testdata/Builtins.lc 131:52-131:63 3465testdata/Builtins.lc 131:52-131:63
@@ -3516,23 +3539,24 @@ testdata/Builtins.lc 136:34-136:67
3516testdata/Builtins.lc 136:35-136:36 3539testdata/Builtins.lc 136:35-136:36
3517 _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e 3540 _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e | _e
3518testdata/Builtins.lc 136:35-136:38 3541testdata/Builtins.lc 136:35-136:38
3519 _d -> Type | _d -> Type | _d -> Type | _d -> Type | _d -> Type | _d -> Type | _d 3542 _d -> Constraint | _d -> Constraint | _d -> Constraint | _d -> Constraint | _d
3520 -> Type | _d -> Type | _d -> Type | _d -> Type | _d -> Type | _d -> Type | _d 3543 -> Constraint | _d -> Constraint | _d -> Constraint | _d -> Constraint | _d
3521 -> Type | _d -> Type | _d -> Type | _d -> Type | _d -> Type | _d -> Type | _d 3544 -> Constraint | _d -> Constraint | _d -> Constraint | _d -> Constraint | _d
3522 -> Type | _d -> Type 3545 -> Constraint | _d -> Constraint | _d -> Constraint | _d -> Constraint | _d
3546 -> Constraint | _d -> Constraint | _d -> Constraint | _d -> Constraint
3523testdata/Builtins.lc 136:35-136:56 3547testdata/Builtins.lc 136:35-136:56
3524 Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type 3548 Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint | Constraint
3525testdata/Builtins.lc 136:37-136:38 3549testdata/Builtins.lc 136:37-136:38
3526 forall a . a -> a -> Type | forall a . a -> a -> Type | forall a 3550 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3527 . a -> a -> Type | forall a . a -> a -> Type | forall a 3551 . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3528 . a -> a -> Type | forall a . a -> a -> Type | forall a 3552 . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3529 . a -> a -> Type | forall a . a -> a -> Type | forall a 3553 . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3530 . a -> a -> Type | forall a . a -> a -> Type | forall a 3554 . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3531 . a -> a -> Type | forall a . a -> a -> Type | forall a 3555 . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3532 . a -> a -> Type | forall a . a -> a -> Type | forall a 3556 . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3533 . a -> a -> Type | forall a . a -> a -> Type | forall a 3557 . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3534 . a -> a -> Type | forall a . a -> a -> Type | forall a 3558 . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3535 . a -> a -> Type | forall a . a -> a -> Type 3559 . a -> a -> Constraint | forall a . a -> a -> Constraint
3536testdata/Builtins.lc 136:39-136:48 3560testdata/Builtins.lc 136:39-136:48
3537 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type | Nat 3561 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type | Nat
3538 -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type | Nat 3562 -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type | Nat
@@ -3567,11 +3591,11 @@ testdata/Builtins.lc 137:34-137:72
3567testdata/Builtins.lc 137:35-137:36 3591testdata/Builtins.lc 137:35-137:36
3568 _e | _e 3592 _e | _e
3569testdata/Builtins.lc 137:35-137:38 3593testdata/Builtins.lc 137:35-137:38
3570 _d -> Type | _d -> Type 3594 _d -> Constraint | _d -> Constraint
3571testdata/Builtins.lc 137:35-137:56 3595testdata/Builtins.lc 137:35-137:56
3572 Type | Type 3596 Constraint | Constraint
3573testdata/Builtins.lc 137:37-137:38 3597testdata/Builtins.lc 137:37-137:38
3574 forall a . a -> a -> Type | forall a . a -> a -> Type 3598 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
3575testdata/Builtins.lc 137:39-137:48 3599testdata/Builtins.lc 137:39-137:48
3576 Nat -> Type -> Type | Nat -> Type -> Type 3600 Nat -> Type -> Type | Nat -> Type -> Type
3577testdata/Builtins.lc 137:39-137:50 3601testdata/Builtins.lc 137:39-137:50
@@ -3609,13 +3633,14 @@ testdata/Builtins.lc 140:34-140:67
3609testdata/Builtins.lc 140:35-140:36 3633testdata/Builtins.lc 140:35-140:36
3610 _e | _e | _e | _e | _e | _e 3634 _e | _e | _e | _e | _e | _e
3611testdata/Builtins.lc 140:35-140:38 3635testdata/Builtins.lc 140:35-140:38
3612 _d -> Type | _d -> Type | _d -> Type | _d -> Type | _d -> Type | _d -> Type 3636 _d -> Constraint | _d -> Constraint | _d -> Constraint | _d -> Constraint | _d
3637 -> Constraint | _d -> Constraint
3613testdata/Builtins.lc 140:35-140:56 3638testdata/Builtins.lc 140:35-140:56
3614 Type | Type | Type | Type | Type | Type 3639 Constraint | Constraint | Constraint | Constraint | Constraint | Constraint
3615testdata/Builtins.lc 140:37-140:38 3640testdata/Builtins.lc 140:37-140:38
3616 forall a . a -> a -> Type | forall a . a -> a -> Type | forall a 3641 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3617 . a -> a -> Type | forall a . a -> a -> Type | forall a 3642 . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
3618 . a -> a -> Type | forall a . a -> a -> Type 3643 . a -> a -> Constraint | forall a . a -> a -> Constraint
3619testdata/Builtins.lc 140:39-140:48 3644testdata/Builtins.lc 140:39-140:48
3620 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type | Nat 3645 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type | Nat
3621 -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type 3646 -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type
@@ -3641,21 +3666,21 @@ testdata/Builtins.lc 141:10-141:17
3641testdata/Builtins.lc 141:34-141:75 3666testdata/Builtins.lc 141:34-141:75
3642 Type | Type | Type | Type | Type | Type 3667 Type | Type | Type | Type | Type | Type
3643testdata/Builtins.lc 141:35-141:38 3668testdata/Builtins.lc 141:35-141:38
3644 Type -> Type | Type -> Type 3669 Type -> Constraint | Type -> Constraint
3645testdata/Builtins.lc 141:35-141:40 3670testdata/Builtins.lc 141:35-141:40
3646 Type | Type 3671 Constraint | Constraint
3647testdata/Builtins.lc 141:39-141:40 3672testdata/Builtins.lc 141:39-141:40
3648 _f | _f 3673 _f | _f
3649testdata/Builtins.lc 141:42-141:43 3674testdata/Builtins.lc 141:42-141:43
3650 _f | _f 3675 _f | _f
3651testdata/Builtins.lc 141:42-141:45 3676testdata/Builtins.lc 141:42-141:45
3652 _e -> Type | _e -> Type 3677 _e -> Constraint | _e -> Constraint
3653testdata/Builtins.lc 141:42-141:59 3678testdata/Builtins.lc 141:42-141:59
3654 Type | Type 3679 Constraint | Constraint
3655testdata/Builtins.lc 141:42-141:75 3680testdata/Builtins.lc 141:42-141:75
3656 Type | Type 3681 Type | Type
3657testdata/Builtins.lc 141:44-141:45 3682testdata/Builtins.lc 141:44-141:45
3658 forall a . a -> a -> Type | forall a . a -> a -> Type 3683 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
3659testdata/Builtins.lc 141:46-141:55 3684testdata/Builtins.lc 141:46-141:55
3660 Nat -> Type -> Type | Nat -> Type -> Type 3685 Nat -> Type -> Type | Nat -> Type -> Type
3661testdata/Builtins.lc 141:46-141:57 3686testdata/Builtins.lc 141:46-141:57
@@ -3683,21 +3708,21 @@ testdata/Builtins.lc 142:11-142:19
3683testdata/Builtins.lc 142:34-142:75 3708testdata/Builtins.lc 142:34-142:75
3684 Type | Type | Type | Type | Type | Type 3709 Type | Type | Type | Type | Type | Type
3685testdata/Builtins.lc 142:35-142:38 3710testdata/Builtins.lc 142:35-142:38
3686 Type -> Type | Type -> Type 3711 Type -> Constraint | Type -> Constraint
3687testdata/Builtins.lc 142:35-142:40 3712testdata/Builtins.lc 142:35-142:40
3688 Type | Type 3713 Constraint | Constraint
3689testdata/Builtins.lc 142:39-142:40 3714testdata/Builtins.lc 142:39-142:40
3690 _f | _f 3715 _f | _f
3691testdata/Builtins.lc 142:42-142:43 3716testdata/Builtins.lc 142:42-142:43
3692 _f | _f 3717 _f | _f
3693testdata/Builtins.lc 142:42-142:45 3718testdata/Builtins.lc 142:42-142:45
3694 _e -> Type | _e -> Type 3719 _e -> Constraint | _e -> Constraint
3695testdata/Builtins.lc 142:42-142:59 3720testdata/Builtins.lc 142:42-142:59
3696 Type | Type 3721 Constraint | Constraint
3697testdata/Builtins.lc 142:42-142:75 3722testdata/Builtins.lc 142:42-142:75
3698 Type | Type 3723 Type | Type
3699testdata/Builtins.lc 142:44-142:45 3724testdata/Builtins.lc 142:44-142:45
3700 forall a . a -> a -> Type | forall a . a -> a -> Type 3725 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
3701testdata/Builtins.lc 142:46-142:55 3726testdata/Builtins.lc 142:46-142:55
3702 Nat -> Type -> Type | Nat -> Type -> Type 3727 Nat -> Type -> Type | Nat -> Type -> Type
3703testdata/Builtins.lc 142:46-142:57 3728testdata/Builtins.lc 142:46-142:57
@@ -3727,11 +3752,11 @@ testdata/Builtins.lc 143:34-143:89
3727testdata/Builtins.lc 143:35-143:36 3752testdata/Builtins.lc 143:35-143:36
3728 _g | _g 3753 _g | _g
3729testdata/Builtins.lc 143:35-143:38 3754testdata/Builtins.lc 143:35-143:38
3730 _f -> Type | _f -> Type 3755 _f -> Constraint | _f -> Constraint
3731testdata/Builtins.lc 143:35-143:56 3756testdata/Builtins.lc 143:35-143:56
3732 Type | Type 3757 Constraint | Constraint
3733testdata/Builtins.lc 143:37-143:38 3758testdata/Builtins.lc 143:37-143:38
3734 forall a . a -> a -> Type | forall a . a -> a -> Type 3759 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
3735testdata/Builtins.lc 143:39-143:48 3760testdata/Builtins.lc 143:39-143:48
3736 Nat -> Type -> Type | Nat -> Type -> Type 3761 Nat -> Type -> Type | Nat -> Type -> Type
3737testdata/Builtins.lc 143:39-143:50 3762testdata/Builtins.lc 143:39-143:50
@@ -3745,13 +3770,13 @@ testdata/Builtins.lc 143:51-143:56
3745testdata/Builtins.lc 143:58-143:59 3770testdata/Builtins.lc 143:58-143:59
3746 _d | _d 3771 _d | _d
3747testdata/Builtins.lc 143:58-143:61 3772testdata/Builtins.lc 143:58-143:61
3748 _c -> Type | _c -> Type 3773 _c -> Constraint | _c -> Constraint
3749testdata/Builtins.lc 143:58-143:78 3774testdata/Builtins.lc 143:58-143:78
3750 Type | Type 3775 Constraint | Constraint
3751testdata/Builtins.lc 143:58-143:89 3776testdata/Builtins.lc 143:58-143:89
3752 Type | Type 3777 Type | Type
3753testdata/Builtins.lc 143:60-143:61 3778testdata/Builtins.lc 143:60-143:61
3754 forall a . a -> a -> Type | forall a . a -> a -> Type 3779 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
3755testdata/Builtins.lc 143:62-143:71 3780testdata/Builtins.lc 143:62-143:71
3756 Nat -> Type -> Type | Nat -> Type -> Type 3781 Nat -> Type -> Type | Nat -> Type -> Type
3757testdata/Builtins.lc 143:62-143:73 3782testdata/Builtins.lc 143:62-143:73
@@ -3775,21 +3800,21 @@ testdata/Builtins.lc 144:10-144:18
3775testdata/Builtins.lc 144:34-144:73 3800testdata/Builtins.lc 144:34-144:73
3776 Type | Type | Type | Type | Type | Type 3801 Type | Type | Type | Type | Type | Type
3777testdata/Builtins.lc 144:35-144:41 3802testdata/Builtins.lc 144:35-144:41
3778 Type -> Type | Type -> Type 3803 Type -> Constraint | Type -> Constraint
3779testdata/Builtins.lc 144:35-144:43 3804testdata/Builtins.lc 144:35-144:43
3780 Type | Type 3805 Constraint | Constraint
3781testdata/Builtins.lc 144:42-144:43 3806testdata/Builtins.lc 144:42-144:43
3782 _f | _f 3807 _f | _f
3783testdata/Builtins.lc 144:45-144:46 3808testdata/Builtins.lc 144:45-144:46
3784 _f | _f 3809 _f | _f
3785testdata/Builtins.lc 144:45-144:48 3810testdata/Builtins.lc 144:45-144:48
3786 _e -> Type | _e -> Type 3811 _e -> Constraint | _e -> Constraint
3787testdata/Builtins.lc 144:45-144:62 3812testdata/Builtins.lc 144:45-144:62
3788 Type | Type 3813 Constraint | Constraint
3789testdata/Builtins.lc 144:45-144:73 3814testdata/Builtins.lc 144:45-144:73
3790 Type | Type 3815 Type | Type
3791testdata/Builtins.lc 144:47-144:48 3816testdata/Builtins.lc 144:47-144:48
3792 forall a . a -> a -> Type | forall a . a -> a -> Type 3817 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
3793testdata/Builtins.lc 144:49-144:58 3818testdata/Builtins.lc 144:49-144:58
3794 Nat -> Type -> Type | Nat -> Type -> Type 3819 Nat -> Type -> Type | Nat -> Type -> Type
3795testdata/Builtins.lc 144:49-144:60 3820testdata/Builtins.lc 144:49-144:60
@@ -3813,11 +3838,11 @@ testdata/Builtins.lc 145:34-145:72
3813testdata/Builtins.lc 145:35-145:36 3838testdata/Builtins.lc 145:35-145:36
3814 _e 3839 _e
3815testdata/Builtins.lc 145:35-145:38 3840testdata/Builtins.lc 145:35-145:38
3816 _d -> Type 3841 _d -> Constraint
3817testdata/Builtins.lc 145:35-145:56 3842testdata/Builtins.lc 145:35-145:56
3818 Type 3843 Constraint
3819testdata/Builtins.lc 145:37-145:38 3844testdata/Builtins.lc 145:37-145:38
3820 forall a . a -> a -> Type 3845 forall a . a -> a -> Constraint
3821testdata/Builtins.lc 145:39-145:48 3846testdata/Builtins.lc 145:39-145:48
3822 Nat -> Type -> Type 3847 Nat -> Type -> Type
3823testdata/Builtins.lc 145:39-145:50 3848testdata/Builtins.lc 145:39-145:50
@@ -3845,21 +3870,21 @@ testdata/Builtins.lc 146:1-146:10
3845testdata/Builtins.lc 146:34-146:80 3870testdata/Builtins.lc 146:34-146:80
3846 Type | Type | Type 3871 Type | Type | Type
3847testdata/Builtins.lc 146:35-146:38 3872testdata/Builtins.lc 146:35-146:38
3848 Type -> Type 3873 Type -> Constraint
3849testdata/Builtins.lc 146:35-146:40 3874testdata/Builtins.lc 146:35-146:40
3850 Type 3875 Constraint
3851testdata/Builtins.lc 146:39-146:40 3876testdata/Builtins.lc 146:39-146:40
3852 _f 3877 _f
3853testdata/Builtins.lc 146:42-146:43 3878testdata/Builtins.lc 146:42-146:43
3854 _f 3879 _f
3855testdata/Builtins.lc 146:42-146:45 3880testdata/Builtins.lc 146:42-146:45
3856 _e -> Type 3881 _e -> Constraint
3857testdata/Builtins.lc 146:42-146:59 3882testdata/Builtins.lc 146:42-146:59
3858 Type 3883 Constraint
3859testdata/Builtins.lc 146:42-146:80 3884testdata/Builtins.lc 146:42-146:80
3860 Type 3885 Type
3861testdata/Builtins.lc 146:44-146:45 3886testdata/Builtins.lc 146:44-146:45
3862 forall a . a -> a -> Type 3887 forall a . a -> a -> Constraint
3863testdata/Builtins.lc 146:46-146:55 3888testdata/Builtins.lc 146:46-146:55
3864 Nat -> Type -> Type 3889 Nat -> Type -> Type
3865testdata/Builtins.lc 146:46-146:57 3890testdata/Builtins.lc 146:46-146:57
@@ -3889,21 +3914,21 @@ testdata/Builtins.lc 147:1-147:11
3889testdata/Builtins.lc 147:34-147:80 3914testdata/Builtins.lc 147:34-147:80
3890 Type | Type | Type 3915 Type | Type | Type
3891testdata/Builtins.lc 147:35-147:38 3916testdata/Builtins.lc 147:35-147:38
3892 Type -> Type 3917 Type -> Constraint
3893testdata/Builtins.lc 147:35-147:40 3918testdata/Builtins.lc 147:35-147:40
3894 Type 3919 Constraint
3895testdata/Builtins.lc 147:39-147:40 3920testdata/Builtins.lc 147:39-147:40
3896 _f 3921 _f
3897testdata/Builtins.lc 147:42-147:43 3922testdata/Builtins.lc 147:42-147:43
3898 _f 3923 _f
3899testdata/Builtins.lc 147:42-147:45 3924testdata/Builtins.lc 147:42-147:45
3900 _e -> Type 3925 _e -> Constraint
3901testdata/Builtins.lc 147:42-147:59 3926testdata/Builtins.lc 147:42-147:59
3902 Type 3927 Constraint
3903testdata/Builtins.lc 147:42-147:80 3928testdata/Builtins.lc 147:42-147:80
3904 Type 3929 Type
3905testdata/Builtins.lc 147:44-147:45 3930testdata/Builtins.lc 147:44-147:45
3906 forall a . a -> a -> Type 3931 forall a . a -> a -> Constraint
3907testdata/Builtins.lc 147:46-147:55 3932testdata/Builtins.lc 147:46-147:55
3908 Nat -> Type -> Type 3933 Nat -> Type -> Type
3909testdata/Builtins.lc 147:46-147:57 3934testdata/Builtins.lc 147:46-147:57
@@ -3935,11 +3960,11 @@ testdata/Builtins.lc 148:34-148:77
3935testdata/Builtins.lc 148:35-148:36 3960testdata/Builtins.lc 148:35-148:36
3936 _e 3961 _e
3937testdata/Builtins.lc 148:35-148:38 3962testdata/Builtins.lc 148:35-148:38
3938 _d -> Type 3963 _d -> Constraint
3939testdata/Builtins.lc 148:35-148:56 3964testdata/Builtins.lc 148:35-148:56
3940 Type 3965 Constraint
3941testdata/Builtins.lc 148:37-148:38 3966testdata/Builtins.lc 148:37-148:38
3942 forall a . a -> a -> Type 3967 forall a . a -> a -> Constraint
3943testdata/Builtins.lc 148:39-148:48 3968testdata/Builtins.lc 148:39-148:48
3944 Nat -> Type -> Type 3969 Nat -> Type -> Type
3945testdata/Builtins.lc 148:39-148:50 3970testdata/Builtins.lc 148:39-148:50
@@ -3971,11 +3996,11 @@ testdata/Builtins.lc 149:34-149:81
3971testdata/Builtins.lc 149:35-149:36 3996testdata/Builtins.lc 149:35-149:36
3972 _e 3997 _e
3973testdata/Builtins.lc 149:35-149:38 3998testdata/Builtins.lc 149:35-149:38
3974 _d -> Type 3999 _d -> Constraint
3975testdata/Builtins.lc 149:35-149:56 4000testdata/Builtins.lc 149:35-149:56
3976 Type 4001 Constraint
3977testdata/Builtins.lc 149:37-149:38 4002testdata/Builtins.lc 149:37-149:38
3978 forall a . a -> a -> Type 4003 forall a . a -> a -> Constraint
3979testdata/Builtins.lc 149:39-149:48 4004testdata/Builtins.lc 149:39-149:48
3980 Nat -> Type -> Type 4005 Nat -> Type -> Type
3981testdata/Builtins.lc 149:39-149:50 4006testdata/Builtins.lc 149:39-149:50
@@ -4008,11 +4033,11 @@ testdata/Builtins.lc 150:34-150:99
4008testdata/Builtins.lc 150:35-150:36 4033testdata/Builtins.lc 150:35-150:36
4009 _g 4034 _g
4010testdata/Builtins.lc 150:35-150:38 4035testdata/Builtins.lc 150:35-150:38
4011 _f -> Type 4036 _f -> Constraint
4012testdata/Builtins.lc 150:35-150:56 4037testdata/Builtins.lc 150:35-150:56
4013 Type 4038 Constraint
4014testdata/Builtins.lc 150:37-150:38 4039testdata/Builtins.lc 150:37-150:38
4015 forall a . a -> a -> Type 4040 forall a . a -> a -> Constraint
4016testdata/Builtins.lc 150:39-150:48 4041testdata/Builtins.lc 150:39-150:48
4017 Nat -> Type -> Type 4042 Nat -> Type -> Type
4018testdata/Builtins.lc 150:39-150:50 4043testdata/Builtins.lc 150:39-150:50
@@ -4026,13 +4051,13 @@ testdata/Builtins.lc 150:51-150:56
4026testdata/Builtins.lc 150:58-150:59 4051testdata/Builtins.lc 150:58-150:59
4027 _d 4052 _d
4028testdata/Builtins.lc 150:58-150:61 4053testdata/Builtins.lc 150:58-150:61
4029 _c -> Type 4054 _c -> Constraint
4030testdata/Builtins.lc 150:58-150:78 4055testdata/Builtins.lc 150:58-150:78
4031 Type 4056 Constraint
4032testdata/Builtins.lc 150:58-150:99 4057testdata/Builtins.lc 150:58-150:99
4033 Type 4058 Type
4034testdata/Builtins.lc 150:60-150:61 4059testdata/Builtins.lc 150:60-150:61
4035 forall a . a -> a -> Type 4060 forall a . a -> a -> Constraint
4036testdata/Builtins.lc 150:62-150:71 4061testdata/Builtins.lc 150:62-150:71
4037 Nat -> Type -> Type 4062 Nat -> Type -> Type
4038testdata/Builtins.lc 150:62-150:73 4063testdata/Builtins.lc 150:62-150:73
@@ -4064,11 +4089,11 @@ testdata/Builtins.lc 151:34-151:66
4064testdata/Builtins.lc 151:35-151:36 4089testdata/Builtins.lc 151:35-151:36
4065 _e 4090 _e
4066testdata/Builtins.lc 151:35-151:38 4091testdata/Builtins.lc 151:35-151:38
4067 _d -> Type 4092 _d -> Constraint
4068testdata/Builtins.lc 151:35-151:50 4093testdata/Builtins.lc 151:35-151:50
4069 Type 4094 Constraint
4070testdata/Builtins.lc 151:37-151:38 4095testdata/Builtins.lc 151:37-151:38
4071 forall a . a -> a -> Type 4096 forall a . a -> a -> Constraint
4072testdata/Builtins.lc 151:39-151:42 4097testdata/Builtins.lc 151:39-151:42
4073 Nat -> Type -> Type 4098 Nat -> Type -> Type
4074testdata/Builtins.lc 151:39-151:44 4099testdata/Builtins.lc 151:39-151:44
@@ -4096,11 +4121,11 @@ testdata/Builtins.lc 152:34-152:76
4096testdata/Builtins.lc 152:35-152:36 4121testdata/Builtins.lc 152:35-152:36
4097 _e 4122 _e
4098testdata/Builtins.lc 152:35-152:38 4123testdata/Builtins.lc 152:35-152:38
4099 _d -> Type 4124 _d -> Constraint
4100testdata/Builtins.lc 152:35-152:56 4125testdata/Builtins.lc 152:35-152:56
4101 Type 4126 Constraint
4102testdata/Builtins.lc 152:37-152:38 4127testdata/Builtins.lc 152:37-152:38
4103 forall a . a -> a -> Type 4128 forall a . a -> a -> Constraint
4104testdata/Builtins.lc 152:39-152:48 4129testdata/Builtins.lc 152:39-152:48
4105 Nat -> Type -> Type 4130 Nat -> Type -> Type
4106testdata/Builtins.lc 152:39-152:50 4131testdata/Builtins.lc 152:39-152:50
@@ -4128,11 +4153,11 @@ testdata/Builtins.lc 153:34-153:71
4128testdata/Builtins.lc 153:35-153:36 4153testdata/Builtins.lc 153:35-153:36
4129 _e 4154 _e
4130testdata/Builtins.lc 153:35-153:38 4155testdata/Builtins.lc 153:35-153:38
4131 _d -> Type 4156 _d -> Constraint
4132testdata/Builtins.lc 153:35-153:50 4157testdata/Builtins.lc 153:35-153:50
4133 Type 4158 Constraint
4134testdata/Builtins.lc 153:37-153:38 4159testdata/Builtins.lc 153:37-153:38
4135 forall a . a -> a -> Type 4160 forall a . a -> a -> Constraint
4136testdata/Builtins.lc 153:39-153:42 4161testdata/Builtins.lc 153:39-153:42
4137 Nat -> Type -> Type 4162 Nat -> Type -> Type
4138testdata/Builtins.lc 153:39-153:44 4163testdata/Builtins.lc 153:39-153:44
@@ -4164,11 +4189,11 @@ testdata/Builtins.lc 154:34-154:85
4164testdata/Builtins.lc 154:35-154:36 4189testdata/Builtins.lc 154:35-154:36
4165 _e 4190 _e
4166testdata/Builtins.lc 154:35-154:38 4191testdata/Builtins.lc 154:35-154:38
4167 _d -> Type 4192 _d -> Constraint
4168testdata/Builtins.lc 154:35-154:56 4193testdata/Builtins.lc 154:35-154:56
4169 Type 4194 Constraint
4170testdata/Builtins.lc 154:37-154:38 4195testdata/Builtins.lc 154:37-154:38
4171 forall a . a -> a -> Type 4196 forall a . a -> a -> Constraint
4172testdata/Builtins.lc 154:39-154:48 4197testdata/Builtins.lc 154:39-154:48
4173 Nat -> Type -> Type 4198 Nat -> Type -> Type
4174testdata/Builtins.lc 154:39-154:50 4199testdata/Builtins.lc 154:39-154:50
@@ -4296,11 +4321,11 @@ testdata/Builtins.lc 162:34-162:71
4296testdata/Builtins.lc 162:35-162:36 4321testdata/Builtins.lc 162:35-162:36
4297 _e 4322 _e
4298testdata/Builtins.lc 162:35-162:38 4323testdata/Builtins.lc 162:35-162:38
4299 _d -> Type 4324 _d -> Constraint
4300testdata/Builtins.lc 162:35-162:56 4325testdata/Builtins.lc 162:35-162:56
4301 Type 4326 Constraint
4302testdata/Builtins.lc 162:37-162:38 4327testdata/Builtins.lc 162:37-162:38
4303 forall a . a -> a -> Type 4328 forall a . a -> a -> Constraint
4304testdata/Builtins.lc 162:39-162:48 4329testdata/Builtins.lc 162:39-162:48
4305 Nat -> Type -> Type 4330 Nat -> Type -> Type
4306testdata/Builtins.lc 162:39-162:50 4331testdata/Builtins.lc 162:39-162:50
@@ -4326,11 +4351,11 @@ testdata/Builtins.lc 163:34-163:76
4326testdata/Builtins.lc 163:35-163:36 4351testdata/Builtins.lc 163:35-163:36
4327 _e | _e 4352 _e | _e
4328testdata/Builtins.lc 163:35-163:38 4353testdata/Builtins.lc 163:35-163:38
4329 _d -> Type | _d -> Type 4354 _d -> Constraint | _d -> Constraint
4330testdata/Builtins.lc 163:35-163:56 4355testdata/Builtins.lc 163:35-163:56
4331 Type | Type 4356 Constraint | Constraint
4332testdata/Builtins.lc 163:37-163:38 4357testdata/Builtins.lc 163:37-163:38
4333 forall a . a -> a -> Type | forall a . a -> a -> Type 4358 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
4334testdata/Builtins.lc 163:39-163:48 4359testdata/Builtins.lc 163:39-163:48
4335 Nat -> Type -> Type | Nat -> Type -> Type 4360 Nat -> Type -> Type | Nat -> Type -> Type
4336testdata/Builtins.lc 163:39-163:50 4361testdata/Builtins.lc 163:39-163:50
@@ -4358,11 +4383,11 @@ testdata/Builtins.lc 164:34-164:72
4358testdata/Builtins.lc 164:35-164:36 4383testdata/Builtins.lc 164:35-164:36
4359 _c 4384 _c
4360testdata/Builtins.lc 164:35-164:38 4385testdata/Builtins.lc 164:35-164:38
4361 _b -> Type 4386 _b -> Constraint
4362testdata/Builtins.lc 164:35-164:56 4387testdata/Builtins.lc 164:35-164:56
4363 Type 4388 Constraint
4364testdata/Builtins.lc 164:37-164:38 4389testdata/Builtins.lc 164:37-164:38
4365 forall a . a -> a -> Type 4390 forall a . a -> a -> Constraint
4366testdata/Builtins.lc 164:39-164:48 4391testdata/Builtins.lc 164:39-164:48
4367 Nat -> Type -> Type 4392 Nat -> Type -> Type
4368testdata/Builtins.lc 164:39-164:50 4393testdata/Builtins.lc 164:39-164:50
@@ -4390,11 +4415,11 @@ testdata/Builtins.lc 165:34-165:67
4390testdata/Builtins.lc 165:35-165:36 4415testdata/Builtins.lc 165:35-165:36
4391 _e 4416 _e
4392testdata/Builtins.lc 165:35-165:38 4417testdata/Builtins.lc 165:35-165:38
4393 _d -> Type 4418 _d -> Constraint
4394testdata/Builtins.lc 165:35-165:56 4419testdata/Builtins.lc 165:35-165:56
4395 Type 4420 Constraint
4396testdata/Builtins.lc 165:37-165:38 4421testdata/Builtins.lc 165:37-165:38
4397 forall a . a -> a -> Type 4422 forall a . a -> a -> Constraint
4398testdata/Builtins.lc 165:39-165:48 4423testdata/Builtins.lc 165:39-165:48
4399 Nat -> Type -> Type 4424 Nat -> Type -> Type
4400testdata/Builtins.lc 165:39-165:50 4425testdata/Builtins.lc 165:39-165:50
@@ -4420,11 +4445,11 @@ testdata/Builtins.lc 166:34-166:77
4420testdata/Builtins.lc 166:35-166:36 4445testdata/Builtins.lc 166:35-166:36
4421 _e | _e 4446 _e | _e
4422testdata/Builtins.lc 166:35-166:38 4447testdata/Builtins.lc 166:35-166:38
4423 _d -> Type | _d -> Type 4448 _d -> Constraint | _d -> Constraint
4424testdata/Builtins.lc 166:35-166:56 4449testdata/Builtins.lc 166:35-166:56
4425 Type | Type 4450 Constraint | Constraint
4426testdata/Builtins.lc 166:37-166:38 4451testdata/Builtins.lc 166:37-166:38
4427 forall a . a -> a -> Type | forall a . a -> a -> Type 4452 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
4428testdata/Builtins.lc 166:39-166:48 4453testdata/Builtins.lc 166:39-166:48
4429 Nat -> Type -> Type | Nat -> Type -> Type 4454 Nat -> Type -> Type | Nat -> Type -> Type
4430testdata/Builtins.lc 166:39-166:50 4455testdata/Builtins.lc 166:39-166:50
@@ -4456,11 +4481,11 @@ testdata/Builtins.lc 167:34-167:72
4456testdata/Builtins.lc 167:35-167:36 4481testdata/Builtins.lc 167:35-167:36
4457 _e 4482 _e
4458testdata/Builtins.lc 167:35-167:38 4483testdata/Builtins.lc 167:35-167:38
4459 _d -> Type 4484 _d -> Constraint
4460testdata/Builtins.lc 167:35-167:56 4485testdata/Builtins.lc 167:35-167:56
4461 Type 4486 Constraint
4462testdata/Builtins.lc 167:37-167:38 4487testdata/Builtins.lc 167:37-167:38
4463 forall a . a -> a -> Type 4488 forall a . a -> a -> Constraint
4464testdata/Builtins.lc 167:39-167:48 4489testdata/Builtins.lc 167:39-167:48
4465 Nat -> Type -> Type 4490 Nat -> Type -> Type
4466testdata/Builtins.lc 167:39-167:50 4491testdata/Builtins.lc 167:39-167:50
@@ -4754,24 +4779,25 @@ testdata/Builtins.lc 177:85-177:98
4754testdata/Builtins.lc 178:51-178:114 4779testdata/Builtins.lc 178:51-178:114
4755 Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type 4780 Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type | Type
4756testdata/Builtins.lc 178:52-178:55 4781testdata/Builtins.lc 178:52-178:55
4757 Type -> Type | Type -> Type | Type -> Type | Type -> Type | Type -> Type | Type 4782 Type -> Constraint | Type -> Constraint | Type -> Constraint | Type
4758 -> Type 4783 -> Constraint | Type -> Constraint | Type -> Constraint
4759testdata/Builtins.lc 178:52-178:57 4784testdata/Builtins.lc 178:52-178:57
4760 Type | Type | Type | Type | Type | Type 4785 Constraint | Constraint | Constraint | Constraint | Constraint | Constraint
4761testdata/Builtins.lc 178:56-178:57 4786testdata/Builtins.lc 178:56-178:57
4762 _d | _d | _d | _d | _d | _d 4787 _d | _d | _d | _d | _d | _d
4763testdata/Builtins.lc 178:59-178:60 4788testdata/Builtins.lc 178:59-178:60
4764 _i | _i | _i | _i | _i | _i 4789 _i | _i | _i | _i | _i | _i
4765testdata/Builtins.lc 178:59-178:62 4790testdata/Builtins.lc 178:59-178:62
4766 _h -> Type | _h -> Type | _h -> Type | _h -> Type | _h -> Type | _h -> Type 4791 _h -> Constraint | _h -> Constraint | _h -> Constraint | _h -> Constraint | _h
4792 -> Constraint | _h -> Constraint
4767testdata/Builtins.lc 178:59-178:76 4793testdata/Builtins.lc 178:59-178:76
4768 Type | Type | Type | Type | Type | Type 4794 Constraint | Constraint | Constraint | Constraint | Constraint | Constraint
4769testdata/Builtins.lc 178:59-178:114 4795testdata/Builtins.lc 178:59-178:114
4770 Type | Type | Type | Type | Type | Type 4796 Type | Type | Type | Type | Type | Type
4771testdata/Builtins.lc 178:61-178:62 4797testdata/Builtins.lc 178:61-178:62
4772 forall a . a -> a -> Type | forall a . a -> a -> Type | forall a 4798 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
4773 . a -> a -> Type | forall a . a -> a -> Type | forall a 4799 . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
4774 . a -> a -> Type | forall a . a -> a -> Type 4800 . a -> a -> Constraint | forall a . a -> a -> Constraint
4775testdata/Builtins.lc 178:63-178:72 4801testdata/Builtins.lc 178:63-178:72
4776 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type | Nat 4802 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type | Nat
4777 -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type 4803 -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type
@@ -4787,15 +4813,16 @@ testdata/Builtins.lc 178:75-178:76
4787testdata/Builtins.lc 178:78-178:79 4813testdata/Builtins.lc 178:78-178:79
4788 _e | _e | _e | _e | _e | _e 4814 _e | _e | _e | _e | _e | _e
4789testdata/Builtins.lc 178:78-178:81 4815testdata/Builtins.lc 178:78-178:81
4790 _d -> Type | _d -> Type | _d -> Type | _d -> Type | _d -> Type | _d -> Type 4816 _d -> Constraint | _d -> Constraint | _d -> Constraint | _d -> Constraint | _d
4817 -> Constraint | _d -> Constraint
4791testdata/Builtins.lc 178:78-178:98 4818testdata/Builtins.lc 178:78-178:98
4792 Type | Type | Type | Type | Type | Type 4819 Constraint | Constraint | Constraint | Constraint | Constraint | Constraint
4793testdata/Builtins.lc 178:78-178:114 4820testdata/Builtins.lc 178:78-178:114
4794 Type | Type | Type | Type | Type | Type 4821 Type | Type | Type | Type | Type | Type
4795testdata/Builtins.lc 178:80-178:81 4822testdata/Builtins.lc 178:80-178:81
4796 forall a . a -> a -> Type | forall a . a -> a -> Type | forall a 4823 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
4797 . a -> a -> Type | forall a . a -> a -> Type | forall a 4824 . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
4798 . a -> a -> Type | forall a . a -> a -> Type 4825 . a -> a -> Constraint | forall a . a -> a -> Constraint
4799testdata/Builtins.lc 178:82-178:91 4826testdata/Builtins.lc 178:82-178:91
4800 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type | Nat 4827 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type | Nat
4801 -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type 4828 -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type
@@ -4827,11 +4854,11 @@ testdata/Builtins.lc 179:47-179:89
4827testdata/Builtins.lc 179:48-179:49 4854testdata/Builtins.lc 179:48-179:49
4828 _c | _c 4855 _c | _c
4829testdata/Builtins.lc 179:48-179:51 4856testdata/Builtins.lc 179:48-179:51
4830 _b -> Type | _b -> Type 4857 _b -> Constraint | _b -> Constraint
4831testdata/Builtins.lc 179:48-179:70 4858testdata/Builtins.lc 179:48-179:70
4832 Type | Type 4859 Constraint | Constraint
4833testdata/Builtins.lc 179:50-179:51 4860testdata/Builtins.lc 179:50-179:51
4834 forall a . a -> a -> Type | forall a . a -> a -> Type 4861 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint
4835testdata/Builtins.lc 179:52-179:68 4862testdata/Builtins.lc 179:52-179:68
4836 Type -> Type | Type -> Type 4863 Type -> Type | Type -> Type
4837testdata/Builtins.lc 179:52-179:70 4864testdata/Builtins.lc 179:52-179:70
@@ -4859,12 +4886,12 @@ testdata/Builtins.lc 182:34-182:67
4859testdata/Builtins.lc 182:35-182:36 4886testdata/Builtins.lc 182:35-182:36
4860 _e | _e | _e 4887 _e | _e | _e
4861testdata/Builtins.lc 182:35-182:38 4888testdata/Builtins.lc 182:35-182:38
4862 _d -> Type | _d -> Type | _d -> Type 4889 _d -> Constraint | _d -> Constraint | _d -> Constraint
4863testdata/Builtins.lc 182:35-182:56 4890testdata/Builtins.lc 182:35-182:56
4864 Type | Type | Type 4891 Constraint | Constraint | Constraint
4865testdata/Builtins.lc 182:37-182:38 4892testdata/Builtins.lc 182:37-182:38
4866 forall a . a -> a -> Type | forall a . a -> a -> Type | forall a 4893 forall a . a -> a -> Constraint | forall a . a -> a -> Constraint | forall a
4867 . a -> a -> Type 4894 . a -> a -> Constraint
4868testdata/Builtins.lc 182:39-182:48 4895testdata/Builtins.lc 182:39-182:48
4869 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type 4896 Nat -> Type -> Type | Nat -> Type -> Type | Nat -> Type -> Type
4870testdata/Builtins.lc 182:39-182:50 4897testdata/Builtins.lc 182:39-182:50
@@ -5306,11 +5333,11 @@ testdata/Builtins.lc 260:32-260:119
5306testdata/Builtins.lc 260:56-260:57 5333testdata/Builtins.lc 260:56-260:57
5307 _e 5334 _e
5308testdata/Builtins.lc 260:56-260:59 5335testdata/Builtins.lc 260:56-260:59
5309 _d -> Type 5336 _d -> Constraint
5310testdata/Builtins.lc 260:56-260:75 5337testdata/Builtins.lc 260:56-260:75
5311 Type 5338 Constraint
5312testdata/Builtins.lc 260:58-260:59 5339testdata/Builtins.lc 260:58-260:59
5313 forall a . a -> a -> Type 5340 forall a . a -> a -> Constraint
5314testdata/Builtins.lc 260:60-260:63 5341testdata/Builtins.lc 260:60-260:63
5315 forall a b . (a -> b) -> [a] -> [b] 5342 forall a b . (a -> b) -> [a] -> [b]
5316testdata/Builtins.lc 260:60-260:72 5343testdata/Builtins.lc 260:60-260:72
@@ -5406,15 +5433,15 @@ testdata/Builtins.lc 266:78-266:81
5406testdata/Builtins.lc 266:78-266:84 5433testdata/Builtins.lc 266:78-266:84
5407 Int 5434 Int
5408testdata/Builtins.lc 266:78-266:86 5435testdata/Builtins.lc 266:78-266:86
5409 Int -> Type 5436 Int -> Constraint
5410testdata/Builtins.lc 266:78-266:92 5437testdata/Builtins.lc 266:78-266:92
5411 Type 5438 Constraint
5412testdata/Builtins.lc 266:78-266:123 5439testdata/Builtins.lc 266:78-266:123
5413 Type 5440 Type
5414testdata/Builtins.lc 266:82-266:84 5441testdata/Builtins.lc 266:82-266:84
5415 [String] 5442 [String]
5416testdata/Builtins.lc 266:85-266:86 5443testdata/Builtins.lc 266:85-266:86
5417 forall a . a -> a -> Type 5444 forall a . a -> a -> Constraint
5418testdata/Builtins.lc 266:87-266:90 5445testdata/Builtins.lc 266:87-266:90
5419 forall a . [a] -> Int 5446 forall a . [a] -> Int
5420testdata/Builtins.lc 266:87-266:92 5447testdata/Builtins.lc 266:87-266:92
@@ -5763,21 +5790,21 @@ testdata/Builtins.lc 308:1-308:11
5763testdata/Builtins.lc 308:45-309:55 5790testdata/Builtins.lc 308:45-309:55
5764 Type | Type | Type | Type 5791 Type | Type | Type | Type
5765testdata/Builtins.lc 308:46-308:49 5792testdata/Builtins.lc 308:46-308:49
5766 Type -> Type 5793 Type -> Constraint
5767testdata/Builtins.lc 308:46-308:51 5794testdata/Builtins.lc 308:46-308:51
5768 Type 5795 Constraint
5769testdata/Builtins.lc 308:50-308:51 5796testdata/Builtins.lc 308:50-308:51
5770 _d 5797 _d
5771testdata/Builtins.lc 308:53-308:58 5798testdata/Builtins.lc 308:53-308:58
5772 _d 5799 _d
5773testdata/Builtins.lc 308:53-308:60 5800testdata/Builtins.lc 308:53-308:60
5774 _c -> Type 5801 _c -> Constraint
5775testdata/Builtins.lc 308:53-308:74 5802testdata/Builtins.lc 308:53-308:74
5776 Type 5803 Constraint
5777testdata/Builtins.lc 308:53-309:55 5804testdata/Builtins.lc 308:53-309:55
5778 Type 5805 Type
5779testdata/Builtins.lc 308:59-308:60 5806testdata/Builtins.lc 308:59-308:60
5780 forall a . a -> a -> Type 5807 forall a . a -> a -> Constraint
5781testdata/Builtins.lc 308:61-308:70 5808testdata/Builtins.lc 308:61-308:70
5782 Nat -> Type -> Type 5809 Nat -> Type -> Type
5783testdata/Builtins.lc 308:61-308:72 5810testdata/Builtins.lc 308:61-308:72
@@ -6391,9 +6418,9 @@ testdata/Builtins.lc 462:3-462:70
6391testdata/Builtins.lc 462:26-462:70 6418testdata/Builtins.lc 462:26-462:70
6392 Type 6419 Type
6393testdata/Builtins.lc 462:27-462:35 6420testdata/Builtins.lc 462:27-462:35
6394 Type -> Type 6421 Type -> Constraint
6395testdata/Builtins.lc 462:27-462:37 6422testdata/Builtins.lc 462:27-462:37
6396 Type 6423 Constraint
6397testdata/Builtins.lc 462:36-462:37 6424testdata/Builtins.lc 462:36-462:37
6398 _b 6425 _b
6399testdata/Builtins.lc 462:42-462:56 6426testdata/Builtins.lc 462:42-462:56
@@ -6482,9 +6509,9 @@ testdata/Builtins.lc 471:3-471:10
6482testdata/Builtins.lc 471:3-471:112 6509testdata/Builtins.lc 471:3-471:112
6483 Type | Type | Type | Type | Type | Type 6510 Type | Type | Type | Type | Type | Type
6484testdata/Builtins.lc 471:26-471:29 6511testdata/Builtins.lc 471:26-471:29
6485 Type -> Type 6512 Type -> Constraint
6486testdata/Builtins.lc 471:26-471:31 6513testdata/Builtins.lc 471:26-471:31
6487 Type 6514 Constraint
6488testdata/Builtins.lc 471:26-471:112 6515testdata/Builtins.lc 471:26-471:112
6489 Type | Type 6516 Type | Type
6490testdata/Builtins.lc 471:30-471:31 6517testdata/Builtins.lc 471:30-471:31
@@ -6577,9 +6604,9 @@ testdata/Builtins.lc 476:11-476:24
6577testdata/Builtins.lc 477:26-477:56 6604testdata/Builtins.lc 477:26-477:56
6578 Type | Type 6605 Type | Type
6579testdata/Builtins.lc 477:27-477:35 6606testdata/Builtins.lc 477:27-477:35
6580 Type -> Type | Type -> Type 6607 Type -> Constraint | Type -> Constraint
6581testdata/Builtins.lc 477:27-477:37 6608testdata/Builtins.lc 477:27-477:37
6582 Type | Type 6609 Constraint | Constraint
6583testdata/Builtins.lc 477:36-477:37 6610testdata/Builtins.lc 477:36-477:37
6584 Type | Type 6611 Type | Type
6585testdata/Builtins.lc 477:42-477:54 6612testdata/Builtins.lc 477:42-477:54
@@ -6612,27 +6639,27 @@ testdata/Builtins.lc 481:10-481:26
6612testdata/Builtins.lc 481:10-481:28 6639testdata/Builtins.lc 481:10-481:28
6613 [Type] 6640 [Type]
6614testdata/Builtins.lc 481:10-481:30 6641testdata/Builtins.lc 481:10-481:30
6615 [Type] -> Type 6642 [Type] -> Constraint
6616testdata/Builtins.lc 481:10-481:44 6643testdata/Builtins.lc 481:10-481:44
6617 Type 6644 Constraint
6618testdata/Builtins.lc 481:14-481:26 6645testdata/Builtins.lc 481:14-481:26
6619 Type -> Type 6646 Type -> Type
6620testdata/Builtins.lc 481:27-481:28 6647testdata/Builtins.lc 481:27-481:28
6621 _h 6648 _h
6622testdata/Builtins.lc 481:29-481:30 6649testdata/Builtins.lc 481:29-481:30
6623 forall a . a -> a -> Type 6650 forall a . a -> a -> Constraint
6624testdata/Builtins.lc 481:31-481:44 6651testdata/Builtins.lc 481:31-481:44
6625 _f 6652 _f
6626testdata/Builtins.lc 482:10-482:11 6653testdata/Builtins.lc 482:10-482:11
6627 _f 6654 _f
6628testdata/Builtins.lc 482:10-482:13 6655testdata/Builtins.lc 482:10-482:13
6629 _e -> Type 6656 _e -> Constraint
6630testdata/Builtins.lc 482:10-482:28 6657testdata/Builtins.lc 482:10-482:28
6631 Type 6658 Constraint
6632testdata/Builtins.lc 482:10-486:34 6659testdata/Builtins.lc 482:10-486:34
6633 Type 6660 Type
6634testdata/Builtins.lc 482:12-482:13 6661testdata/Builtins.lc 482:12-482:13
6635 forall a . a -> a -> Type 6662 forall a . a -> a -> Constraint
6636testdata/Builtins.lc 482:14-482:17 6663testdata/Builtins.lc 482:14-482:17
6637 Nat -> Type -> Type 6664 Nat -> Type -> Type
6638testdata/Builtins.lc 482:14-482:19 6665testdata/Builtins.lc 482:14-482:19
@@ -6747,44 +6774,44 @@ testdata/Builtins.lc 490:58-490:59
6747 Nat 6774 Nat
6748testdata/Builtins.lc 492:12-492:15 6775testdata/Builtins.lc 492:12-492:15
6749 Type 6776 Type
6750testdata/Builtins.lc 492:12-492:23 6777testdata/Builtins.lc 492:12-492:29
6751 Type 6778 Type
6752testdata/Builtins.lc 492:12-495:50 6779testdata/Builtins.lc 492:12-495:50
6753 forall a . [a] -> Type 6780 forall a . [a] -> Constraint
6754testdata/Builtins.lc 492:13-492:14 6781testdata/Builtins.lc 492:13-492:14
6755 _b 6782 _b
6756testdata/Builtins.lc 492:19-492:23 6783testdata/Builtins.lc 492:19-492:29
6757 Type | Type 6784 Type | Type
6758testdata/Builtins.lc 493:1-493:8 6785testdata/Builtins.lc 493:1-493:8
6759 forall a . [a] -> Type 6786 forall a . [a] -> Constraint
6760testdata/Builtins.lc 493:14-493:19 6787testdata/Builtins.lc 493:14-493:20
6761 Type 6788 Constraint
6762testdata/Builtins.lc 493:14-495:50 6789testdata/Builtins.lc 493:14-495:50
6763 [_a] -> Type | Type 6790 [_a] -> Constraint | Constraint
6764testdata/Builtins.lc 494:15-494:20 6791testdata/Builtins.lc 494:15-494:21
6765 Type 6792 Constraint
6766testdata/Builtins.lc 494:15-495:50 6793testdata/Builtins.lc 494:15-495:50
6767 [_c] -> Type | Type 6794 [_c] -> Constraint | Constraint
6768testdata/Builtins.lc 495:22-495:25 6795testdata/Builtins.lc 495:22-495:25
6769 Type -> Type -> Type 6796 Constraint -> Constraint -> Constraint
6770testdata/Builtins.lc 495:22-495:33 6797testdata/Builtins.lc 495:22-495:33
6771 Type -> Type 6798 Constraint -> Constraint
6772testdata/Builtins.lc 495:22-495:50 6799testdata/Builtins.lc 495:22-495:50
6773 Type 6800 Constraint
6774testdata/Builtins.lc 495:27-495:28 6801testdata/Builtins.lc 495:27-495:28
6775 _g 6802 _g
6776testdata/Builtins.lc 495:27-495:30 6803testdata/Builtins.lc 495:27-495:30
6777 _f -> Type 6804 _f -> Constraint
6778testdata/Builtins.lc 495:27-495:32 6805testdata/Builtins.lc 495:27-495:32
6779 Type 6806 Constraint
6780testdata/Builtins.lc 495:29-495:30 6807testdata/Builtins.lc 495:29-495:30
6781 forall a . a -> a -> Type 6808 forall a . a -> a -> Constraint
6782testdata/Builtins.lc 495:31-495:32 6809testdata/Builtins.lc 495:31-495:32
6783 _c 6810 _c
6784testdata/Builtins.lc 495:35-495:42 6811testdata/Builtins.lc 495:35-495:42
6785 forall a . [a] -> Type 6812 forall a . [a] -> Constraint
6786testdata/Builtins.lc 495:35-495:49 6813testdata/Builtins.lc 495:35-495:49
6787 Type 6814 Constraint
6788testdata/Builtins.lc 495:44-495:45 6815testdata/Builtins.lc 495:44-495:45
6789 _g 6816 _g
6790testdata/Builtins.lc 495:44-495:46 6817testdata/Builtins.lc 495:44-495:46
@@ -6796,11 +6823,11 @@ testdata/Builtins.lc 495:45-495:46
6796testdata/Builtins.lc 495:46-495:48 6823testdata/Builtins.lc 495:46-495:48
6797 [_e] 6824 [_e]
6798testdata/Builtins.lc 497:1-497:16 6825testdata/Builtins.lc 497:1-497:16
6799 [Type] -> Type 6826 [Type] -> Constraint
6800testdata/Builtins.lc 497:21-497:28 6827testdata/Builtins.lc 497:21-497:28
6801 forall a . [a] -> Type 6828 forall a . [a] -> Constraint
6802testdata/Builtins.lc 497:21-497:45 6829testdata/Builtins.lc 497:21-497:45
6803 Type 6830 Constraint
6804testdata/Builtins.lc 497:30-497:33 6831testdata/Builtins.lc 497:30-497:33
6805 forall a b . (a -> b) -> [a] -> [b] 6832 forall a b . (a -> b) -> [a] -> [b]
6806testdata/Builtins.lc 497:30-497:42 6833testdata/Builtins.lc 497:30-497:42
@@ -6881,11 +6908,11 @@ testdata/Builtins.lc 517:49-517:174
6881testdata/Builtins.lc 517:50-517:51 6908testdata/Builtins.lc 517:50-517:51
6882 _e 6909 _e
6883testdata/Builtins.lc 517:50-517:53 6910testdata/Builtins.lc 517:50-517:53
6884 _d -> Type 6911 _d -> Constraint
6885testdata/Builtins.lc 517:50-517:81 6912testdata/Builtins.lc 517:50-517:81
6886 Type 6913 Constraint
6887testdata/Builtins.lc 517:52-517:53 6914testdata/Builtins.lc 517:52-517:53
6888 forall a . a -> a -> Type 6915 forall a . a -> a -> Constraint
6889testdata/Builtins.lc 517:54-517:57 6916testdata/Builtins.lc 517:54-517:57
6890 forall a b . (a -> b) -> [a] -> [b] 6917 forall a b . (a -> b) -> [a] -> [b]
6891testdata/Builtins.lc 517:54-517:79 6918testdata/Builtins.lc 517:54-517:79
@@ -7005,9 +7032,9 @@ testdata/Builtins.lc 530:31-530:35
7005testdata/Builtins.lc 530:40-530:125 7032testdata/Builtins.lc 530:40-530:125
7006 Type 7033 Type
7007testdata/Builtins.lc 530:41-530:56 7034testdata/Builtins.lc 530:41-530:56
7008 [Type] -> Type 7035 [Type] -> Constraint
7009testdata/Builtins.lc 530:41-530:58 7036testdata/Builtins.lc 530:41-530:58
7010 Type 7037 Constraint
7011testdata/Builtins.lc 530:57-530:58 7038testdata/Builtins.lc 530:57-530:58
7012 [Type] 7039 [Type]
7013testdata/Builtins.lc 530:63-530:68 7040testdata/Builtins.lc 530:63-530:68