Safe Haskell | None |
---|---|
Language | Haskell2010 |
- class KnownTypeSymbol a where
- genKnownTypeSymbol :: TypeQ -> ExpQ -> DecsQ
- class Socketed a where
- genSocketed :: TypeQ -> ExpQ -> ExpQ -> DecsQ
- call :: (Socketed a, Socketed b) => String -> a -> b
- call2 :: (Socketed a, Socketed b, Socketed c) => String -> a -> b -> c
- call3 :: (Socketed a, Socketed b, Socketed c, Socketed d) => String -> a -> b -> c -> d
- call4 :: (Socketed a, Socketed b, Socketed c, Socketed d, Socketed e) => String -> a -> b -> c -> d -> e
- callInfix :: (Socketed a, Socketed b, Socketed c) => String -> a -> b -> c
- toDefinition :: forall a. (Socketed a, KnownTypeSymbol a) => a -> String
- define :: (Socketed a, KnownTypeSymbol a) => a -> IxShader ctx i i a
- stringDefinition :: (Socketed k, KnownTypeSymbol k) => k -> k -> String
- defineAs :: (Socketed a, KnownTypeSymbol a) => String -> a -> IxShader ctx i i a
- def :: (Socketed a, KnownTypeSymbol a) => String -> a -> IxShader ctx i i a
Documentation
class KnownTypeSymbol a where Source #
typeSymbolVal :: Proxy a -> String Source #
class Socketed a where Source #
A socket is simply a place where you can stick an external expression as a string. It's good for named uninitializeds, function application, all sorts of stuff.
Socketed Xbool Source # | |
Socketed Xint Source # | |
Socketed Xvoid Source # | |
Socketed Xuint Source # | |
Socketed Xfloat Source # | |
Socketed Xvec2 Source # | |
Socketed Xvec3 Source # | |
Socketed Xvec4 Source # | |
Socketed Xbvec2 Source # | |
Socketed Xbvec3 Source # | |
Socketed Xbvec4 Source # | |
Socketed Xivec2 Source # | |
Socketed Xivec3 Source # | |
Socketed Xivec4 Source # | |
Socketed Xuvec2 Source # | |
Socketed Xuvec3 Source # | |
Socketed Xuvec4 Source # | |
Socketed Xmat2 Source # | |
Socketed Xmat2x3 Source # | |
Socketed Xmat2x4 Source # | |
Socketed Xmat3x2 Source # | |
Socketed Xmat3 Source # | |
Socketed Xmat3x4 Source # | |
Socketed Xmat4x2 Source # | |
Socketed Xmat4x3 Source # | |
Socketed Xmat4 Source # | |
Socketed t => Socketed (Const t) Source # | |
Socketed t => Socketed (Out k t n) Source # | |
Socketed t => Socketed (In k t n) Source # | |
Socketed t => Socketed (Uniform k t n) Source # | |
call4 :: (Socketed a, Socketed b, Socketed c, Socketed d, Socketed e) => String -> a -> b -> c -> d -> e Source #
toDefinition :: forall a. (Socketed a, KnownTypeSymbol a) => a -> String Source #
define :: (Socketed a, KnownTypeSymbol a) => a -> IxShader ctx i i a Source #
Construct a new thing. Declares the thing w/o initialization.
stringDefinition :: (Socketed k, KnownTypeSymbol k) => k -> k -> String Source #