hetmet_flatten ::
forall g .
- GArrowSTKC g (,) () =>
+ GArrowSTKC g =>
forall x y.
<[ y ]>@g
->
- (g () y)
+ (g (GArrowUnit g) y)
hetmet_flatten x = unG (pga_flatten x)
-- After the flattening pass the argument and result types of this
pga_flatten ::
forall g x y.
<[ y ]>@g ->
- PGArrow g () y
+ PGArrow g (GArrowUnit g) y
pga_flatten = error "hetmet_flatten should never be evaluated; did you forget to compile with -fcoqpass?"
pga_unflatten ::
forall g x y.
- PGArrow g () y ->
+ PGArrow g (GArrowUnit g) y ->
<[ y ]>@g
pga_unflatten = error "hetmet_flatten should never be evaluated; did you forget to compile with -fcoqpass?"
pga_flattened_id ::
forall g x y.
- PGArrow g () y ->
- PGArrow g () y
+ PGArrow g (GArrowUnit g) y ->
+ PGArrow g (GArrowUnit g) y
pga_flattened_id x = x