Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- type Result = [(FilePath, String)]
- type Log = Writer String
- type Output = WriterT Result Log ()
- class Backend (target :: TargetLanguage) where
- type BackendOptions target
- type BackendState target
- parseOpts :: Parser (BackendOptions target)
- initState :: LBNF -> GlobalOptions -> BackendOptions target -> Except String (BackendState target)
- abstractSyntax :: LBNF -> State (BackendState target) Result
- printer :: LBNF -> State (BackendState target) Result
- lexer :: LBNF -> State (BackendState target) Result
- parser :: LBNF -> State (BackendState target) Result
- parserTest :: LBNF -> State (BackendState target) Result
- makefile :: LBNF -> State (BackendState target) Result
- runBackend :: forall target. Backend target => GlobalOptions -> BackendOptions target -> LBNF -> Except String Result
Documentation
class Backend (target :: TargetLanguage) where Source #
Backend typeclass.
type BackendOptions target Source #
type BackendState target Source #
parseOpts :: Parser (BackendOptions target) Source #
initState :: LBNF -> GlobalOptions -> BackendOptions target -> Except String (BackendState target) Source #
abstractSyntax :: LBNF -> State (BackendState target) Result Source #
printer :: LBNF -> State (BackendState target) Result Source #
lexer :: LBNF -> State (BackendState target) Result Source #
parser :: LBNF -> State (BackendState target) Result Source #
parserTest :: LBNF -> State (BackendState target) Result Source #
makefile :: LBNF -> State (BackendState target) Result Source #
Instances
runBackend :: forall target. Backend target => GlobalOptions -> BackendOptions target -> LBNF -> Except String Result Source #