idris-1.3.4: Functional Programming Language with Dependent Types
LicenseBSD3
MaintainerThe Idris Community.
Safe HaskellSafe-Inferred
LanguageHaskell2010

IRTS.CodegenCommon

Description

 
Synopsis

Documentation

data DbgLevel #

Constructors

NONE 
DEBUG 
TRACE 

Instances

Instances details
Eq DbgLevel # 
Instance details

Defined in IRTS.CodegenCommon

Methods

(==) :: DbgLevel -> DbgLevel -> Bool

(/=) :: DbgLevel -> DbgLevel -> Bool

data OutputType #

Constructors

Raw 
Object 
Executable 

Instances

Instances details
Generic OutputType # 
Instance details

Defined in IRTS.CodegenCommon

Associated Types

type Rep OutputType :: Type -> Type

Methods

from :: OutputType -> Rep OutputType x

to :: Rep OutputType x -> OutputType

Show OutputType # 
Instance details

Defined in IRTS.CodegenCommon

Methods

showsPrec :: Int -> OutputType -> ShowS

show :: OutputType -> String

showList :: [OutputType] -> ShowS

NFData OutputType 
Instance details

Defined in Idris.DeepSeq

Methods

rnf :: OutputType -> ()

Eq OutputType # 
Instance details

Defined in IRTS.CodegenCommon

Methods

(==) :: OutputType -> OutputType -> Bool

(/=) :: OutputType -> OutputType -> Bool

type Rep OutputType # 
Instance details

Defined in IRTS.CodegenCommon

type Rep OutputType = D1 ('MetaData "OutputType" "IRTS.CodegenCommon" "idris-1.3.4-BlNNV9hBERVKY9AdbdQobo" 'False) (C1 ('MetaCons "Raw" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Object" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Executable" 'PrefixI 'False) (U1 :: Type -> Type)))

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

Instances details
ToJSON CodegenInfo # 
Instance details

Defined in IRTS.Portable

type CodeGenerator = CodegenInfo -> IO () #