Safe Haskell | None |
---|---|
Language | Haskell2010 |
Deprecated: This module will be hidden in future versions.
High-level translation of Copilot Core into C99.
Synopsis
- gendecln :: String -> Type a -> Decln
- genfun :: String -> Expr a -> Type a -> FunDef
- mkextdecln :: External -> Decln
- mkextcpydecln :: External -> Decln
- mkbuffdecln :: Id -> Type a -> [a] -> Decln
- mkindexdecln :: Id -> Decln
- mkaccessdecln :: Id -> Type a -> [a] -> FunDef
- mkstep :: CSettings -> [Stream] -> [Trigger] -> [External] -> FunDef
- mkstructdecln :: Struct a => Type a -> Decln
- mkstructforwdecln :: Struct a => Type a -> Decln
- exprtypes :: Typeable a => Expr a -> [UType]
- typetypes :: Typeable a => Type a -> [UType]
- gatherexprs :: [Stream] -> [Trigger] -> [UExpr]
Documentation
mkextdecln :: External -> Decln Source #
Make a extern declaration of a variable.
mkextcpydecln :: External -> Decln Source #
Make a declaration for a copy of an external variable.
mkbuffdecln :: Id -> Type a -> [a] -> Decln Source #
Make a C buffer variable and initialise it with the stream buffer.
mkindexdecln :: Id -> Decln Source #
Make a C index variable and initialise it to 0.
mkaccessdecln :: Id -> Type a -> [a] -> FunDef Source #
Define an accessor functions for the ring buffer associated with a stream
mkstep :: CSettings -> [Stream] -> [Trigger] -> [External] -> FunDef Source #
Writes the step function, that updates all streams.
mkstructdecln :: Struct a => Type a -> Decln Source #
Write a struct declaration based on its definition.
exprtypes :: Typeable a => Expr a -> [UType] Source #
List all types of an expression, returns items uniquely.