on master help sign in
Start tracking GLSL source with a Utf8.VeryLong
8f4bd0dEvan Czaplicki
compiler/src/AST/Utils/Shader.hs+16−8
@@ -1,6 +1,8 @@
1{-# OPTIONS_GHC -Wall #-}
1{-# OPTIONS_GHC -Wall #-}
2+{-# LANGUAGE EmptyDataDecls #-}
2module AST.Utils.Shader
3module AST.Utils.Shader
3− ( Shader(..)
4+ ( Source
5+ , Types(..)
4 , Type(..)
6 , Type(..)
5 )
7 )
6 where
8 where
@@ -8,24 +10,30 @@ module AST.Utils.Shader
8
10
9import qualified Data.Map as Map
11import qualified Data.Map as Map
10import qualified Data.Name as Name
12import qualified Data.Name as Name
13+import qualified Data.Utf8 as Utf8
11
14
12
15
13
16
14−-- SHADERS
17+-- SOURCE
15
18
16
19
20+type Source = Utf8.VeryLong SOURCE
21+
22+data SOURCE
23+
24+
25+
26+-- TYPES
27+
28+
17−data Shader =
29+data Types =
18− Shader
30+ Types
19 { _attribute :: Map.Map Name.Name Type
31 { _attribute :: Map.Map Name.Name Type
20 , _uniform :: Map.Map Name.Name Type
32 , _uniform :: Map.Map Name.Name Type
21 , _varying :: Map.Map Name.Name Type
33 , _varying :: Map.Map Name.Name Type
22 }
34 }
23
35
24
36
25−
26−-- GL TYPES
27−
28−
29data Type
37data Type
30 = Int
38 = Int
31 | Float
39 | Float