Safe Haskell | None |
---|---|
Language | Haskell2010 |
- type Shader gs is os = SVList gs -> SVList is -> SVList os
- type Valid gs is os = (StaticSVList gs, StaticSVList is, StaticSVList os)
- type Member x xs = IsMember x xs ~ True
- type Subset xs ys = TrueOrErr (IsSubset xs ys) ((((Text "\8216" :<>: ShowType xs) :<>: Text "\8217 is not a subset of \8216") :<>: ShowType ys) :<>: Text "\8217")
- type Equal xs ys = IsEqual xs ys ~ True
- type family Union (xs :: [*]) (ys :: [*]) where ...
- type family Insert y (xs :: [*]) where ...
- data SVList :: [*] -> * where
- class ShaderVar g where
- type BaseTypes g = GBaseTypes (Rep g)
- varPreName :: ShaderVar g => g -> String
- varBuild :: ShaderVar g => (forall x. ShaderType x => Int -> x) -> Proxy g -> g
- varToList :: ShaderVar g => (forall x. ShaderType x => Int -> x -> t) -> g -> [t]
- svFold :: (forall x. ShaderVar x => acc -> x -> acc) -> acc -> SVList xs -> acc
- svToList :: (forall x. ShaderVar x => x -> [y]) -> SVList xs -> [y]
- staticSVList :: StaticSVList xs => Proxy (xs :: [*]) -> (forall x. ShaderVar x => Proxy x -> x) -> SVList xs
Documentation
type Shader gs is os = SVList gs -> SVList is -> SVList os Source #
A function from a (heterogeneous) set of uniforms and a set of inputs (attributes or varyings) to a set of outputs (varyings).
type Valid gs is os = (StaticSVList gs, StaticSVList is, StaticSVList os) Source #
The condition for a valid Shader
.
type Subset xs ys = TrueOrErr (IsSubset xs ys) ((((Text "\8216" :<>: ShowType xs) :<>: Text "\8217 is not a subset of \8216") :<>: ShowType ys) :<>: Text "\8217") Source #
class ShaderVar g where Source #
varPreName :: g -> String Source #
varBuild :: (forall x. ShaderType x => Int -> x) -> Proxy g -> g Source #
varToList :: (forall x. ShaderType x => Int -> x -> t) -> g -> [t] Source #
varPreName :: ShaderVar g => g -> String Source #