summaryrefslogtreecommitdiff
path: root/testdata/Builtins.out
diff options
context:
space:
mode:
authorPéter Diviánszky <divipp@gmail.com>2016-04-28 00:55:25 +0200
committerPéter Diviánszky <divipp@gmail.com>2016-04-28 00:55:25 +0200
commit08faa2226162892a8f055fa3cb5d8547a3f90bf5 (patch)
treedf5b1693524bbfdb881856a23d0d4c5851ddbf7c /testdata/Builtins.out
parent4f17b186afdd0b076d3efc06fe844e1f547b805a (diff)
always show parens
Diffstat (limited to 'testdata/Builtins.out')
-rw-r--r--testdata/Builtins.out262
1 files changed, 131 insertions, 131 deletions
diff --git a/testdata/Builtins.out b/testdata/Builtins.out
index 07783eca..aefc3cae 100644
--- a/testdata/Builtins.out
+++ b/testdata/Builtins.out
@@ -5,9 +5,9 @@ id :: {a} -> a->a
5V2 :: {a} -> a -> a -> 'VecS a 2 5V2 :: {a} -> a -> a -> 'VecS a 2
6V3 :: {a} -> a -> a -> a -> 'VecS a 3 6V3 :: {a} -> a -> a -> a -> 'VecS a 3
7V4 :: {a} -> a -> a -> a -> a -> 'VecS a 4 7V4 :: {a} -> a -> a -> a -> a -> 'VecS a 4
8'VecSCase :: {a} -> (b : c:'Nat -> 'VecS a c -> Type) -> (d:a -> e:a -> b 2 (V2 d e)) -> (f:a -> g:a -> h:a -> b 3 (V3 f g h)) -> (i:a -> j:a -> k:a -> l:a -> b 4 (V4 i j k l)) -> {m:'Nat} -> (n : 'VecS a m) -> b m n 8'VecSCase :: {a} -> (b : (c:'Nat) -> 'VecS a c -> Type) -> ((d:a) -> (e:a) -> b 2 (V2 d e)) -> ((f:a) -> (g:a) -> (h:a) -> b 3 (V3 f g h)) -> ((i:a) -> (j:a) -> (k:a) -> (l:a) -> b 4 (V4 i j k l)) -> {m:'Nat} -> (n : 'VecS a m) -> b m n
9match'VecS :: (a : Type->Type) -> (b:Type -> c:'Nat -> a ('VecS b c)) -> d:Type -> a d -> a d 9match'VecS :: (a : Type->Type) -> ((b:Type) -> (c:'Nat) -> a ('VecS b c)) -> (d:Type) -> a d -> a d
10mapVec :: {a} -> {b} -> {c:'Nat} -> a->b -> 'VecS a c -> 'VecS b c 10mapVec :: {a} -> {b} -> {c:'Nat} -> (a->b) -> 'VecS a c -> 'VecS b c
11'Vec :: 'Nat -> Type->Type 11'Vec :: 'Nat -> Type->Type
12'VecScalar :: 'Nat -> Type->Type 12'VecScalar :: 'Nat -> Type->Type
13'Mat :: 'Nat -> 'Nat -> Type->Type 13'Mat :: 'Nat -> 'Nat -> Type->Type
@@ -20,8 +20,8 @@ M43F :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 4 'Float -> 'Mat 4 3 'Float
20M24F :: 'Vec 2 'Float -> 'Vec 2 'Float -> 'Vec 2 'Float -> 'Vec 2 'Float -> 'Mat 2 4 'Float 20M24F :: 'Vec 2 'Float -> 'Vec 2 'Float -> 'Vec 2 'Float -> 'Vec 2 'Float -> 'Mat 2 4 'Float
21M34F :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'Vec 3 'Float -> 'Vec 3 'Float -> 'Mat 3 4 'Float 21M34F :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'Vec 3 'Float -> 'Vec 3 'Float -> 'Mat 3 4 'Float
22M44F :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 4 'Float -> 'Mat 4 4 'Float 22M44F :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 4 'Float -> 'Mat 4 4 'Float
23'MatCase :: (a : b:'Nat -> c:'Nat -> d:Type -> 'Mat b c d -> Type) -> ((e : 'Vec 2 'Float) -> (f : 'Vec 2 'Float) -> a 2 2 'Float (M22F e f)) -> ((g : 'Vec 3 'Float) -> (h : 'Vec 3 'Float) -> a 3 2 'Float (M32F g h)) -> ((i : 'Vec 4 'Float) -> (j : 'Vec 4 'Float) -> a 4 2 'Float (M42F i j)) -> ((k : 'Vec 2 'Float) -> (l : 'Vec 2 'Float) -> (m : 'Vec 2 'Float) -> a 2 3 'Float (M23F k l m)) -> ((n : 'Vec 3 'Float) -> (o : 'Vec 3 'Float) -> (p : 'Vec 3 'Float) -> a 3 3 'Float (M33F n o p)) -> ((q : 'Vec 4 'Float) -> (r : 'Vec 4 'Float) -> (s : 'Vec 4 'Float) -> a 4 3 'Float (M43F q r s)) -> ((t : 'Vec 2 'Float) -> (u : 'Vec 2 'Float) -> (v : 'Vec 2 'Float) -> (w : 'Vec 2 'Float) -> a 2 4 'Float (M24F t u v w)) -> ((x : 'Vec 3 'Float) -> (y : 'Vec 3 'Float) -> (z : 'Vec 3 'Float) -> (a' : 'Vec 3 'Float) -> a 3 4 'Float (M34F x y z a')) -> ((b' : 'Vec 4 'Float) -> (c' : 'Vec 4 'Float) -> (d' : 'Vec 4 'Float) -> (e' : 'Vec 4 'Float) -> a 4 4 'Float (M44F b' c' d' e')) -> {f':'Nat} -> {g':'Nat} -> {h'} -> (i' : 'Mat f' g' h') -> a f' g' h' i' 23'MatCase :: (a : (b:'Nat) -> (c:'Nat) -> (d:Type) -> 'Mat b c d -> Type) -> ((e : 'Vec 2 'Float) -> (f : 'Vec 2 'Float) -> a 2 2 'Float (M22F e f)) -> ((g : 'Vec 3 'Float) -> (h : 'Vec 3 'Float) -> a 3 2 'Float (M32F g h)) -> ((i : 'Vec 4 'Float) -> (j : 'Vec 4 'Float) -> a 4 2 'Float (M42F i j)) -> ((k : 'Vec 2 'Float) -> (l : 'Vec 2 'Float) -> (m : 'Vec 2 'Float) -> a 2 3 'Float (M23F k l m)) -> ((n : 'Vec 3 'Float) -> (o : 'Vec 3 'Float) -> (p : 'Vec 3 'Float) -> a 3 3 'Float (M33F n o p)) -> ((q : 'Vec 4 'Float) -> (r : 'Vec 4 'Float) -> (s : 'Vec 4 'Float) -> a 4 3 'Float (M43F q r s)) -> ((t : 'Vec 2 'Float) -> (u : 'Vec 2 'Float) -> (v : 'Vec 2 'Float) -> (w : 'Vec 2 'Float) -> a 2 4 'Float (M24F t u v w)) -> ((x : 'Vec 3 'Float) -> (y : 'Vec 3 'Float) -> (z : 'Vec 3 'Float) -> (a' : 'Vec 3 'Float) -> a 3 4 'Float (M34F x y z a')) -> ((b' : 'Vec 4 'Float) -> (c' : 'Vec 4 'Float) -> (d' : 'Vec 4 'Float) -> (e' : 'Vec 4 'Float) -> a 4 4 'Float (M44F b' c' d' e')) -> {f':'Nat} -> {g':'Nat} -> {h'} -> (i' : 'Mat f' g' h') -> a f' g' h' i'
24match'Mat :: (a : Type->Type) -> (b:'Nat -> c:'Nat -> d:Type -> a ('Mat b c d)) -> e:Type -> a e -> a e 24match'Mat :: (a : Type->Type) -> ((b:'Nat) -> (c:'Nat) -> (d:Type) -> a ('Mat b c d)) -> (e:Type) -> a e -> a e
25'MatVecScalarElem :: Type->Type 25'MatVecScalarElem :: Type->Type
26'Signed :: Type->Type 26'Signed :: Type->Type
27'Component :: Type->Type 27'Component :: Type->Type
@@ -141,34 +141,34 @@ head :: {a} -> 'List a -> a
141++ :: {a} -> 'List a -> 'List a -> 'List a 141++ :: {a} -> 'List a -> 'List a -> 'List a
142foldr :: {a} -> {b} -> (b -> a->a) -> a -> 'List b -> a 142foldr :: {a} -> {b} -> (b -> a->a) -> a -> 'List b -> a
143concat :: {a} -> 'List ('List a) -> 'List a 143concat :: {a} -> 'List ('List a) -> 'List a
144map :: {a} -> {b} -> a->b -> 'List a -> 'List b 144map :: {a} -> {b} -> (a->b) -> 'List a -> 'List b
145concatMap :: {a} -> {b} -> (a -> 'List b) -> 'List a -> 'List b 145concatMap :: {a} -> {b} -> (a -> 'List b) -> 'List a -> 'List b
146len :: {a} -> 'List a -> 'Int 146len :: {a} -> 'List a -> 'Int
147'Maybe :: Type->Type 147'Maybe :: Type->Type
148Nothing :: {a} -> 'Maybe a 148Nothing :: {a} -> 'Maybe a
149Just :: {a} -> a -> 'Maybe a 149Just :: {a} -> a -> 'Maybe a
150'MaybeCase :: {a} -> (b : 'Maybe a -> Type) -> b Nothing -> (c:a -> b (Just c)) -> (d : 'Maybe a) -> b d 150'MaybeCase :: {a} -> (b : 'Maybe a -> Type) -> b Nothing -> ((c:a) -> b (Just c)) -> (d : 'Maybe a) -> b d
151match'Maybe :: (a : Type->Type) -> (b:Type -> a ('Maybe b)) -> c:Type -> a c -> a c 151match'Maybe :: (a : Type->Type) -> ((b:Type) -> a ('Maybe b)) -> (c:Type) -> a c -> a c
152'Vector :: 'Nat -> Type->Type 152'Vector :: 'Nat -> Type->Type
153'VectorCase :: {a:'Nat} -> {b} -> (c : 'Vector a b -> Type) -> (d : 'Vector a b) -> c d 153'VectorCase :: {a:'Nat} -> {b} -> (c : 'Vector a b -> Type) -> (d : 'Vector a b) -> c d
154match'Vector :: (a : Type->Type) -> (b:'Nat -> c:Type -> a ('Vector b c)) -> d:Type -> a d -> a d 154match'Vector :: (a : Type->Type) -> ((b:'Nat) -> (c:Type) -> a ('Vector b c)) -> (d:Type) -> a d -> a d
155'PrimitiveType :: Type 155'PrimitiveType :: Type
156Triangle :: 'PrimitiveType 156Triangle :: 'PrimitiveType
157Line :: 'PrimitiveType 157Line :: 'PrimitiveType
158Point :: 'PrimitiveType 158Point :: 'PrimitiveType
159TriangleAdjacency :: 'PrimitiveType 159TriangleAdjacency :: 'PrimitiveType
160LineAdjacency :: 'PrimitiveType 160LineAdjacency :: 'PrimitiveType
161'PrimitiveTypeCase :: (a : 'PrimitiveType->Type) -> a Triangle -> a Line -> a Point -> a TriangleAdjacency -> a LineAdjacency -> b:'PrimitiveType -> a b 161'PrimitiveTypeCase :: (a : 'PrimitiveType->Type) -> a Triangle -> a Line -> a Point -> a TriangleAdjacency -> a LineAdjacency -> (b:'PrimitiveType) -> a b
162match'PrimitiveType :: (a : Type->Type) -> a 'PrimitiveType -> b:Type -> a b -> a b 162match'PrimitiveType :: (a : Type->Type) -> a 'PrimitiveType -> (b:Type) -> a b -> a b
163'Primitive :: Type -> 'PrimitiveType->Type 163'Primitive :: Type -> 'PrimitiveType->Type
164PrimPoint :: {a} -> a -> 'Primitive a Point 164PrimPoint :: {a} -> a -> 'Primitive a Point
165PrimLine :: {a} -> a -> a -> 'Primitive a Line 165PrimLine :: {a} -> a -> a -> 'Primitive a Line
166PrimTriangle :: {a} -> a -> a -> a -> 'Primitive a Triangle 166PrimTriangle :: {a} -> a -> a -> a -> 'Primitive a Triangle
167'PrimitiveCase :: {a} -> (b : c:'PrimitiveType -> 'Primitive a c -> Type) -> (d:a -> b Point (PrimPoint d)) -> (e:a -> f:a -> b Line (PrimLine e f)) -> (g:a -> h:a -> i:a -> b Triangle (PrimTriangle g h i)) -> {j:'PrimitiveType} -> (k : 'Primitive a j) -> b j k 167'PrimitiveCase :: {a} -> (b : (c:'PrimitiveType) -> 'Primitive a c -> Type) -> ((d:a) -> b Point (PrimPoint d)) -> ((e:a) -> (f:a) -> b Line (PrimLine e f)) -> ((g:a) -> (h:a) -> (i:a) -> b Triangle (PrimTriangle g h i)) -> {j:'PrimitiveType} -> (k : 'Primitive a j) -> b j k
168match'Primitive :: (a : Type->Type) -> (b:Type -> c:'PrimitiveType -> a ('Primitive b c)) -> d:Type -> a d -> a d 168match'Primitive :: (a : Type->Type) -> ((b:Type) -> (c:'PrimitiveType) -> a ('Primitive b c)) -> (d:Type) -> a d -> a d
169mapPrimitive :: {a} -> {b} -> {c:'PrimitiveType} -> a->b -> 'Primitive a c -> 'Primitive b c 169mapPrimitive :: {a} -> {b} -> {c:'PrimitiveType} -> (a->b) -> 'Primitive a c -> 'Primitive b c
170'PrimitiveStream :: 'PrimitiveType -> Type->Type 170'PrimitiveStream :: 'PrimitiveType -> Type->Type
171mapPrimitives :: {a} -> {b} -> {c:'PrimitiveType} -> a->b -> 'List ('Primitive a c) -> 'List ('Primitive b c) 171mapPrimitives :: {a} -> {b} -> {c:'PrimitiveType} -> (a->b) -> 'List ('Primitive a c) -> 'List ('Primitive b c)
172'ListElem :: Type->Type 172'ListElem :: Type->Type
173fetchArrays :: {a:'PrimitiveType} -> {b : 'List Type} -> {c : 'List Type} -> {_ : b ~ map Type Type 'ListElem c} -> 'HList c -> 'PrimitiveStream a ('HList b) 173fetchArrays :: {a:'PrimitiveType} -> {b : 'List Type} -> {c : 'List Type} -> {_ : b ~ map Type Type 'ListElem c} -> 'HList c -> 'PrimitiveStream a ('HList b)
174fetch :: {a:'PrimitiveType} -> {b : 'List Type} -> 'String -> 'HList b -> 'PrimitiveStream a ('HList b) 174fetch :: {a:'PrimitiveType} -> {b : 'List Type} -> 'String -> 'HList b -> 'PrimitiveStream a ('HList b)
@@ -176,28 +176,28 @@ Attribute :: {a} -> 'String->a
176fetchStream :: {a:'PrimitiveType} -> {b : 'List Type} -> 'String -> (c : 'List 'String) -> {_ : len 'String c ~ len Type b} -> 'PrimitiveStream a ('HList b) 176fetchStream :: {a:'PrimitiveType} -> {b : 'List Type} -> 'String -> (c : 'List 'String) -> {_ : len 'String c ~ len Type b} -> 'PrimitiveStream a ('HList b)
177'SimpleFragment :: Type->Type 177'SimpleFragment :: Type->Type
178SimpleFragment :: {a} -> 'Vec 3 'Float -> a -> 'SimpleFragment a 178SimpleFragment :: {a} -> 'Vec 3 'Float -> a -> 'SimpleFragment a
179'SimpleFragmentCase :: {a} -> (b : 'SimpleFragment a -> Type) -> ((c : 'Vec 3 'Float) -> d:a -> b (SimpleFragment c d)) -> (e : 'SimpleFragment a) -> b e 179'SimpleFragmentCase :: {a} -> (b : 'SimpleFragment a -> Type) -> ((c : 'Vec 3 'Float) -> (d:a) -> b (SimpleFragment c d)) -> (e : 'SimpleFragment a) -> b e
180match'SimpleFragment :: (a : Type->Type) -> (b:Type -> a ('SimpleFragment b)) -> c:Type -> a c -> a c 180match'SimpleFragment :: (a : Type->Type) -> ((b:Type) -> a ('SimpleFragment b)) -> (c:Type) -> a c -> a c
181'Fragment :: 'Nat -> Type->Type 181'Fragment :: 'Nat -> Type->Type
182sFragmentCoords :: {a} -> 'SimpleFragment a -> 'VecS 'Float 3 182sFragmentCoords :: {a} -> 'SimpleFragment a -> 'VecS 'Float 3
183sFragmentValue :: {a} -> 'SimpleFragment a -> a 183sFragmentValue :: {a} -> 'SimpleFragment a -> a
184'FragmentStream :: 'Nat -> Type->Type 184'FragmentStream :: 'Nat -> Type->Type
185customizeDepth :: {a} -> {b:'Nat} -> a->'Float -> 'Fragment b a -> 'Fragment b a 185customizeDepth :: {a} -> {b:'Nat} -> (a->'Float) -> 'Fragment b a -> 'Fragment b a
186customizeDepths :: {a} -> {b:'Nat} -> a->'Float -> 'List ('Vector b ('Maybe ('SimpleFragment a))) -> 'List ('Vector b ('Maybe ('SimpleFragment a))) 186customizeDepths :: {a} -> {b:'Nat} -> (a->'Float) -> 'List ('Vector b ('Maybe ('SimpleFragment a))) -> 'List ('Vector b ('Maybe ('SimpleFragment a)))
187filterFragment :: {a} -> {b:'Nat} -> a->'Bool -> 'Fragment b a -> 'Fragment b a 187filterFragment :: {a} -> {b:'Nat} -> (a->'Bool) -> 'Fragment b a -> 'Fragment b a
188filterFragments :: {a} -> {b:'Nat} -> a->'Bool -> 'List ('Vector b ('Maybe ('SimpleFragment a))) -> 'List ('Vector b ('Maybe ('SimpleFragment a))) 188filterFragments :: {a} -> {b:'Nat} -> (a->'Bool) -> 'List ('Vector b ('Maybe ('SimpleFragment a))) -> 'List ('Vector b ('Maybe ('SimpleFragment a)))
189mapFragment :: {a} -> {b} -> {c:'Nat} -> a->b -> 'Fragment c a -> 'Fragment c b 189mapFragment :: {a} -> {b} -> {c:'Nat} -> (a->b) -> 'Fragment c a -> 'Fragment c b
190mapFragments :: {a} -> {b} -> {c:'Nat} -> a->b -> 'List ('Vector c ('Maybe ('SimpleFragment a))) -> 'List ('Vector c ('Maybe ('SimpleFragment b))) 190mapFragments :: {a} -> {b} -> {c:'Nat} -> (a->b) -> 'List ('Vector c ('Maybe ('SimpleFragment a))) -> 'List ('Vector c ('Maybe ('SimpleFragment b)))
191'ImageKind :: Type 191'ImageKind :: Type
192Color :: Type->'ImageKind 192Color :: Type->'ImageKind
193Depth :: 'ImageKind 193Depth :: 'ImageKind
194Stencil :: 'ImageKind 194Stencil :: 'ImageKind
195'ImageKindCase :: (a : 'ImageKind->Type) -> (b:Type -> a (Color b)) -> a Depth -> a Stencil -> c:'ImageKind -> a c 195'ImageKindCase :: (a : 'ImageKind->Type) -> ((b:Type) -> a (Color b)) -> a Depth -> a Stencil -> (c:'ImageKind) -> a c
196match'ImageKind :: (a : Type->Type) -> a 'ImageKind -> b:Type -> a b -> a b 196match'ImageKind :: (a : Type->Type) -> a 'ImageKind -> (b:Type) -> a b -> a b
197imageType :: 'ImageKind->Type 197imageType :: 'ImageKind->Type
198'Image :: 'Nat -> 'ImageKind->Type 198'Image :: 'Nat -> 'ImageKind->Type
199'ImageCase :: {a:'Nat} -> {b:'ImageKind} -> (c : 'Image a b -> Type) -> (d : 'Image a b) -> c d 199'ImageCase :: {a:'Nat} -> {b:'ImageKind} -> (c : 'Image a b -> Type) -> (d : 'Image a b) -> c d
200match'Image :: (a : Type->Type) -> (b:'Nat -> c:'ImageKind -> a ('Image b c)) -> d:Type -> a d -> a d 200match'Image :: (a : Type->Type) -> ((b:'Nat) -> (c:'ImageKind) -> a ('Image b c)) -> (d:Type) -> a d -> a d
201ColorImage :: {a:'Nat} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : d ~ 'VecScalar b c} -> d -> 'Image a (Color d) 201ColorImage :: {a:'Nat} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : d ~ 'VecScalar b c} -> d -> 'Image a (Color d)
202DepthImage :: {a:'Nat} -> 'Float -> 'Image a Depth 202DepthImage :: {a:'Nat} -> 'Float -> 'Image a Depth
203StencilImage :: {a:'Nat} -> 'Int -> 'Image a Stencil 203StencilImage :: {a:'Nat} -> 'Int -> 'Image a Stencil
@@ -208,8 +208,8 @@ Sx :: 'Swizz
208Sy :: 'Swizz 208Sy :: 'Swizz
209Sz :: 'Swizz 209Sz :: 'Swizz
210Sw :: 'Swizz 210Sw :: 'Swizz
211'SwizzCase :: (a : 'Swizz->Type) -> a Sx -> a Sy -> a Sz -> a Sw -> b:'Swizz -> a b 211'SwizzCase :: (a : 'Swizz->Type) -> a Sx -> a Sy -> a Sz -> a Sw -> (b:'Swizz) -> a b
212match'Swizz :: (a : Type->Type) -> a 'Swizz -> b:Type -> a b -> a b 212match'Swizz :: (a : Type->Type) -> a 'Swizz -> (b:Type) -> a b -> a b
213swizzscalar :: {a} -> {b:'Nat} -> 'Vec b a -> 'Swizz->a 213swizzscalar :: {a} -> {b:'Nat} -> 'Vec b a -> 'Swizz->a
214definedVec :: {a} -> {b:'Nat} -> 'Vec b a -> 'Bool 214definedVec :: {a} -> {b:'Nat} -> 'Vec b a -> 'Bool
215swizzvector :: {a} -> {b:'Nat} -> {c:'Nat} -> 'Vec b a -> 'Vec c 'Swizz -> 'VecS a c 215swizzvector :: {a} -> {b:'Nat} -> {c:'Nat} -> 'Vec b a -> 'Vec c 'Swizz -> 'VecS a c
@@ -229,16 +229,16 @@ OneMinusConstantColor :: 'BlendingFactor
229ConstantAlpha :: 'BlendingFactor 229ConstantAlpha :: 'BlendingFactor
230OneMinusConstantAlpha :: 'BlendingFactor 230OneMinusConstantAlpha :: 'BlendingFactor
231SrcAlphaSaturate :: 'BlendingFactor 231SrcAlphaSaturate :: 'BlendingFactor
232'BlendingFactorCase :: (a : 'BlendingFactor->Type) -> a ZeroBF -> a OneBF -> a SrcColor -> a OneMinusSrcColor -> a DstColor -> a OneMinusDstColor -> a SrcAlpha -> a OneMinusSrcAlpha -> a DstAlpha -> a OneMinusDstAlpha -> a ConstantColor -> a OneMinusConstantColor -> a ConstantAlpha -> a OneMinusConstantAlpha -> a SrcAlphaSaturate -> b:'BlendingFactor -> a b 232'BlendingFactorCase :: (a : 'BlendingFactor->Type) -> a ZeroBF -> a OneBF -> a SrcColor -> a OneMinusSrcColor -> a DstColor -> a OneMinusDstColor -> a SrcAlpha -> a OneMinusSrcAlpha -> a DstAlpha -> a OneMinusDstAlpha -> a ConstantColor -> a OneMinusConstantColor -> a ConstantAlpha -> a OneMinusConstantAlpha -> a SrcAlphaSaturate -> (b:'BlendingFactor) -> a b
233match'BlendingFactor :: (a : Type->Type) -> a 'BlendingFactor -> b:Type -> a b -> a b 233match'BlendingFactor :: (a : Type->Type) -> a 'BlendingFactor -> (b:Type) -> a b -> a b
234'BlendEquation :: Type 234'BlendEquation :: Type
235FuncAdd :: 'BlendEquation 235FuncAdd :: 'BlendEquation
236FuncSubtract :: 'BlendEquation 236FuncSubtract :: 'BlendEquation
237FuncReverseSubtract :: 'BlendEquation 237FuncReverseSubtract :: 'BlendEquation
238Min :: 'BlendEquation 238Min :: 'BlendEquation
239Max :: 'BlendEquation 239Max :: 'BlendEquation
240'BlendEquationCase :: (a : 'BlendEquation->Type) -> a FuncAdd -> a FuncSubtract -> a FuncReverseSubtract -> a Min -> a Max -> b:'BlendEquation -> a b 240'BlendEquationCase :: (a : 'BlendEquation->Type) -> a FuncAdd -> a FuncSubtract -> a FuncReverseSubtract -> a Min -> a Max -> (b:'BlendEquation) -> a b
241match'BlendEquation :: (a : Type->Type) -> a 'BlendEquation -> b:Type -> a b -> a b 241match'BlendEquation :: (a : Type->Type) -> a 'BlendEquation -> (b:Type) -> a b -> a b
242'LogicOperation :: Type 242'LogicOperation :: Type
243Clear :: 'LogicOperation 243Clear :: 'LogicOperation
244And :: 'LogicOperation 244And :: 'LogicOperation
@@ -256,8 +256,8 @@ CopyInverted :: 'LogicOperation
256OrInverted :: 'LogicOperation 256OrInverted :: 'LogicOperation
257Nand :: 'LogicOperation 257Nand :: 'LogicOperation
258Set :: 'LogicOperation 258Set :: 'LogicOperation
259'LogicOperationCase :: (a : 'LogicOperation->Type) -> a Clear -> a And -> a AndReverse -> a Copy -> a AndInverted -> a Noop -> a Xor -> a Or -> a Nor -> a Equiv -> a Invert -> a OrReverse -> a CopyInverted -> a OrInverted -> a Nand -> a Set -> b:'LogicOperation -> a b 259'LogicOperationCase :: (a : 'LogicOperation->Type) -> a Clear -> a And -> a AndReverse -> a Copy -> a AndInverted -> a Noop -> a Xor -> a Or -> a Nor -> a Equiv -> a Invert -> a OrReverse -> a CopyInverted -> a OrInverted -> a Nand -> a Set -> (b:'LogicOperation) -> a b
260match'LogicOperation :: (a : Type->Type) -> a 'LogicOperation -> b:Type -> a b -> a b 260match'LogicOperation :: (a : Type->Type) -> a 'LogicOperation -> (b:Type) -> a b -> a b
261'StencilOperation :: Type 261'StencilOperation :: Type
262OpZero :: 'StencilOperation 262OpZero :: 'StencilOperation
263OpKeep :: 'StencilOperation 263OpKeep :: 'StencilOperation
@@ -267,8 +267,8 @@ OpIncrWrap :: 'StencilOperation
267OpDecr :: 'StencilOperation 267OpDecr :: 'StencilOperation
268OpDecrWrap :: 'StencilOperation 268OpDecrWrap :: 'StencilOperation
269OpInvert :: 'StencilOperation 269OpInvert :: 'StencilOperation
270'StencilOperationCase :: (a : 'StencilOperation->Type) -> a OpZero -> a OpKeep -> a OpReplace -> a OpIncr -> a OpIncrWrap -> a OpDecr -> a OpDecrWrap -> a OpInvert -> b:'StencilOperation -> a b 270'StencilOperationCase :: (a : 'StencilOperation->Type) -> a OpZero -> a OpKeep -> a OpReplace -> a OpIncr -> a OpIncrWrap -> a OpDecr -> a OpDecrWrap -> a OpInvert -> (b:'StencilOperation) -> a b
271match'StencilOperation :: (a : Type->Type) -> a 'StencilOperation -> b:Type -> a b -> a b 271match'StencilOperation :: (a : Type->Type) -> a 'StencilOperation -> (b:Type) -> a b -> a b
272'ComparisonFunction :: Type 272'ComparisonFunction :: Type
273Never :: 'ComparisonFunction 273Never :: 'ComparisonFunction
274Less :: 'ComparisonFunction 274Less :: 'ComparisonFunction
@@ -278,72 +278,72 @@ Greater :: 'ComparisonFunction
278Notequal :: 'ComparisonFunction 278Notequal :: 'ComparisonFunction
279Gequal :: 'ComparisonFunction 279Gequal :: 'ComparisonFunction
280Always :: 'ComparisonFunction 280Always :: 'ComparisonFunction
281'ComparisonFunctionCase :: (a : 'ComparisonFunction->Type) -> a Never -> a Less -> a Equal -> a Lequal -> a Greater -> a Notequal -> a Gequal -> a Always -> b:'ComparisonFunction -> a b 281'ComparisonFunctionCase :: (a : 'ComparisonFunction->Type) -> a Never -> a Less -> a Equal -> a Lequal -> a Greater -> a Notequal -> a Gequal -> a Always -> (b:'ComparisonFunction) -> a b
282match'ComparisonFunction :: (a : Type->Type) -> a 'ComparisonFunction -> b:Type -> a b -> a b 282match'ComparisonFunction :: (a : Type->Type) -> a 'ComparisonFunction -> (b:Type) -> a b -> a b
283'ProvokingVertex :: Type 283'ProvokingVertex :: Type
284LastVertex :: 'ProvokingVertex 284LastVertex :: 'ProvokingVertex
285FirstVertex :: 'ProvokingVertex 285FirstVertex :: 'ProvokingVertex
286'ProvokingVertexCase :: (a : 'ProvokingVertex->Type) -> a LastVertex -> a FirstVertex -> b:'ProvokingVertex -> a b 286'ProvokingVertexCase :: (a : 'ProvokingVertex->Type) -> a LastVertex -> a FirstVertex -> (b:'ProvokingVertex) -> a b
287match'ProvokingVertex :: (a : Type->Type) -> a 'ProvokingVertex -> b:Type -> a b -> a b 287match'ProvokingVertex :: (a : Type->Type) -> a 'ProvokingVertex -> (b:Type) -> a b -> a b
288'CullMode :: Type 288'CullMode :: Type
289CullFront :: 'CullMode 289CullFront :: 'CullMode
290CullBack :: 'CullMode 290CullBack :: 'CullMode
291CullNone :: 'CullMode 291CullNone :: 'CullMode
292'CullModeCase :: (a : 'CullMode->Type) -> a CullFront -> a CullBack -> a CullNone -> b:'CullMode -> a b 292'CullModeCase :: (a : 'CullMode->Type) -> a CullFront -> a CullBack -> a CullNone -> (b:'CullMode) -> a b
293match'CullMode :: (a : Type->Type) -> a 'CullMode -> b:Type -> a b -> a b 293match'CullMode :: (a : Type->Type) -> a 'CullMode -> (b:Type) -> a b -> a b
294'PointSize :: Type->Type 294'PointSize :: Type->Type
295PointSize :: {a} -> 'Float -> 'PointSize a 295PointSize :: {a} -> 'Float -> 'PointSize a
296ProgramPointSize :: {a} -> a->'Float -> 'PointSize a 296ProgramPointSize :: {a} -> (a->'Float) -> 'PointSize a
297'PointSizeCase :: {a} -> (b : 'PointSize a -> Type) -> (c:'Float -> b (PointSize c)) -> ((d : a->'Float) -> b (ProgramPointSize d)) -> (e : 'PointSize a) -> b e 297'PointSizeCase :: {a} -> (b : 'PointSize a -> Type) -> ((c:'Float) -> b (PointSize c)) -> ((d : a->'Float) -> b (ProgramPointSize d)) -> (e : 'PointSize a) -> b e
298match'PointSize :: (a : Type->Type) -> (b:Type -> a ('PointSize b)) -> c:Type -> a c -> a c 298match'PointSize :: (a : Type->Type) -> ((b:Type) -> a ('PointSize b)) -> (c:Type) -> a c -> a c
299'PolygonMode :: Type->Type 299'PolygonMode :: Type->Type
300PolygonFill :: {a} -> 'PolygonMode a 300PolygonFill :: {a} -> 'PolygonMode a
301PolygonPoint :: {a} -> 'PointSize a -> 'PolygonMode a 301PolygonPoint :: {a} -> 'PointSize a -> 'PolygonMode a
302PolygonLine :: {a} -> 'Float -> 'PolygonMode a 302PolygonLine :: {a} -> 'Float -> 'PolygonMode a
303'PolygonModeCase :: {a} -> (b : 'PolygonMode a -> Type) -> b PolygonFill -> ((c : 'PointSize a) -> b (PolygonPoint c)) -> (d:'Float -> b (PolygonLine d)) -> (e : 'PolygonMode a) -> b e 303'PolygonModeCase :: {a} -> (b : 'PolygonMode a -> Type) -> b PolygonFill -> ((c : 'PointSize a) -> b (PolygonPoint c)) -> ((d:'Float) -> b (PolygonLine d)) -> (e : 'PolygonMode a) -> b e
304match'PolygonMode :: (a : Type->Type) -> (b:Type -> a ('PolygonMode b)) -> c:Type -> a c -> a c 304match'PolygonMode :: (a : Type->Type) -> ((b:Type) -> a ('PolygonMode b)) -> (c:Type) -> a c -> a c
305'PolygonOffset :: Type 305'PolygonOffset :: Type
306NoOffset :: 'PolygonOffset 306NoOffset :: 'PolygonOffset
307Offset :: 'Float -> 'Float->'PolygonOffset 307Offset :: 'Float -> 'Float->'PolygonOffset
308'PolygonOffsetCase :: (a : 'PolygonOffset->Type) -> a NoOffset -> (b:'Float -> c:'Float -> a (Offset b c)) -> d:'PolygonOffset -> a d 308'PolygonOffsetCase :: (a : 'PolygonOffset->Type) -> a NoOffset -> ((b:'Float) -> (c:'Float) -> a (Offset b c)) -> (d:'PolygonOffset) -> a d
309match'PolygonOffset :: (a : Type->Type) -> a 'PolygonOffset -> b:Type -> a b -> a b 309match'PolygonOffset :: (a : Type->Type) -> a 'PolygonOffset -> (b:Type) -> a b -> a b
310'PointSpriteCoordOrigin :: Type 310'PointSpriteCoordOrigin :: Type
311LowerLeft :: 'PointSpriteCoordOrigin 311LowerLeft :: 'PointSpriteCoordOrigin
312UpperLeft :: 'PointSpriteCoordOrigin 312UpperLeft :: 'PointSpriteCoordOrigin
313'PointSpriteCoordOriginCase :: (a : 'PointSpriteCoordOrigin->Type) -> a LowerLeft -> a UpperLeft -> b:'PointSpriteCoordOrigin -> a b 313'PointSpriteCoordOriginCase :: (a : 'PointSpriteCoordOrigin->Type) -> a LowerLeft -> a UpperLeft -> (b:'PointSpriteCoordOrigin) -> a b
314match'PointSpriteCoordOrigin :: (a : Type->Type) -> a 'PointSpriteCoordOrigin -> b:Type -> a b -> a b 314match'PointSpriteCoordOrigin :: (a : Type->Type) -> a 'PointSpriteCoordOrigin -> (b:Type) -> a b -> a b
315primTexture :: () -> 'Vec 2 'Float -> 'Vec 4 'Float 315primTexture :: () -> 'Vec 2 'Float -> 'Vec 4 'Float
316Uniform :: {a} -> 'String->a 316Uniform :: {a} -> 'String->a
317'RasterContext :: Type -> 'PrimitiveType->Type 317'RasterContext :: Type -> 'PrimitiveType->Type
318TriangleCtx :: {a} -> 'CullMode -> 'PolygonMode a -> 'PolygonOffset -> 'ProvokingVertex -> 'RasterContext a Triangle 318TriangleCtx :: {a} -> 'CullMode -> 'PolygonMode a -> 'PolygonOffset -> 'ProvokingVertex -> 'RasterContext a Triangle
319PointCtx :: {a} -> 'PointSize a -> 'Float -> 'PointSpriteCoordOrigin -> 'RasterContext a Point 319PointCtx :: {a} -> 'PointSize a -> 'Float -> 'PointSpriteCoordOrigin -> 'RasterContext a Point
320LineCtx :: {a} -> 'Float -> 'ProvokingVertex -> 'RasterContext a Line 320LineCtx :: {a} -> 'Float -> 'ProvokingVertex -> 'RasterContext a Line
321'RasterContextCase :: {a} -> (b : c:'PrimitiveType -> 'RasterContext a c -> Type) -> (d:'CullMode -> (e : 'PolygonMode a) -> f:'PolygonOffset -> g:'ProvokingVertex -> b Triangle (TriangleCtx d e f g)) -> ((h : 'PointSize a) -> i:'Float -> j:'PointSpriteCoordOrigin -> b Point (PointCtx h i j)) -> (k:'Float -> l:'ProvokingVertex -> b Line (LineCtx k l)) -> {m:'PrimitiveType} -> (n : 'RasterContext a m) -> b m n 321'RasterContextCase :: {a} -> (b : (c:'PrimitiveType) -> 'RasterContext a c -> Type) -> ((d:'CullMode) -> (e : 'PolygonMode a) -> (f:'PolygonOffset) -> (g:'ProvokingVertex) -> b Triangle (TriangleCtx d e f g)) -> ((h : 'PointSize a) -> (i:'Float) -> (j:'PointSpriteCoordOrigin) -> b Point (PointCtx h i j)) -> ((k:'Float) -> (l:'ProvokingVertex) -> b Line (LineCtx k l)) -> {m:'PrimitiveType} -> (n : 'RasterContext a m) -> b m n
322match'RasterContext :: (a : Type->Type) -> (b:Type -> c:'PrimitiveType -> a ('RasterContext b c)) -> d:Type -> a d -> a d 322match'RasterContext :: (a : Type->Type) -> ((b:Type) -> (c:'PrimitiveType) -> a ('RasterContext b c)) -> (d:Type) -> a d -> a d
323'Blending :: Type->Type 323'Blending :: Type->Type
324NoBlending :: {a} -> 'Blending a 324NoBlending :: {a} -> 'Blending a
325BlendLogicOp :: {a} -> {_ : 'Integral a} -> 'LogicOperation -> 'Blending a 325BlendLogicOp :: {a} -> {_ : 'Integral a} -> 'LogicOperation -> 'Blending a
326Blend :: ('BlendEquation, 'BlendEquation) -> (('BlendingFactor, 'BlendingFactor), ('BlendingFactor, 'BlendingFactor)) -> 'Vec 4 'Float -> 'Blending 'Float 326Blend :: ('BlendEquation, 'BlendEquation) -> (('BlendingFactor, 'BlendingFactor), ('BlendingFactor, 'BlendingFactor)) -> 'Vec 4 'Float -> 'Blending 'Float
327'BlendingCase :: (a : b:Type -> 'Blending b -> Type) -> ({c} -> a c (NoBlending c)) -> ({d} -> {e : 'Integral d} -> f:'LogicOperation -> a d (BlendLogicOp d e f)) -> (g:('BlendEquation, 'BlendEquation) -> h:(('BlendingFactor, 'BlendingFactor), ('BlendingFactor, 'BlendingFactor)) -> (i : 'Vec 4 'Float) -> a 'Float (Blend g h i)) -> {j} -> (k : 'Blending j) -> a j k 327'BlendingCase :: (a : (b:Type) -> 'Blending b -> Type) -> ({c} -> a c (NoBlending c)) -> ({d} -> {e : 'Integral d} -> (f:'LogicOperation) -> a d (BlendLogicOp d e f)) -> ((g:('BlendEquation, 'BlendEquation)) -> (h:(('BlendingFactor, 'BlendingFactor), ('BlendingFactor, 'BlendingFactor))) -> (i : 'Vec 4 'Float) -> a 'Float (Blend g h i)) -> {j} -> (k : 'Blending j) -> a j k
328match'Blending :: (a : Type->Type) -> (b:Type -> a ('Blending b)) -> c:Type -> a c -> a c 328match'Blending :: (a : Type->Type) -> ((b:Type) -> a ('Blending b)) -> (c:Type) -> a c -> a c
329'StencilTests :: Type 329'StencilTests :: Type
330'StencilTestsCase :: (a : 'StencilTests->Type) -> b:'StencilTests -> a b 330'StencilTestsCase :: (a : 'StencilTests->Type) -> (b:'StencilTests) -> a b
331match'StencilTests :: (a : Type->Type) -> a 'StencilTests -> b:Type -> a b -> a b 331match'StencilTests :: (a : Type->Type) -> a 'StencilTests -> (b:Type) -> a b -> a b
332'StencilOps :: Type 332'StencilOps :: Type
333'StencilOpsCase :: (a : 'StencilOps->Type) -> b:'StencilOps -> a b 333'StencilOpsCase :: (a : 'StencilOps->Type) -> (b:'StencilOps) -> a b
334match'StencilOps :: (a : Type->Type) -> a 'StencilOps -> b:Type -> a b -> a b 334match'StencilOps :: (a : Type->Type) -> a 'StencilOps -> (b:Type) -> a b -> a b
335'FragmentOperation :: 'ImageKind->Type 335'FragmentOperation :: 'ImageKind->Type
336ColorOp :: {a} -> {b:'Nat} -> {_ : 'Num a} -> 'Blending a -> 'VecScalar b 'Bool -> 'FragmentOperation (Color ('VecScalar b a)) 336ColorOp :: {a} -> {b:'Nat} -> {_ : 'Num a} -> 'Blending a -> 'VecScalar b 'Bool -> 'FragmentOperation (Color ('VecScalar b a))
337DepthOp :: 'ComparisonFunction -> 'Bool -> 'FragmentOperation Depth 337DepthOp :: 'ComparisonFunction -> 'Bool -> 'FragmentOperation Depth
338StencilOp :: 'StencilTests -> 'StencilOps -> 'StencilOps -> 'FragmentOperation Stencil 338StencilOp :: 'StencilTests -> 'StencilOps -> 'StencilOps -> 'FragmentOperation Stencil
339'FragmentOperationCase :: (a : b:'ImageKind -> 'FragmentOperation b -> Type) -> ({c} -> {d:'Nat} -> {e : 'Num c} -> (f : 'Blending c) -> (g : 'VecScalar d 'Bool) -> a (Color ('VecScalar d c)) (ColorOp c d e f g)) -> (h:'ComparisonFunction -> i:'Bool -> a Depth (DepthOp h i)) -> (j:'StencilTests -> k:'StencilOps -> l:'StencilOps -> a Stencil (StencilOp j k l)) -> {m:'ImageKind} -> (n : 'FragmentOperation m) -> a m n 339'FragmentOperationCase :: (a : (b:'ImageKind) -> 'FragmentOperation b -> Type) -> ({c} -> {d:'Nat} -> {e : 'Num c} -> (f : 'Blending c) -> (g : 'VecScalar d 'Bool) -> a (Color ('VecScalar d c)) (ColorOp c d e f g)) -> ((h:'ComparisonFunction) -> (i:'Bool) -> a Depth (DepthOp h i)) -> ((j:'StencilTests) -> (k:'StencilOps) -> (l:'StencilOps) -> a Stencil (StencilOp j k l)) -> {m:'ImageKind} -> (n : 'FragmentOperation m) -> a m n
340match'FragmentOperation :: (a : Type->Type) -> (b:'ImageKind -> a ('FragmentOperation b)) -> c:Type -> a c -> a c 340match'FragmentOperation :: (a : Type->Type) -> ((b:'ImageKind) -> a ('FragmentOperation b)) -> (c:Type) -> a c -> a c
341'Interpolated :: Type->Type 341'Interpolated :: Type->Type
342Smooth :: {a} -> {_ : 'Floating a} -> 'Interpolated a 342Smooth :: {a} -> {_ : 'Floating a} -> 'Interpolated a
343NoPerspective :: {a} -> {_ : 'Floating a} -> 'Interpolated a 343NoPerspective :: {a} -> {_ : 'Floating a} -> 'Interpolated a
344Flat :: {a} -> 'Interpolated a 344Flat :: {a} -> 'Interpolated a
345'InterpolatedCase :: {a} -> (b : 'Interpolated a -> Type) -> ({c : 'Floating a} -> b (Smooth c)) -> ({d : 'Floating a} -> b (NoPerspective d)) -> b Flat -> (e : 'Interpolated a) -> b e 345'InterpolatedCase :: {a} -> (b : 'Interpolated a -> Type) -> ({c : 'Floating a} -> b (Smooth c)) -> ({d : 'Floating a} -> b (NoPerspective d)) -> b Flat -> (e : 'Interpolated a) -> b e
346match'Interpolated :: (a : Type->Type) -> (b:Type -> a ('Interpolated b)) -> c:Type -> a c -> a c 346match'Interpolated :: (a : Type->Type) -> ((b:Type) -> a ('Interpolated b)) -> (c:Type) -> a c -> a c
347rasterizePrimitive :: {a : 'List Type} -> {b : 'List Type} -> {c : 'List Type} -> {d:'PrimitiveType} -> {_ : map Type Type 'Interpolated a ~ b} -> {_ : c ~ Cons ('Vec 4 'Float) a} -> 'HList b -> 'RasterContext ('HList c) d -> 'Primitive ('HList c) d -> 'FragmentStream 1 ('HList a) 347rasterizePrimitive :: {a : 'List Type} -> {b : 'List Type} -> {c : 'List Type} -> {d:'PrimitiveType} -> {_ : map Type Type 'Interpolated a ~ b} -> {_ : c ~ Cons ('Vec 4 'Float) a} -> 'HList b -> 'RasterContext ('HList c) d -> 'Primitive ('HList c) d -> 'FragmentStream 1 ('HList a)
348rasterizePrimitives :: {a : 'List Type} -> {b:'PrimitiveType} -> 'RasterContext ('HList (Cons ('Vec 4 'Float) a)) b -> 'HList (map Type Type 'Interpolated a) -> 'List ('Primitive ('HList (Cons ('Vec 4 'Float) a)) b) -> 'List ('Vector 1 ('Maybe ('SimpleFragment ('HList a)))) 348rasterizePrimitives :: {a : 'List Type} -> {b:'PrimitiveType} -> 'RasterContext ('HList (Cons ('Vec 4 'Float) a)) b -> 'HList (map Type Type 'Interpolated a) -> 'List ('Primitive ('HList (Cons ('Vec 4 'Float) a)) b) -> 'List ('Vector 1 ('Maybe ('SimpleFragment ('HList a))))
349'ImageLC :: Type->'Nat 349'ImageLC :: Type->'Nat
@@ -351,7 +351,7 @@ allSame :: {a} -> 'List a -> Type
351sameLayerCounts :: 'List Type -> Type 351sameLayerCounts :: 'List Type -> Type
352'FrameBuffer :: 'Nat -> 'List 'ImageKind -> Type 352'FrameBuffer :: 'Nat -> 'List 'ImageKind -> Type
353'FrameBufferCase :: {a:'Nat} -> {b : 'List 'ImageKind} -> (c : 'FrameBuffer a b -> Type) -> (d : 'FrameBuffer a b) -> c d 353'FrameBufferCase :: {a:'Nat} -> {b : 'List 'ImageKind} -> (c : 'FrameBuffer a b -> Type) -> (d : 'FrameBuffer a b) -> c d
354match'FrameBuffer :: (a : Type->Type) -> (b:'Nat -> (c : 'List 'ImageKind) -> a ('FrameBuffer b c)) -> d:Type -> a d -> a d 354match'FrameBuffer :: (a : Type->Type) -> ((b:'Nat) -> (c : 'List 'ImageKind) -> a ('FrameBuffer b c)) -> (d:Type) -> a d -> a d
355imageType' :: 'List 'ImageKind -> 'List Type 355imageType' :: 'List 'ImageKind -> 'List Type
356'FragmentOperationKind :: Type->'ImageKind 356'FragmentOperationKind :: Type->'ImageKind
357Accumulate :: {a : 'List 'ImageKind} -> {b:'Nat} -> {c : 'List Type} -> {_ : a ~ map Type 'ImageKind 'FragmentOperationKind c} -> 'HList c -> 'FragmentStream b ('HList (imageType' a)) -> 'FrameBuffer b a -> 'FrameBuffer b a 357Accumulate :: {a : 'List 'ImageKind} -> {b:'Nat} -> {c : 'List Type} -> {_ : a ~ map Type 'ImageKind 'FragmentOperationKind c} -> 'HList c -> 'FragmentStream b ('HList (imageType' a)) -> 'FrameBuffer b a -> 'FrameBuffer b a
@@ -365,29 +365,29 @@ PrjImage :: {a:'ImageKind} -> 'FrameBuffer 1 (Cons a Nil) -> 'Image 1 a[39
365PrjImageColor :: 'FrameBuffer 1 (Cons Depth (Cons (Color ('Vec 4 'Float)) Nil)) -> 'Image 1 (Color ('Vec 4 'Float)) 365PrjImageColor :: 'FrameBuffer 1 (Cons Depth (Cons (Color ('Vec 4 'Float)) Nil)) -> 'Image 1 (Color ('Vec 4 'Float))
366'Output :: Type 366'Output :: Type
367ScreenOut :: {a:'Nat} -> {b : 'List 'ImageKind} -> 'FrameBuffer a b -> 'Output 367ScreenOut :: {a:'Nat} -> {b : 'List 'ImageKind} -> 'FrameBuffer a b -> 'Output
368'OutputCase :: (a : 'Output->Type) -> ({b:'Nat} -> {c : 'List 'ImageKind} -> (d : 'FrameBuffer b c) -> a (ScreenOut b c d)) -> e:'Output -> a e 368'OutputCase :: (a : 'Output->Type) -> ({b:'Nat} -> {c : 'List 'ImageKind} -> (d : 'FrameBuffer b c) -> a (ScreenOut b c d)) -> (e:'Output) -> a e
369match'Output :: (a : Type->Type) -> a 'Output -> b:Type -> a b -> a b 369match'Output :: (a : Type->Type) -> a 'Output -> (b:Type) -> a b -> a b
370renderFrame :: {a:'Nat} -> {b : 'List 'ImageKind} -> 'FrameBuffer a b -> 'Output 370renderFrame :: {a:'Nat} -> {b : 'List 'ImageKind} -> 'FrameBuffer a b -> 'Output
371'Texture :: Type 371'Texture :: Type
372Texture2DSlot :: 'String->'Texture 372Texture2DSlot :: 'String->'Texture
373Texture2D :: 'Vec 2 'Int -> 'Image 1 (Color ('Vec 4 'Float)) -> 'Texture 373Texture2D :: 'Vec 2 'Int -> 'Image 1 (Color ('Vec 4 'Float)) -> 'Texture
374'TextureCase :: (a : 'Texture->Type) -> (b:'String -> a (Texture2DSlot b)) -> ((c : 'Vec 2 'Int) -> (d : 'Image 1 (Color ('Vec 4 'Float))) -> a (Texture2D c d)) -> e:'Texture -> a e 374'TextureCase :: (a : 'Texture->Type) -> ((b:'String) -> a (Texture2DSlot b)) -> ((c : 'Vec 2 'Int) -> (d : 'Image 1 (Color ('Vec 4 'Float))) -> a (Texture2D c d)) -> (e:'Texture) -> a e
375match'Texture :: (a : Type->Type) -> a 'Texture -> b:Type -> a b -> a b 375match'Texture :: (a : Type->Type) -> a 'Texture -> (b:Type) -> a b -> a b
376'Filter :: Type 376'Filter :: Type
377PointFilter :: 'Filter 377PointFilter :: 'Filter
378LinearFilter :: 'Filter 378LinearFilter :: 'Filter
379'FilterCase :: (a : 'Filter->Type) -> a PointFilter -> a LinearFilter -> b:'Filter -> a b 379'FilterCase :: (a : 'Filter->Type) -> a PointFilter -> a LinearFilter -> (b:'Filter) -> a b
380match'Filter :: (a : Type->Type) -> a 'Filter -> b:Type -> a b -> a b 380match'Filter :: (a : Type->Type) -> a 'Filter -> (b:Type) -> a b -> a b
381'EdgeMode :: Type 381'EdgeMode :: Type
382Repeat :: 'EdgeMode 382Repeat :: 'EdgeMode
383MirroredRepeat :: 'EdgeMode 383MirroredRepeat :: 'EdgeMode
384ClampToEdge :: 'EdgeMode 384ClampToEdge :: 'EdgeMode
385'EdgeModeCase :: (a : 'EdgeMode->Type) -> a Repeat -> a MirroredRepeat -> a ClampToEdge -> b:'EdgeMode -> a b 385'EdgeModeCase :: (a : 'EdgeMode->Type) -> a Repeat -> a MirroredRepeat -> a ClampToEdge -> (b:'EdgeMode) -> a b
386match'EdgeMode :: (a : Type->Type) -> a 'EdgeMode -> b:Type -> a b -> a b 386match'EdgeMode :: (a : Type->Type) -> a 'EdgeMode -> (b:Type) -> a b -> a b
387'Sampler :: Type 387'Sampler :: Type
388Sampler :: 'Filter -> 'EdgeMode -> 'Texture->'Sampler 388Sampler :: 'Filter -> 'EdgeMode -> 'Texture->'Sampler
389'SamplerCase :: (a : 'Sampler->Type) -> (b:'Filter -> c:'EdgeMode -> d:'Texture -> a (Sampler b c d)) -> e:'Sampler -> a e 389'SamplerCase :: (a : 'Sampler->Type) -> ((b:'Filter) -> (c:'EdgeMode) -> (d:'Texture) -> a (Sampler b c d)) -> (e:'Sampler) -> a e
390match'Sampler :: (a : Type->Type) -> a 'Sampler -> b:Type -> a b -> a b 390match'Sampler :: (a : Type->Type) -> a 'Sampler -> (b:Type) -> a b -> a b
391texture2D :: 'Sampler -> 'Vec 2 'Float -> 'Vec 4 'Float 391texture2D :: 'Sampler -> 'Vec 2 'Float -> 'Vec 4 'Float
392accumulationContext :: {a} -> a->a 392accumulationContext :: {a} -> a->a
393------------ tooltips 393------------ tooltips
@@ -452,12 +452,12 @@ testdata/Builtins.lc 19:35-19:41 Nat->Type
452testdata/Builtins.lc 19:35-19:43 Type 452testdata/Builtins.lc 19:35-19:43 Type
453testdata/Builtins.lc 19:40-19:41 Type 453testdata/Builtins.lc 19:40-19:41 Type
454testdata/Builtins.lc 19:42-19:43 Nat 454testdata/Builtins.lc 19:42-19:43 Nat
455testdata/Builtins.lc 20:1-20:7 {a} -> {b} -> {c:Nat} -> a->b -> VecS a c -> VecS b c 455testdata/Builtins.lc 20:1-20:7 {a} -> {b} -> {c:Nat} -> (a->b) -> VecS a c -> VecS b c
456testdata/Builtins.lc 20:21-20:23 {a} -> a -> a -> VecS a 2 456testdata/Builtins.lc 20:21-20:23 {a} -> a -> a -> VecS a 2
457testdata/Builtins.lc 20:21-20:29 f_ -> VecS g_ 2 457testdata/Builtins.lc 20:21-20:29 f_ -> VecS g_ 2
458testdata/Builtins.lc 20:21-20:35 VecS f_ 2 | a_ -> b_ -> VecS g_ 2 | b_ -> VecS g_ 2 458testdata/Builtins.lc 20:21-20:35 VecS f_ 2 | a_ -> b_ -> VecS g_ 2 | b_ -> VecS g_ 2
459testdata/Builtins.lc 20:21-21:43 (e_ -> f_ -> g_ -> h_ -> VecS h_ 4) -> {a:Nat} -> VecS g_ a -> VecS g_ a 459testdata/Builtins.lc 20:21-21:43 (e_ -> f_ -> g_ -> h_ -> VecS h_ 4) -> {a:Nat} -> VecS g_ a -> VecS g_ a
460testdata/Builtins.lc 20:21-22:51 VecS d_ b_ -> VecS d_ c_ | c_->c_ -> VecS d_ b_ -> VecS d_ c_ | {a:Nat} -> VecS f_ a -> VecS f_ a 460testdata/Builtins.lc 20:21-22:51 (c_->c_) -> VecS d_ b_ -> VecS d_ c_ | VecS d_ b_ -> VecS d_ c_ | {a:Nat} -> VecS f_ a -> VecS f_ a
461testdata/Builtins.lc 20:25-20:26 i_->i_ 461testdata/Builtins.lc 20:25-20:26 i_->i_
462testdata/Builtins.lc 20:25-20:28 f_ 462testdata/Builtins.lc 20:25-20:28 f_
463testdata/Builtins.lc 20:27-20:28 c_ 463testdata/Builtins.lc 20:27-20:28 c_
@@ -540,7 +540,7 @@ testdata/Builtins.lc 33:41-33:46 Nat -> Type->Type
540testdata/Builtins.lc 33:41-33:48 Type->Type 540testdata/Builtins.lc 33:41-33:48 Type->Type
541testdata/Builtins.lc 33:41-33:54 Type 541testdata/Builtins.lc 33:41-33:54 Type
542testdata/Builtins.lc 33:45-33:46 b_ 542testdata/Builtins.lc 33:45-33:46 b_
543testdata/Builtins.lc 33:45-33:48 a:Type -> Mat 2 2 a -> Type 543testdata/Builtins.lc 33:45-33:48 (a:Type) -> Mat 2 2 a -> Type
544testdata/Builtins.lc 33:45-33:54 Mat 2 2 Float -> Type 544testdata/Builtins.lc 33:45-33:54 Mat 2 2 Float -> Type
545testdata/Builtins.lc 33:47-33:48 b_ 545testdata/Builtins.lc 33:47-33:48 b_
546testdata/Builtins.lc 33:49-33:54 Type 546testdata/Builtins.lc 33:49-33:54 Type
@@ -562,7 +562,7 @@ testdata/Builtins.lc 34:41-34:46 Nat -> Type->Type
562testdata/Builtins.lc 34:41-34:48 Type->Type 562testdata/Builtins.lc 34:41-34:48 Type->Type
563testdata/Builtins.lc 34:41-34:54 Type 563testdata/Builtins.lc 34:41-34:54 Type
564testdata/Builtins.lc 34:45-34:46 b_ 564testdata/Builtins.lc 34:45-34:46 b_
565testdata/Builtins.lc 34:45-34:48 a:Type -> Mat 3 2 a -> Type 565testdata/Builtins.lc 34:45-34:48 (a:Type) -> Mat 3 2 a -> Type
566testdata/Builtins.lc 34:45-34:54 Mat 3 2 Float -> Type 566testdata/Builtins.lc 34:45-34:54 Mat 3 2 Float -> Type
567testdata/Builtins.lc 34:47-34:48 b_ 567testdata/Builtins.lc 34:47-34:48 b_
568testdata/Builtins.lc 34:49-34:54 Type 568testdata/Builtins.lc 34:49-34:54 Type
@@ -584,7 +584,7 @@ testdata/Builtins.lc 35:41-35:46 Nat -> Type->Type
584testdata/Builtins.lc 35:41-35:48 Type->Type 584testdata/Builtins.lc 35:41-35:48 Type->Type
585testdata/Builtins.lc 35:41-35:54 Type 585testdata/Builtins.lc 35:41-35:54 Type
586testdata/Builtins.lc 35:45-35:46 b_ 586testdata/Builtins.lc 35:45-35:46 b_
587testdata/Builtins.lc 35:45-35:48 a:Type -> Mat 4 2 a -> Type 587testdata/Builtins.lc 35:45-35:48 (a:Type) -> Mat 4 2 a -> Type
588testdata/Builtins.lc 35:45-35:54 Mat 4 2 Float -> Type 588testdata/Builtins.lc 35:45-35:54 Mat 4 2 Float -> Type
589testdata/Builtins.lc 35:47-35:48 b_ 589testdata/Builtins.lc 35:47-35:48 b_
590testdata/Builtins.lc 35:49-35:54 Type 590testdata/Builtins.lc 35:49-35:54 Type
@@ -612,7 +612,7 @@ testdata/Builtins.lc 36:56-36:61 Nat -> Type->Type
612testdata/Builtins.lc 36:56-36:63 Type->Type 612testdata/Builtins.lc 36:56-36:63 Type->Type
613testdata/Builtins.lc 36:56-36:69 Type 613testdata/Builtins.lc 36:56-36:69 Type
614testdata/Builtins.lc 36:60-36:61 b_ 614testdata/Builtins.lc 36:60-36:61 b_
615testdata/Builtins.lc 36:60-36:63 a:Type -> Mat 2 3 a -> Type 615testdata/Builtins.lc 36:60-36:63 (a:Type) -> Mat 2 3 a -> Type
616testdata/Builtins.lc 36:60-36:69 Mat 2 3 Float -> Type 616testdata/Builtins.lc 36:60-36:69 Mat 2 3 Float -> Type
617testdata/Builtins.lc 36:62-36:63 b_ 617testdata/Builtins.lc 36:62-36:63 b_
618testdata/Builtins.lc 36:64-36:69 Type 618testdata/Builtins.lc 36:64-36:69 Type
@@ -640,7 +640,7 @@ testdata/Builtins.lc 37:56-37:61 Nat -> Type->Type
640testdata/Builtins.lc 37:56-37:63 Type->Type 640testdata/Builtins.lc 37:56-37:63 Type->Type
641testdata/Builtins.lc 37:56-37:69 Type 641testdata/Builtins.lc 37:56-37:69 Type
642testdata/Builtins.lc 37:60-37:61 b_ 642testdata/Builtins.lc 37:60-37:61 b_
643testdata/Builtins.lc 37:60-37:63 a:Type -> Mat 3 3 a -> Type 643testdata/Builtins.lc 37:60-37:63 (a:Type) -> Mat 3 3 a -> Type
644testdata/Builtins.lc 37:60-37:69 Mat 3 3 Float -> Type 644testdata/Builtins.lc 37:60-37:69 Mat 3 3 Float -> Type
645testdata/Builtins.lc 37:62-37:63 b_ 645testdata/Builtins.lc 37:62-37:63 b_
646testdata/Builtins.lc 37:64-37:69 Type 646testdata/Builtins.lc 37:64-37:69 Type
@@ -668,7 +668,7 @@ testdata/Builtins.lc 38:56-38:61 Nat -> Type->Type
668testdata/Builtins.lc 38:56-38:63 Type->Type 668testdata/Builtins.lc 38:56-38:63 Type->Type
669testdata/Builtins.lc 38:56-38:69 Type 669testdata/Builtins.lc 38:56-38:69 Type
670testdata/Builtins.lc 38:60-38:61 b_ 670testdata/Builtins.lc 38:60-38:61 b_
671testdata/Builtins.lc 38:60-38:63 a:Type -> Mat 4 3 a -> Type 671testdata/Builtins.lc 38:60-38:63 (a:Type) -> Mat 4 3 a -> Type
672testdata/Builtins.lc 38:60-38:69 Mat 4 3 Float -> Type 672testdata/Builtins.lc 38:60-38:69 Mat 4 3 Float -> Type
673testdata/Builtins.lc 38:62-38:63 b_ 673testdata/Builtins.lc 38:62-38:63 b_
674testdata/Builtins.lc 38:64-38:69 Type 674testdata/Builtins.lc 38:64-38:69 Type
@@ -702,7 +702,7 @@ testdata/Builtins.lc 39:71-39:76 Nat -> Type->Type
702testdata/Builtins.lc 39:71-39:78 Type->Type 702testdata/Builtins.lc 39:71-39:78 Type->Type
703testdata/Builtins.lc 39:71-39:84 Type 703testdata/Builtins.lc 39:71-39:84 Type
704testdata/Builtins.lc 39:75-39:76 b_ 704testdata/Builtins.lc 39:75-39:76 b_
705testdata/Builtins.lc 39:75-39:78 a:Type -> Mat 2 4 a -> Type 705testdata/Builtins.lc 39:75-39:78 (a:Type) -> Mat 2 4 a -> Type
706testdata/Builtins.lc 39:75-39:84 Mat 2 4 Float -> Type 706testdata/Builtins.lc 39:75-39:84 Mat 2 4 Float -> Type
707testdata/Builtins.lc 39:77-39:78 b_ 707testdata/Builtins.lc 39:77-39:78 b_
708testdata/Builtins.lc 39:79-39:84 Type 708testdata/Builtins.lc 39:79-39:84 Type
@@ -736,7 +736,7 @@ testdata/Builtins.lc 40:71-40:76 Nat -> Type->Type
736testdata/Builtins.lc 40:71-40:78 Type->Type 736testdata/Builtins.lc 40:71-40:78 Type->Type
737testdata/Builtins.lc 40:71-40:84 Type 737testdata/Builtins.lc 40:71-40:84 Type
738testdata/Builtins.lc 40:75-40:76 b_ 738testdata/Builtins.lc 40:75-40:76 b_
739testdata/Builtins.lc 40:75-40:78 a:Type -> Mat 3 4 a -> Type 739testdata/Builtins.lc 40:75-40:78 (a:Type) -> Mat 3 4 a -> Type
740testdata/Builtins.lc 40:75-40:84 Mat 3 4 Float -> Type 740testdata/Builtins.lc 40:75-40:84 Mat 3 4 Float -> Type
741testdata/Builtins.lc 40:77-40:78 b_ 741testdata/Builtins.lc 40:77-40:78 b_
742testdata/Builtins.lc 40:79-40:84 Type 742testdata/Builtins.lc 40:79-40:84 Type
@@ -770,7 +770,7 @@ testdata/Builtins.lc 41:71-41:76 Nat -> Type->Type
770testdata/Builtins.lc 41:71-41:78 Type->Type 770testdata/Builtins.lc 41:71-41:78 Type->Type
771testdata/Builtins.lc 41:71-41:84 Type 771testdata/Builtins.lc 41:71-41:84 Type
772testdata/Builtins.lc 41:75-41:76 b_ 772testdata/Builtins.lc 41:75-41:76 b_
773testdata/Builtins.lc 41:75-41:78 a:Type -> Mat 4 4 a -> Type 773testdata/Builtins.lc 41:75-41:78 (a:Type) -> Mat 4 4 a -> Type
774testdata/Builtins.lc 41:75-41:84 Mat 4 4 Float -> Type 774testdata/Builtins.lc 41:75-41:84 Mat 4 4 Float -> Type
775testdata/Builtins.lc 41:77-41:78 b_ 775testdata/Builtins.lc 41:77-41:78 b_
776testdata/Builtins.lc 41:79-41:84 Type 776testdata/Builtins.lc 41:79-41:84 Type
@@ -811,22 +811,22 @@ testdata/Builtins.lc 69:9-90:31 b_
811testdata/Builtins.lc 71:10-71:12 {a} -> a -> a -> VecS a 2 811testdata/Builtins.lc 71:10-71:12 {a} -> a -> a -> VecS a 2
812testdata/Builtins.lc 71:10-71:16 Float -> VecS Float 2 812testdata/Builtins.lc 71:10-71:16 Float -> VecS Float 2
813testdata/Builtins.lc 71:10-71:20 VecS Float 2 813testdata/Builtins.lc 71:10-71:20 VecS Float 2
814testdata/Builtins.lc 71:10-77:28 a:Nat -> VecS Float ('Succ ('Succ a)) | a:Nat -> VecS Float ('Succ a) 814testdata/Builtins.lc 71:10-77:28 (a:Nat) -> VecS Float ('Succ ('Succ a)) | (a:Nat) -> VecS Float ('Succ a)
815testdata/Builtins.lc 71:10-89:36 VecS b_ a_ | a:Nat -> VecS b_ a | a:Type -> b:Nat -> VecS a b 815testdata/Builtins.lc 71:10-89:36 (a:Nat) -> VecS b_ a | (a:Type) -> (b:Nat) -> VecS a b | VecS b_ a_
816testdata/Builtins.lc 71:13-71:16 Float 816testdata/Builtins.lc 71:13-71:16 Float
817testdata/Builtins.lc 71:17-71:20 Float 817testdata/Builtins.lc 71:17-71:20 Float
818testdata/Builtins.lc 72:9-72:11 {a} -> a -> a -> VecS a 2 818testdata/Builtins.lc 72:9-72:11 {a} -> a -> a -> VecS a 2
819testdata/Builtins.lc 72:9-72:15 Float -> VecS Float 2 819testdata/Builtins.lc 72:9-72:15 Float -> VecS Float 2
820testdata/Builtins.lc 72:9-72:19 VecS Float 2 820testdata/Builtins.lc 72:9-72:19 VecS Float 2
821testdata/Builtins.lc 72:9-78:27 a:Nat -> VecS Float ('Succ ('Succ a)) | a:Nat -> VecS Float ('Succ a) 821testdata/Builtins.lc 72:9-78:27 (a:Nat) -> VecS Float ('Succ ('Succ a)) | (a:Nat) -> VecS Float ('Succ a)
822testdata/Builtins.lc 72:9-90:31 VecS b_ a_ | a:Nat -> VecS b_ a | a:Type -> b:Nat -> VecS a b 822testdata/Builtins.lc 72:9-90:31 (a:Nat) -> VecS b_ a | (a:Type) -> (b:Nat) -> VecS a b | VecS b_ a_
823testdata/Builtins.lc 72:12-72:15 Float 823testdata/Builtins.lc 72:12-72:15 Float
824testdata/Builtins.lc 72:16-72:19 Float 824testdata/Builtins.lc 72:16-72:19 Float
825testdata/Builtins.lc 74:10-74:12 {a} -> a -> a -> a -> VecS a 3 825testdata/Builtins.lc 74:10-74:12 {a} -> a -> a -> a -> VecS a 3
826testdata/Builtins.lc 74:10-74:16 Float -> Float -> VecS Float 3 826testdata/Builtins.lc 74:10-74:16 Float -> Float -> VecS Float 3
827testdata/Builtins.lc 74:10-74:20 Float -> VecS Float 3 827testdata/Builtins.lc 74:10-74:20 Float -> VecS Float 3
828testdata/Builtins.lc 74:10-74:24 VecS Float 3 828testdata/Builtins.lc 74:10-74:24 VecS Float 3
829testdata/Builtins.lc 74:10-77:28 a:Nat -> VecS Float ('Succ ('Succ ('Succ a))) 829testdata/Builtins.lc 74:10-77:28 (a:Nat) -> VecS Float ('Succ ('Succ ('Succ a)))
830testdata/Builtins.lc 74:13-74:16 Float 830testdata/Builtins.lc 74:13-74:16 Float
831testdata/Builtins.lc 74:17-74:20 Float 831testdata/Builtins.lc 74:17-74:20 Float
832testdata/Builtins.lc 74:21-74:24 Float 832testdata/Builtins.lc 74:21-74:24 Float
@@ -834,7 +834,7 @@ testdata/Builtins.lc 75:9-75:11 {a} -> a -> a -> a -> VecS a 3
834testdata/Builtins.lc 75:9-75:15 Float -> Float -> VecS Float 3 834testdata/Builtins.lc 75:9-75:15 Float -> Float -> VecS Float 3
835testdata/Builtins.lc 75:9-75:19 Float -> VecS Float 3 835testdata/Builtins.lc 75:9-75:19 Float -> VecS Float 3
836testdata/Builtins.lc 75:9-75:23 VecS Float 3 836testdata/Builtins.lc 75:9-75:23 VecS Float 3
837testdata/Builtins.lc 75:9-78:27 a:Nat -> VecS Float ('Succ ('Succ ('Succ a))) 837testdata/Builtins.lc 75:9-78:27 (a:Nat) -> VecS Float ('Succ ('Succ ('Succ a)))
838testdata/Builtins.lc 75:12-75:15 Float 838testdata/Builtins.lc 75:12-75:15 Float
839testdata/Builtins.lc 75:16-75:19 Float 839testdata/Builtins.lc 75:16-75:19 Float
840testdata/Builtins.lc 75:20-75:23 Float 840testdata/Builtins.lc 75:20-75:23 Float
@@ -842,7 +842,7 @@ testdata/Builtins.lc 77:10-77:12 {a} -> a -> a -> a -> a -> VecS a 4
842testdata/Builtins.lc 77:10-77:16 Float -> Float -> Float -> VecS Float 4 842testdata/Builtins.lc 77:10-77:16 Float -> Float -> Float -> VecS Float 4
843testdata/Builtins.lc 77:10-77:20 Float -> Float -> VecS Float 4 843testdata/Builtins.lc 77:10-77:20 Float -> Float -> VecS Float 4
844testdata/Builtins.lc 77:10-77:24 Float -> VecS Float 4 844testdata/Builtins.lc 77:10-77:24 Float -> VecS Float 4
845testdata/Builtins.lc 77:10-77:28 VecS Float 4 | a:Nat -> VecS Float ('Succ ('Succ ('Succ ('Succ a)))) 845testdata/Builtins.lc 77:10-77:28 (a:Nat) -> VecS Float ('Succ ('Succ ('Succ ('Succ a)))) | VecS Float 4
846testdata/Builtins.lc 77:13-77:16 Float 846testdata/Builtins.lc 77:13-77:16 Float
847testdata/Builtins.lc 77:17-77:20 Float 847testdata/Builtins.lc 77:17-77:20 Float
848testdata/Builtins.lc 77:21-77:24 Float 848testdata/Builtins.lc 77:21-77:24 Float
@@ -851,7 +851,7 @@ testdata/Builtins.lc 78:9-78:11 {a} -> a -> a -> a -> a -> VecS a 4
851testdata/Builtins.lc 78:9-78:15 Float -> Float -> Float -> VecS Float 4 851testdata/Builtins.lc 78:9-78:15 Float -> Float -> Float -> VecS Float 4
852testdata/Builtins.lc 78:9-78:19 Float -> Float -> VecS Float 4 852testdata/Builtins.lc 78:9-78:19 Float -> Float -> VecS Float 4
853testdata/Builtins.lc 78:9-78:23 Float -> VecS Float 4 853testdata/Builtins.lc 78:9-78:23 Float -> VecS Float 4
854testdata/Builtins.lc 78:9-78:27 VecS Float 4 | a:Nat -> VecS Float ('Succ ('Succ ('Succ ('Succ a)))) 854testdata/Builtins.lc 78:9-78:27 (a:Nat) -> VecS Float ('Succ ('Succ ('Succ ('Succ a)))) | VecS Float 4
855testdata/Builtins.lc 78:12-78:15 Float 855testdata/Builtins.lc 78:12-78:15 Float
856testdata/Builtins.lc 78:16-78:19 Float 856testdata/Builtins.lc 78:16-78:19 Float
857testdata/Builtins.lc 78:20-78:23 Float 857testdata/Builtins.lc 78:20-78:23 Float
@@ -861,20 +861,20 @@ testdata/Builtins.lc 81:9-81:13 Bool
861testdata/Builtins.lc 83:10-83:12 {a} -> a -> a -> VecS a 2 861testdata/Builtins.lc 83:10-83:12 {a} -> a -> a -> VecS a 2
862testdata/Builtins.lc 83:10-83:18 Bool -> VecS Bool 2 862testdata/Builtins.lc 83:10-83:18 Bool -> VecS Bool 2
863testdata/Builtins.lc 83:10-83:24 VecS Bool 2 863testdata/Builtins.lc 83:10-83:24 VecS Bool 2
864testdata/Builtins.lc 83:10-89:36 a:Nat -> VecS Bool ('Succ ('Succ a)) | a:Nat -> VecS Bool ('Succ a) 864testdata/Builtins.lc 83:10-89:36 (a:Nat) -> VecS Bool ('Succ ('Succ a)) | (a:Nat) -> VecS Bool ('Succ a)
865testdata/Builtins.lc 83:13-83:18 Bool 865testdata/Builtins.lc 83:13-83:18 Bool
866testdata/Builtins.lc 83:19-83:24 Bool 866testdata/Builtins.lc 83:19-83:24 Bool
867testdata/Builtins.lc 84:9-84:11 {a} -> a -> a -> VecS a 2 867testdata/Builtins.lc 84:9-84:11 {a} -> a -> a -> VecS a 2
868testdata/Builtins.lc 84:9-84:16 Bool -> VecS Bool 2 868testdata/Builtins.lc 84:9-84:16 Bool -> VecS Bool 2
869testdata/Builtins.lc 84:9-84:21 VecS Bool 2 869testdata/Builtins.lc 84:9-84:21 VecS Bool 2
870testdata/Builtins.lc 84:9-90:31 a:Nat -> VecS Bool ('Succ ('Succ a)) | a:Nat -> VecS Bool ('Succ a) 870testdata/Builtins.lc 84:9-90:31 (a:Nat) -> VecS Bool ('Succ ('Succ a)) | (a:Nat) -> VecS Bool ('Succ a)
871testdata/Builtins.lc 84:12-84:16 Bool 871testdata/Builtins.lc 84:12-84:16 Bool
872testdata/Builtins.lc 84:17-84:21 Bool 872testdata/Builtins.lc 84:17-84:21 Bool
873testdata/Builtins.lc 86:10-86:12 {a} -> a -> a -> a -> VecS a 3 873testdata/Builtins.lc 86:10-86:12 {a} -> a -> a -> a -> VecS a 3
874testdata/Builtins.lc 86:10-86:18 Bool -> Bool -> VecS Bool 3 874testdata/Builtins.lc 86:10-86:18 Bool -> Bool -> VecS Bool 3
875testdata/Builtins.lc 86:10-86:24 Bool -> VecS Bool 3 875testdata/Builtins.lc 86:10-86:24 Bool -> VecS Bool 3
876testdata/Builtins.lc 86:10-86:30 VecS Bool 3 876testdata/Builtins.lc 86:10-86:30 VecS Bool 3
877testdata/Builtins.lc 86:10-89:36 a:Nat -> VecS Bool ('Succ ('Succ ('Succ a))) 877testdata/Builtins.lc 86:10-89:36 (a:Nat) -> VecS Bool ('Succ ('Succ ('Succ a)))
878testdata/Builtins.lc 86:13-86:18 Bool 878testdata/Builtins.lc 86:13-86:18 Bool
879testdata/Builtins.lc 86:19-86:24 Bool 879testdata/Builtins.lc 86:19-86:24 Bool
880testdata/Builtins.lc 86:25-86:30 Bool 880testdata/Builtins.lc 86:25-86:30 Bool
@@ -882,7 +882,7 @@ testdata/Builtins.lc 87:9-87:11 {a} -> a -> a -> a -> VecS a 3
882testdata/Builtins.lc 87:9-87:16 Bool -> Bool -> VecS Bool 3 882testdata/Builtins.lc 87:9-87:16 Bool -> Bool -> VecS Bool 3
883testdata/Builtins.lc 87:9-87:21 Bool -> VecS Bool 3 883testdata/Builtins.lc 87:9-87:21 Bool -> VecS Bool 3
884testdata/Builtins.lc 87:9-87:26 VecS Bool 3 884testdata/Builtins.lc 87:9-87:26 VecS Bool 3
885testdata/Builtins.lc 87:9-90:31 a:Nat -> VecS Bool ('Succ ('Succ ('Succ a))) 885testdata/Builtins.lc 87:9-90:31 (a:Nat) -> VecS Bool ('Succ ('Succ ('Succ a)))
886testdata/Builtins.lc 87:12-87:16 Bool 886testdata/Builtins.lc 87:12-87:16 Bool
887testdata/Builtins.lc 87:17-87:21 Bool 887testdata/Builtins.lc 87:17-87:21 Bool
888testdata/Builtins.lc 87:22-87:26 Bool 888testdata/Builtins.lc 87:22-87:26 Bool
@@ -890,7 +890,7 @@ testdata/Builtins.lc 89:10-89:12 {a} -> a -> a -> a -> a -> VecS a 4
890testdata/Builtins.lc 89:10-89:18 Bool -> Bool -> Bool -> VecS Bool 4 890testdata/Builtins.lc 89:10-89:18 Bool -> Bool -> Bool -> VecS Bool 4
891testdata/Builtins.lc 89:10-89:24 Bool -> Bool -> VecS Bool 4 891testdata/Builtins.lc 89:10-89:24 Bool -> Bool -> VecS Bool 4
892testdata/Builtins.lc 89:10-89:30 Bool -> VecS Bool 4 892testdata/Builtins.lc 89:10-89:30 Bool -> VecS Bool 4
893testdata/Builtins.lc 89:10-89:36 VecS Bool 4 | a:Nat -> VecS Bool ('Succ ('Succ ('Succ ('Succ a)))) 893testdata/Builtins.lc 89:10-89:36 (a:Nat) -> VecS Bool ('Succ ('Succ ('Succ ('Succ a)))) | VecS Bool 4
894testdata/Builtins.lc 89:13-89:18 Bool 894testdata/Builtins.lc 89:13-89:18 Bool
895testdata/Builtins.lc 89:19-89:24 Bool 895testdata/Builtins.lc 89:19-89:24 Bool
896testdata/Builtins.lc 89:25-89:30 Bool 896testdata/Builtins.lc 89:25-89:30 Bool
@@ -899,7 +899,7 @@ testdata/Builtins.lc 90:9-90:11 {a} -> a -> a -> a -> a -> VecS a 4
899testdata/Builtins.lc 90:9-90:16 Bool -> Bool -> Bool -> VecS Bool 4 899testdata/Builtins.lc 90:9-90:16 Bool -> Bool -> Bool -> VecS Bool 4
900testdata/Builtins.lc 90:9-90:21 Bool -> Bool -> VecS Bool 4 900testdata/Builtins.lc 90:9-90:21 Bool -> Bool -> VecS Bool 4
901testdata/Builtins.lc 90:9-90:26 Bool -> VecS Bool 4 901testdata/Builtins.lc 90:9-90:26 Bool -> VecS Bool 4
902testdata/Builtins.lc 90:9-90:31 VecS Bool 4 | a:Nat -> VecS Bool ('Succ ('Succ ('Succ ('Succ a)))) 902testdata/Builtins.lc 90:9-90:31 (a:Nat) -> VecS Bool ('Succ ('Succ ('Succ ('Succ a)))) | VecS Bool 4
903testdata/Builtins.lc 90:12-90:16 Bool 903testdata/Builtins.lc 90:12-90:16 Bool
904testdata/Builtins.lc 90:17-90:21 Bool 904testdata/Builtins.lc 90:17-90:21 Bool
905testdata/Builtins.lc 90:22-90:26 Bool 905testdata/Builtins.lc 90:22-90:26 Bool
@@ -1892,7 +1892,7 @@ testdata/Builtins.lc 209:10-209:20 List a_ -> List (List b_) -> List c_
1892testdata/Builtins.lc 209:10-209:23 List (List a_) -> List b_ 1892testdata/Builtins.lc 209:10-209:23 List (List a_) -> List b_
1893testdata/Builtins.lc 209:16-209:20 {a} -> List a -> List a -> List a 1893testdata/Builtins.lc 209:16-209:20 {a} -> List a -> List a -> List a
1894testdata/Builtins.lc 209:21-209:23 {a} -> List a 1894testdata/Builtins.lc 209:21-209:23 {a} -> List a
1895testdata/Builtins.lc 211:1-211:4 {a} -> {b} -> a->b -> List a -> List b 1895testdata/Builtins.lc 211:1-211:4 {a} -> {b} -> (a->b) -> List a -> List b
1896testdata/Builtins.lc 211:16-211:18 {a} -> List a 1896testdata/Builtins.lc 211:16-211:18 {a} -> List a
1897testdata/Builtins.lc 211:16-212:30 List b_ -> List b_ | a_->b_ 1897testdata/Builtins.lc 211:16-212:30 List b_ -> List b_ | a_->b_
1898testdata/Builtins.lc 212:16-212:17 i_ 1898testdata/Builtins.lc 212:16-212:17 i_
@@ -1915,7 +1915,7 @@ testdata/Builtins.lc 214:36-214:37 Type
1915testdata/Builtins.lc 215:1-215:10 {a} -> {b} -> (a -> List b) -> List a -> List b 1915testdata/Builtins.lc 215:1-215:10 {a} -> {b} -> (a -> List b) -> List a -> List b
1916testdata/Builtins.lc 215:17-215:23 {a} -> List (List a) -> List a 1916testdata/Builtins.lc 215:17-215:23 {a} -> List (List a) -> List a
1917testdata/Builtins.lc 215:17-215:33 (b_ -> List b_) -> List c_ -> List c_ | List c_ | List c_ -> List c_ 1917testdata/Builtins.lc 215:17-215:33 (b_ -> List b_) -> List c_ -> List c_ | List c_ | List c_ -> List c_
1918testdata/Builtins.lc 215:25-215:28 {a} -> {b} -> a->b -> List a -> List b 1918testdata/Builtins.lc 215:25-215:28 {a} -> {b} -> (a->b) -> List a -> List b
1919testdata/Builtins.lc 215:25-215:30 List e_ -> List (List e_) 1919testdata/Builtins.lc 215:25-215:30 List e_ -> List (List e_)
1920testdata/Builtins.lc 215:25-215:32 List (List c_) 1920testdata/Builtins.lc 215:25-215:32 List (List c_)
1921testdata/Builtins.lc 215:29-215:30 g_ -> List g_ 1921testdata/Builtins.lc 215:29-215:30 g_ -> List g_
@@ -1984,7 +1984,7 @@ testdata/Builtins.lc 241:36-241:47 PrimitiveType->Type
1984testdata/Builtins.lc 241:36-241:56 Type 1984testdata/Builtins.lc 241:36-241:56 Type
1985testdata/Builtins.lc 241:46-241:47 Type 1985testdata/Builtins.lc 241:46-241:47 Type
1986testdata/Builtins.lc 241:48-241:56 PrimitiveType 1986testdata/Builtins.lc 241:48-241:56 PrimitiveType
1987testdata/Builtins.lc 243:1-243:13 {a} -> {b} -> {c:PrimitiveType} -> a->b -> Primitive a c -> Primitive b c 1987testdata/Builtins.lc 243:1-243:13 {a} -> {b} -> {c:PrimitiveType} -> (a->b) -> Primitive a c -> Primitive b c
1988testdata/Builtins.lc 243:17-243:59 Type 1988testdata/Builtins.lc 243:17-243:59 Type
1989testdata/Builtins.lc 243:18-243:19 f_ 1989testdata/Builtins.lc 243:18-243:19 f_
1990testdata/Builtins.lc 243:23-243:24 Type | e_ 1990testdata/Builtins.lc 243:23-243:24 Type | e_
@@ -2020,10 +2020,10 @@ testdata/Builtins.lc 252:53-252:70 Type->Type
2020testdata/Builtins.lc 252:53-252:72 Type 2020testdata/Builtins.lc 252:53-252:72 Type
2021testdata/Builtins.lc 252:69-252:70 PrimitiveType 2021testdata/Builtins.lc 252:69-252:70 PrimitiveType
2022testdata/Builtins.lc 252:71-252:72 Type 2022testdata/Builtins.lc 252:71-252:72 Type
2023testdata/Builtins.lc 253:1-253:14 {a} -> {b} -> {c:PrimitiveType} -> a->b -> List (Primitive a c) -> List (Primitive b c) 2023testdata/Builtins.lc 253:1-253:14 {a} -> {b} -> {c:PrimitiveType} -> (a->b) -> List (Primitive a c) -> List (Primitive b c)
2024testdata/Builtins.lc 253:19-253:22 {a} -> {b} -> a->b -> List a -> List b 2024testdata/Builtins.lc 253:19-253:22 {a} -> {b} -> (a->b) -> List a -> List b
2025testdata/Builtins.lc 253:19-253:39 List (Primitive e_ a_) -> List (Primitive e_ b_) | c_->c_ -> PrimitiveStream b_ d_ -> PrimitiveStream c_ d_ 2025testdata/Builtins.lc 253:19-253:39 (c_->c_) -> PrimitiveStream b_ d_ -> PrimitiveStream c_ d_ | List (Primitive e_ a_) -> List (Primitive e_ b_)
2026testdata/Builtins.lc 253:24-253:36 {a} -> {b} -> {c:PrimitiveType} -> a->b -> Primitive a c -> Primitive b c 2026testdata/Builtins.lc 253:24-253:36 {a} -> {b} -> {c:PrimitiveType} -> (a->b) -> Primitive a c -> Primitive b c
2027testdata/Builtins.lc 253:24-253:38 Primitive g_ a_ -> Primitive g_ b_ 2027testdata/Builtins.lc 253:24-253:38 Primitive g_ a_ -> Primitive g_ b_
2028testdata/Builtins.lc 253:37-253:38 i_->i_ 2028testdata/Builtins.lc 253:37-253:38 i_->i_
2029testdata/Builtins.lc 255:30-255:38 Type->Type 2029testdata/Builtins.lc 255:30-255:38 Type->Type
@@ -2034,7 +2034,7 @@ testdata/Builtins.lc 260:56-260:57 e_
2034testdata/Builtins.lc 260:56-260:59 d_->Type 2034testdata/Builtins.lc 260:56-260:59 d_->Type
2035testdata/Builtins.lc 260:56-260:75 Type 2035testdata/Builtins.lc 260:56-260:75 Type
2036testdata/Builtins.lc 260:58-260:59 {a} -> a -> a->Type 2036testdata/Builtins.lc 260:58-260:59 {a} -> a -> a->Type
2037testdata/Builtins.lc 260:60-260:63 {a} -> {b} -> a->b -> List a -> List b 2037testdata/Builtins.lc 260:60-260:63 {a} -> {b} -> (a->b) -> List a -> List b
2038testdata/Builtins.lc 260:60-260:72 List Type -> List Type 2038testdata/Builtins.lc 260:60-260:72 List Type -> List Type
2039testdata/Builtins.lc 260:60-260:75 List Type 2039testdata/Builtins.lc 260:60-260:75 List Type
2040testdata/Builtins.lc 260:64-260:72 Type->Type 2040testdata/Builtins.lc 260:64-260:72 Type->Type
@@ -2125,7 +2125,7 @@ testdata/Builtins.lc 277:28-277:38 Type->Type
2125testdata/Builtins.lc 277:28-277:40 Type 2125testdata/Builtins.lc 277:28-277:40 Type
2126testdata/Builtins.lc 277:37-277:38 d_ 2126testdata/Builtins.lc 277:37-277:38 d_
2127testdata/Builtins.lc 277:39-277:40 b_ 2127testdata/Builtins.lc 277:39-277:40 b_
2128testdata/Builtins.lc 279:1-279:15 {a} -> {b:Nat} -> a->Float -> Fragment b a -> Fragment b a 2128testdata/Builtins.lc 279:1-279:15 {a} -> {b:Nat} -> (a->Float) -> Fragment b a -> Fragment b a
2129testdata/Builtins.lc 279:19-279:63 Type 2129testdata/Builtins.lc 279:19-279:63 Type
2130testdata/Builtins.lc 279:20-279:21 d_ 2130testdata/Builtins.lc 279:20-279:21 d_
2131testdata/Builtins.lc 279:25-279:30 Type 2131testdata/Builtins.lc 279:25-279:30 Type
@@ -2154,13 +2154,13 @@ testdata/Builtins.lc 281:58-281:74 Type->Type
2154testdata/Builtins.lc 281:58-281:76 Type 2154testdata/Builtins.lc 281:58-281:76 Type
2155testdata/Builtins.lc 281:73-281:74 Nat 2155testdata/Builtins.lc 281:73-281:74 Nat
2156testdata/Builtins.lc 281:75-281:76 Type 2156testdata/Builtins.lc 281:75-281:76 Type
2157testdata/Builtins.lc 282:1-282:16 {a} -> {b:Nat} -> a->Float -> List (Vector b (Maybe (SimpleFragment a))) -> List (Vector b (Maybe (SimpleFragment a))) 2157testdata/Builtins.lc 282:1-282:16 {a} -> {b:Nat} -> (a->Float) -> List (Vector b (Maybe (SimpleFragment a))) -> List (Vector b (Maybe (SimpleFragment a)))
2158testdata/Builtins.lc 282:21-282:24 {a} -> {b} -> a->b -> List a -> List b 2158testdata/Builtins.lc 282:21-282:24 {a} -> {b} -> (a->b) -> List a -> List b
2159testdata/Builtins.lc 282:21-282:43 List (Vector a_ (Maybe (SimpleFragment d_))) -> List (Vector b_ (Maybe (SimpleFragment e_))) | b_->Float -> FragmentStream b_ c_ -> FragmentStream c_ d_ 2159testdata/Builtins.lc 282:21-282:43 (b_->Float) -> FragmentStream b_ c_ -> FragmentStream c_ d_ | List (Vector a_ (Maybe (SimpleFragment d_))) -> List (Vector b_ (Maybe (SimpleFragment e_)))
2160testdata/Builtins.lc 282:26-282:40 {a} -> {b:Nat} -> a->Float -> Fragment b a -> Fragment b a 2160testdata/Builtins.lc 282:26-282:40 {a} -> {b:Nat} -> (a->Float) -> Fragment b a -> Fragment b a
2161testdata/Builtins.lc 282:26-282:42 Fragment a_ f_ -> Fragment b_ g_ 2161testdata/Builtins.lc 282:26-282:42 Fragment a_ f_ -> Fragment b_ g_
2162testdata/Builtins.lc 282:41-282:42 g_->Float 2162testdata/Builtins.lc 282:41-282:42 g_->Float
2163testdata/Builtins.lc 284:1-284:15 {a} -> {b:Nat} -> a->Bool -> Fragment b a -> Fragment b a 2163testdata/Builtins.lc 284:1-284:15 {a} -> {b:Nat} -> (a->Bool) -> Fragment b a -> Fragment b a
2164testdata/Builtins.lc 284:19-284:62 Type 2164testdata/Builtins.lc 284:19-284:62 Type
2165testdata/Builtins.lc 284:20-284:21 d_ 2165testdata/Builtins.lc 284:20-284:21 d_
2166testdata/Builtins.lc 284:25-284:29 Type 2166testdata/Builtins.lc 284:25-284:29 Type
@@ -2189,13 +2189,13 @@ testdata/Builtins.lc 286:57-286:73 Type->Type
2189testdata/Builtins.lc 286:57-286:75 Type 2189testdata/Builtins.lc 286:57-286:75 Type
2190testdata/Builtins.lc 286:72-286:73 Nat 2190testdata/Builtins.lc 286:72-286:73 Nat
2191testdata/Builtins.lc 286:74-286:75 Type 2191testdata/Builtins.lc 286:74-286:75 Type
2192testdata/Builtins.lc 287:1-287:16 {a} -> {b:Nat} -> a->Bool -> List (Vector b (Maybe (SimpleFragment a))) -> List (Vector b (Maybe (SimpleFragment a))) 2192testdata/Builtins.lc 287:1-287:16 {a} -> {b:Nat} -> (a->Bool) -> List (Vector b (Maybe (SimpleFragment a))) -> List (Vector b (Maybe (SimpleFragment a)))
2193testdata/Builtins.lc 287:21-287:24 {a} -> {b} -> a->b -> List a -> List b 2193testdata/Builtins.lc 287:21-287:24 {a} -> {b} -> (a->b) -> List a -> List b
2194testdata/Builtins.lc 287:21-287:43 List (Vector a_ (Maybe (SimpleFragment d_))) -> List (Vector b_ (Maybe (SimpleFragment e_))) | b_->Bool -> FragmentStream b_ c_ -> FragmentStream c_ d_ 2194testdata/Builtins.lc 287:21-287:43 (b_->Bool) -> FragmentStream b_ c_ -> FragmentStream c_ d_ | List (Vector a_ (Maybe (SimpleFragment d_))) -> List (Vector b_ (Maybe (SimpleFragment e_)))
2195testdata/Builtins.lc 287:26-287:40 {a} -> {b:Nat} -> a->Bool -> Fragment b a -> Fragment b a 2195testdata/Builtins.lc 287:26-287:40 {a} -> {b:Nat} -> (a->Bool) -> Fragment b a -> Fragment b a
2196testdata/Builtins.lc 287:26-287:42 Fragment a_ f_ -> Fragment b_ g_ 2196testdata/Builtins.lc 287:26-287:42 Fragment a_ f_ -> Fragment b_ g_
2197testdata/Builtins.lc 287:41-287:42 g_->Bool 2197testdata/Builtins.lc 287:41-287:42 g_->Bool
2198testdata/Builtins.lc 289:1-289:12 {a} -> {b} -> {c:Nat} -> a->b -> Fragment c a -> Fragment c b 2198testdata/Builtins.lc 289:1-289:12 {a} -> {b} -> {c:Nat} -> (a->b) -> Fragment c a -> Fragment c b
2199testdata/Builtins.lc 289:16-289:56 Type 2199testdata/Builtins.lc 289:16-289:56 Type
2200testdata/Builtins.lc 289:17-289:18 f_ 2200testdata/Builtins.lc 289:17-289:18 f_
2201testdata/Builtins.lc 289:22-289:23 Type | e_ 2201testdata/Builtins.lc 289:22-289:23 Type | e_
@@ -2224,10 +2224,10 @@ testdata/Builtins.lc 291:51-291:67 Type->Type
2224testdata/Builtins.lc 291:51-291:69 Type 2224testdata/Builtins.lc 291:51-291:69 Type
2225testdata/Builtins.lc 291:66-291:67 Nat 2225testdata/Builtins.lc 291:66-291:67 Nat
2226testdata/Builtins.lc 291:68-291:69 Type 2226testdata/Builtins.lc 291:68-291:69 Type
2227testdata/Builtins.lc 292:1-292:13 {a} -> {b} -> {c:Nat} -> a->b -> List (Vector c (Maybe (SimpleFragment a))) -> List (Vector c (Maybe (SimpleFragment b))) 2227testdata/Builtins.lc 292:1-292:13 {a} -> {b} -> {c:Nat} -> (a->b) -> List (Vector c (Maybe (SimpleFragment a))) -> List (Vector c (Maybe (SimpleFragment b)))
2228testdata/Builtins.lc 292:18-292:21 {a} -> {b} -> a->b -> List a -> List b 2228testdata/Builtins.lc 292:18-292:21 {a} -> {b} -> (a->b) -> List a -> List b
2229testdata/Builtins.lc 292:18-292:37 List (Vector a_ (Maybe (SimpleFragment e_))) -> List (Vector b_ (Maybe (SimpleFragment e_))) | c_->c_ -> FragmentStream b_ d_ -> FragmentStream c_ d_ 2229testdata/Builtins.lc 292:18-292:37 (c_->c_) -> FragmentStream b_ d_ -> FragmentStream c_ d_ | List (Vector a_ (Maybe (SimpleFragment e_))) -> List (Vector b_ (Maybe (SimpleFragment e_)))
2230testdata/Builtins.lc 292:23-292:34 {a} -> {b} -> {c:Nat} -> a->b -> Fragment c a -> Fragment c b 2230testdata/Builtins.lc 292:23-292:34 {a} -> {b} -> {c:Nat} -> (a->b) -> Fragment c a -> Fragment c b
2231testdata/Builtins.lc 292:23-292:36 Fragment a_ g_ -> Fragment b_ g_ 2231testdata/Builtins.lc 292:23-292:36 Fragment a_ g_ -> Fragment b_ g_
2232testdata/Builtins.lc 292:35-292:36 i_->i_ 2232testdata/Builtins.lc 292:35-292:36 i_->i_
2233testdata/Builtins.lc 296:6-296:15 Type 2233testdata/Builtins.lc 296:6-296:15 Type
@@ -2367,7 +2367,7 @@ testdata/Builtins.lc 357:19-357:29 {a} -> {b:Nat} -> Vec b a -> Bool
2367testdata/Builtins.lc 357:19-357:31 Bool 2367testdata/Builtins.lc 357:19-357:31 Bool
2368testdata/Builtins.lc 357:19-357:58 Vec b_ Swizz -> Vec c_ e_ | Vec b_ c_ -> Vec b_ Swizz -> Vec c_ e_ | VecS e_ c_ 2368testdata/Builtins.lc 357:19-357:58 Vec b_ Swizz -> Vec c_ e_ | Vec b_ c_ -> Vec b_ Swizz -> Vec c_ e_ | VecS e_ c_
2369testdata/Builtins.lc 357:30-357:31 Vec f_ g_ 2369testdata/Builtins.lc 357:30-357:31 Vec f_ g_
2370testdata/Builtins.lc 357:34-357:40 {a} -> {b} -> {c:Nat} -> a->b -> VecS a c -> VecS b c 2370testdata/Builtins.lc 357:34-357:40 {a} -> {b} -> {c:Nat} -> (a->b) -> VecS a c -> VecS b c
2371testdata/Builtins.lc 357:34-357:56 VecS Swizz a_ -> VecS h_ b_ 2371testdata/Builtins.lc 357:34-357:56 VecS Swizz a_ -> VecS h_ b_
2372testdata/Builtins.lc 357:34-357:58 VecS e_ c_ 2372testdata/Builtins.lc 357:34-357:58 VecS e_ c_
2373testdata/Builtins.lc 357:42-357:53 {a} -> {b:Nat} -> Vec b a -> Swizz->a 2373testdata/Builtins.lc 357:42-357:53 {a} -> {b:Nat} -> Vec b a -> Swizz->a
@@ -2453,7 +2453,7 @@ testdata/Builtins.lc 432:6-434:36 Type
2453testdata/Builtins.lc 432:16-432:17 Type 2453testdata/Builtins.lc 432:16-432:17 Type
2454testdata/Builtins.lc 433:7-433:16 PointSize c_ | Type | {a} -> Float -> PointSize a 2454testdata/Builtins.lc 433:7-433:16 PointSize c_ | Type | {a} -> Float -> PointSize a
2455testdata/Builtins.lc 433:17-433:22 Type 2455testdata/Builtins.lc 433:17-433:22 Type
2456testdata/Builtins.lc 434:7-434:23 PointSize d_ | Type | {a} -> a->Float -> PointSize a 2456testdata/Builtins.lc 434:7-434:23 PointSize d_ | Type | {a} -> (a->Float) -> PointSize a
2457testdata/Builtins.lc 434:25-434:26 Type 2457testdata/Builtins.lc 434:25-434:26 Type
2458testdata/Builtins.lc 434:30-434:35 Type 2458testdata/Builtins.lc 434:30-434:35 Type
2459testdata/Builtins.lc 436:6-436:17 Type | Type->Type 2459testdata/Builtins.lc 436:6-436:17 Type | Type->Type
@@ -2657,7 +2657,7 @@ testdata/Builtins.lc 478:42-478:56 Type
2657testdata/Builtins.lc 478:55-478:56 Type 2657testdata/Builtins.lc 478:55-478:56 Type
2658testdata/Builtins.lc 480:1-480:19 {a : List Type} -> {b : List Type} -> {c : List Type} -> {d:PrimitiveType} -> {_ : 'map Type Type Interpolated a ~ b} -> {_ : c ~ 'Cons (Vec 4 Float) a} -> HList b -> RasterContext (HList c) d -> Primitive (HList c) d -> FragmentStream 1 (HList a) 2658testdata/Builtins.lc 480:1-480:19 {a : List Type} -> {b : List Type} -> {c : List Type} -> {d:PrimitiveType} -> {_ : 'map Type Type Interpolated a ~ b} -> {_ : c ~ 'Cons (Vec 4 Float) a} -> HList b -> RasterContext (HList c) d -> Primitive (HList c) d -> FragmentStream 1 (HList a)
2659testdata/Builtins.lc 481:8-486:34 Type 2659testdata/Builtins.lc 481:8-486:34 Type
2660testdata/Builtins.lc 481:10-481:13 {a} -> {b} -> a->b -> List a -> List b 2660testdata/Builtins.lc 481:10-481:13 {a} -> {b} -> (a->b) -> List a -> List b
2661testdata/Builtins.lc 481:10-481:26 List Type -> List Type 2661testdata/Builtins.lc 481:10-481:26 List Type -> List Type
2662testdata/Builtins.lc 481:10-481:28 List Type 2662testdata/Builtins.lc 481:10-481:28 List Type
2663testdata/Builtins.lc 481:10-481:30 List Type -> Type 2663testdata/Builtins.lc 481:10-481:30 List Type -> Type
@@ -2710,7 +2710,7 @@ testdata/Builtins.lc 486:32-486:33 List Type
2710testdata/Builtins.lc 488:1-488:20 {a : List Type} -> {b:PrimitiveType} -> RasterContext (HList ('Cons (Vec 4 Float) a)) b -> HList ('map Type Type Interpolated a) -> List (Primitive (HList ('Cons (Vec 4 Float) a)) b) -> List (Vector 1 (Maybe (SimpleFragment (HList a)))) 2710testdata/Builtins.lc 488:1-488:20 {a : List Type} -> {b:PrimitiveType} -> RasterContext (HList ('Cons (Vec 4 Float) a)) b -> HList ('map Type Type Interpolated a) -> List (Primitive (HList ('Cons (Vec 4 Float) a)) b) -> List (Vector 1 (Maybe (SimpleFragment (HList a))))
2711testdata/Builtins.lc 488:32-488:38 {a} -> List (List a) -> List a 2711testdata/Builtins.lc 488:32-488:38 {a} -> List (List a) -> List a
2712testdata/Builtins.lc 488:32-488:74 List (Vector 1 (Maybe (SimpleFragment (HList b_)))) 2712testdata/Builtins.lc 488:32-488:74 List (Vector 1 (Maybe (SimpleFragment (HList b_))))
2713testdata/Builtins.lc 488:40-488:43 {a} -> {b} -> a->b -> List a -> List b 2713testdata/Builtins.lc 488:40-488:43 {a} -> {b} -> (a->b) -> List a -> List b
2714testdata/Builtins.lc 488:40-488:71 List (Primitive (HList ('Cons (Vec 4 Float) b_)) a_) -> List (List (Fragment 1 (HList c_))) 2714testdata/Builtins.lc 488:40-488:71 List (Primitive (HList ('Cons (Vec 4 Float) b_)) a_) -> List (List (Fragment 1 (HList c_)))
2715testdata/Builtins.lc 488:40-488:73 List (List (Fragment 1 (HList b_))) 2715testdata/Builtins.lc 488:40-488:73 List (List (Fragment 1 (HList b_)))
2716testdata/Builtins.lc 488:45-488:63 {a : List Type} -> {b : List Type} -> {c : List Type} -> {d:PrimitiveType} -> {_ : 'map Type Type Interpolated a ~ b} -> {_ : c ~ 'Cons (Vec 4 Float) a} -> HList b -> RasterContext (HList c) d -> Primitive (HList c) d -> FragmentStream 1 (HList a) 2716testdata/Builtins.lc 488:45-488:63 {a : List Type} -> {b : List Type} -> {c : List Type} -> {d:PrimitiveType} -> {_ : 'map Type Type Interpolated a ~ b} -> {_ : c ~ 'Cons (Vec 4 Float) a} -> HList b -> RasterContext (HList c) d -> Primitive (HList c) d -> FragmentStream 1 (HList a)
@@ -2750,7 +2750,7 @@ testdata/Builtins.lc 495:46-495:48 List e_
2750testdata/Builtins.lc 497:1-497:16 List Type -> Type 2750testdata/Builtins.lc 497:1-497:16 List Type -> Type
2751testdata/Builtins.lc 497:21-497:28 {a} -> List a -> Type 2751testdata/Builtins.lc 497:21-497:28 {a} -> List a -> Type
2752testdata/Builtins.lc 497:21-497:45 Type 2752testdata/Builtins.lc 497:21-497:45 Type
2753testdata/Builtins.lc 497:30-497:33 {a} -> {b} -> a->b -> List a -> List b 2753testdata/Builtins.lc 497:30-497:33 {a} -> {b} -> (a->b) -> List a -> List b
2754testdata/Builtins.lc 497:30-497:42 List Type -> List Nat 2754testdata/Builtins.lc 497:30-497:42 List Type -> List Nat
2755testdata/Builtins.lc 497:30-497:44 List Nat 2755testdata/Builtins.lc 497:30-497:44 List Nat
2756testdata/Builtins.lc 497:34-497:42 Type->Nat 2756testdata/Builtins.lc 497:34-497:42 Type->Nat
@@ -2765,13 +2765,13 @@ testdata/Builtins.lc 511:16-511:25 Type
2765testdata/Builtins.lc 511:30-511:36 Type 2765testdata/Builtins.lc 511:30-511:36 Type
2766testdata/Builtins.lc 511:31-511:35 Type 2766testdata/Builtins.lc 511:31-511:35 Type
2767testdata/Builtins.lc 512:1-512:11 List ImageKind -> List Type 2767testdata/Builtins.lc 512:1-512:11 List ImageKind -> List Type
2768testdata/Builtins.lc 512:25-512:28 {a} -> {b} -> a->b -> List a -> List b 2768testdata/Builtins.lc 512:25-512:28 {a} -> {b} -> (a->b) -> List a -> List b
2769testdata/Builtins.lc 512:25-512:38 List ImageKind -> List Type 2769testdata/Builtins.lc 512:25-512:38 List ImageKind -> List Type
2770testdata/Builtins.lc 512:25-512:40 List Type 2770testdata/Builtins.lc 512:25-512:40 List Type
2771testdata/Builtins.lc 512:25-513:31 List ImageKind -> List Type | List Type | List Type -> ImageKind -> List Type | List b_ -> List Type | a_ -> List b_ -> List Type 2771testdata/Builtins.lc 512:25-513:31 List ImageKind -> List Type | List Type | List Type -> ImageKind -> List Type | List b_ -> List Type | a_ -> List b_ -> List Type
2772testdata/Builtins.lc 512:29-512:38 ImageKind->Type 2772testdata/Builtins.lc 512:29-512:38 ImageKind->Type
2773testdata/Builtins.lc 512:39-512:40 List c_ 2773testdata/Builtins.lc 512:39-512:40 List c_
2774testdata/Builtins.lc 513:16-513:19 {a} -> {b} -> a->b -> List a -> List b 2774testdata/Builtins.lc 513:16-513:19 {a} -> {b} -> (a->b) -> List a -> List b
2775testdata/Builtins.lc 513:16-513:29 List ImageKind -> List Type 2775testdata/Builtins.lc 513:16-513:29 List ImageKind -> List Type
2776testdata/Builtins.lc 513:16-513:31 List Type | Type->b_ 2776testdata/Builtins.lc 513:16-513:31 List Type | Type->b_
2777testdata/Builtins.lc 513:20-513:29 ImageKind->Type 2777testdata/Builtins.lc 513:20-513:29 ImageKind->Type
@@ -2790,7 +2790,7 @@ testdata/Builtins.lc 517:50-517:51 e_
2790testdata/Builtins.lc 517:50-517:53 d_->Type 2790testdata/Builtins.lc 517:50-517:53 d_->Type
2791testdata/Builtins.lc 517:50-517:81 Type 2791testdata/Builtins.lc 517:50-517:81 Type
2792testdata/Builtins.lc 517:52-517:53 {a} -> a -> a->Type 2792testdata/Builtins.lc 517:52-517:53 {a} -> a -> a->Type
2793testdata/Builtins.lc 517:54-517:57 {a} -> {b} -> a->b -> List a -> List b 2793testdata/Builtins.lc 517:54-517:57 {a} -> {b} -> (a->b) -> List a -> List b
2794testdata/Builtins.lc 517:54-517:79 List Type -> List ImageKind 2794testdata/Builtins.lc 517:54-517:79 List Type -> List ImageKind
2795testdata/Builtins.lc 517:54-517:81 List ImageKind 2795testdata/Builtins.lc 517:54-517:81 List ImageKind
2796testdata/Builtins.lc 517:58-517:79 Type->ImageKind 2796testdata/Builtins.lc 517:58-517:79 Type->ImageKind
@@ -2854,7 +2854,7 @@ testdata/Builtins.lc 530:87-530:103 Nat
2854testdata/Builtins.lc 530:96-530:100 {a} -> List a -> a 2854testdata/Builtins.lc 530:96-530:100 {a} -> List a -> a
2855testdata/Builtins.lc 530:96-530:102 Type 2855testdata/Builtins.lc 530:96-530:102 Type
2856testdata/Builtins.lc 530:101-530:102 List Type 2856testdata/Builtins.lc 530:101-530:102 List Type
2857testdata/Builtins.lc 530:106-530:109 {a} -> {b} -> a->b -> List a -> List b 2857testdata/Builtins.lc 530:106-530:109 {a} -> {b} -> (a->b) -> List a -> List b
2858testdata/Builtins.lc 530:106-530:122 List Type -> List ImageKind 2858testdata/Builtins.lc 530:106-530:122 List Type -> List ImageKind
2859testdata/Builtins.lc 530:106-530:124 List ImageKind 2859testdata/Builtins.lc 530:106-530:124 List ImageKind
2860testdata/Builtins.lc 530:110-530:122 Type->ImageKind 2860testdata/Builtins.lc 530:110-530:122 Type->ImageKind
@@ -2867,7 +2867,7 @@ testdata/Builtins.lc 534:34-534:48 FragmentStream b_ (HList ('imageType' ('map
2867testdata/Builtins.lc 534:34-534:76 FrameBuffer c_ ('map Type ImageKind FragmentOperationKind b_) -> FrameBuffer d_ ('map Type ImageKind FragmentOperationKind c_) 2867testdata/Builtins.lc 534:34-534:76 FrameBuffer c_ ('map Type ImageKind FragmentOperationKind b_) -> FrameBuffer d_ ('map Type ImageKind FragmentOperationKind c_)
2868testdata/Builtins.lc 534:34-534:79 FrameBuffer c_ ('map Type ImageKind FragmentOperationKind b_) 2868testdata/Builtins.lc 534:34-534:79 FrameBuffer c_ ('map Type ImageKind FragmentOperationKind b_)
2869testdata/Builtins.lc 534:45-534:48 j_ 2869testdata/Builtins.lc 534:45-534:48 j_
2870testdata/Builtins.lc 534:50-534:62 {a} -> {b} -> {c:Nat} -> a->b -> List (Vector c (Maybe (SimpleFragment a))) -> List (Vector c (Maybe (SimpleFragment b))) 2870testdata/Builtins.lc 534:50-534:62 {a} -> {b} -> {c:Nat} -> (a->b) -> List (Vector c (Maybe (SimpleFragment a))) -> List (Vector c (Maybe (SimpleFragment b)))
2871testdata/Builtins.lc 534:50-534:70 List (Vector a_ (Maybe (SimpleFragment c_))) -> List (Vector b_ (Maybe (SimpleFragment c_))) 2871testdata/Builtins.lc 534:50-534:70 List (Vector a_ (Maybe (SimpleFragment c_))) -> List (Vector b_ (Maybe (SimpleFragment c_)))
2872testdata/Builtins.lc 534:50-534:75 List (Vector c_ (Maybe (SimpleFragment (HList ('imageType' ('map Type ImageKind FragmentOperationKind b_)))))) 2872testdata/Builtins.lc 534:50-534:75 List (Vector c_ (Maybe (SimpleFragment (HList ('imageType' ('map Type ImageKind FragmentOperationKind b_))))))
2873testdata/Builtins.lc 534:63-534:70 k_ 2873testdata/Builtins.lc 534:63-534:70 k_