-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Preprocess+parse haskell code -- -- Preprocess+parse haskell code @package hse-cpp @version 0.2 module Language.Haskell.Exts.CPP parseFileWithCommentsAndCPP :: CpphsOptions -> ParseMode -> FilePath -> IO (ParseResult (Module SrcSpanInfo, [Comment])) parseFileContentsWithCommentsAndCPP :: CpphsOptions -> ParseMode -> String -> IO (ParseResult (Module SrcSpanInfo, [Comment])) defaultCpphsOptions :: CpphsOptions -- | Cpphs options structure. data CpphsOptions :: * CpphsOptions :: [FilePath] -> [FilePath] -> [(String, String)] -> [String] -> [FilePath] -> BoolOptions -> CpphsOptions [infiles] :: CpphsOptions -> [FilePath] [outfiles] :: CpphsOptions -> [FilePath] [defines] :: CpphsOptions -> [(String, String)] [includes] :: CpphsOptions -> [String] -- | Files to #include before anything else [preInclude] :: CpphsOptions -> [FilePath] [boolopts] :: CpphsOptions -> BoolOptions -- | Options representable as Booleans. data BoolOptions :: * BoolOptions :: Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> BoolOptions -- | Leave #define and #undef in output of ifdef? [macros] :: BoolOptions -> Bool -- | Place #line droppings in output? [locations] :: BoolOptions -> Bool -- | Write #line or {-# LINE #-} ? [hashline] :: BoolOptions -> Bool -- | Keep #pragma in final output? [pragma] :: BoolOptions -> Bool -- | Remove C eol (//) comments everywhere? [stripEol] :: BoolOptions -> Bool -- | Remove C inline (/**/) comments everywhere? [stripC89] :: BoolOptions -> Bool -- | Lex input as Haskell code? [lang] :: BoolOptions -> Bool -- | Permit stringise # and catenate ## operators? [ansi] :: BoolOptions -> Bool -- | Retain newlines in macro expansions? [layout] :: BoolOptions -> Bool -- | Remove literate markup? [literate] :: BoolOptions -> Bool -- | Issue warnings? [warnings] :: BoolOptions -> Bool