Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
type ModuleInfo = Map Identifier (FilePath, Bool) Source #
generateMacroProgram :: Members '[Error Error, FileSystem, Resource] effs => Identifier -> [MacroDefinition] -> [Statement] -> [Expression] -> Eff effs (String, String, String) Source #
expansionPass :: Members '[Error Error, FileSystem, Ghci, Process, Resource, State ModuleInfo] effs => Ghci -> (FilePath -> Eff effs a) -> Expression -> Eff effs Expression Source #
exhaustivelyExpandMacros :: Members '[Error Error, FileSystem, Ghci, Process, Resource, State ModuleInfo] effs => (FilePath -> Eff effs a) -> Expression -> Eff effs Expression Source #
isMacroImported :: Identifier -> [Statement] -> Bool Source #
typeMacroDefinitions :: [MacroDefinition] -> [TypeSignature] Source #
expandMacros :: Members '[Error Error, FileSystem, Ghci, Process, Resource, State ModuleInfo] effs => Ghci -> (FilePath -> Eff effs a) -> [Expression] -> Eff effs [Statement] Source #
expandMacroApplication :: Members '[Error Error, FileSystem, Ghci, Process, Resource] effs => Ghci -> Identifier -> [MacroDefinition] -> [Statement] -> [Expression] -> Eff effs [Expression] Source #
lookupMacroDefinitions :: Identifier -> [MacroDefinition] -> [MacroDefinition] Source #