License | BSD3 |
---|---|
Maintainer | The Idris Community. |
Safe Haskell | None |
Language | Haskell2010 |
IRTS.CodegenCommon
Description
Synopsis
- data DbgLevel
- data OutputType
- = Raw
- | Object
- | Executable
- data CodegenInfo = CodegenInfo {
- outputFile :: String
- outputType :: OutputType
- targetTriple :: String
- targetCPU :: String
- includes :: [FilePath]
- importDirs :: [FilePath]
- compileObjs :: [String]
- compileLibs :: [String]
- compilerFlags :: [String]
- debugLevel :: DbgLevel
- simpleDecls :: [(Name, SDecl)]
- defunDecls :: [(Name, DDecl)]
- liftDecls :: [(Name, LDecl)]
- interfaces :: Bool
- exportDecls :: [ExportIFace]
- ttDecls :: [(Name, TTDecl)]
- type CodeGenerator = CodegenInfo -> IO ()
Documentation
data OutputType #
Constructors
Raw | |
Object | |
Executable |
Instances
data CodegenInfo #
Everything which might be needed in a code generator.
A CG can choose which level of Decls to generate code from (simplified, defunctionalised or merely lambda lifted) and has access to the list of object files, libraries, etc.
Constructors
CodegenInfo | |
Fields
|
Instances
ToJSON CodegenInfo # | |
Defined in IRTS.Portable Methods toJSON :: CodegenInfo -> Value # toEncoding :: CodegenInfo -> Encoding # toJSONList :: [CodegenInfo] -> Value # toEncodingList :: [CodegenInfo] -> Encoding # omitField :: CodegenInfo -> Bool # |
type CodeGenerator = CodegenInfo -> IO () #