haskell-src-exts-1.16.0.1: Manipulating Haskell source: abstract syntax, lexer, parser, and pretty-printer

Copyright(c) Niklas Broberg 2004-2009
LicenseBSD-style (see the file LICENSE.txt)
MaintainerNiklas Broberg, d00nibro@chalmers.se
Stabilitystable
Portabilityportable
Safe HaskellNone
LanguageHaskell98

Language.Haskell.Exts

Contents

Description

An umbrella module for the various functionality of the package. Also provides some convenient functionality for dealing directly with source files.

Synopsis

Re-exported modules

Parsing of Haskell source files

parseFile :: FilePath -> IO (ParseResult Module)

Parse a source file on disk, using the default parse mode.

parseFileWithMode :: ParseMode -> FilePath -> IO (ParseResult Module)

Parse a source file on disk, supplying a custom parse mode.

parseFileWithExts :: [Extension] -> FilePath -> IO (ParseResult Module)

Parse a source file on disk, with an extra set of extensions to know about on top of what the file itself declares.

parseFileWithComments :: ParseMode -> FilePath -> IO (ParseResult (Module, [Comment]))

Parse a source file on disk, supplying a custom parse mode, and retaining comments.

parseFileWithCommentsAndPragmas :: ParseMode -> FilePath -> IO (ParseResult (Module, [Comment], [UnknownPragma]))

Parse a source file on disk, supplying a custom parse mode, and retaining comments as well as unknown pragmas.

parseFileContents :: String -> ParseResult Module

Parse a source file from a string using the default parse mode.

parseFileContentsWithMode :: ParseMode -> String -> ParseResult Module

Parse a source file from a string using a custom parse mode.

parseFileContentsWithExts :: [Extension] -> String -> ParseResult Module

Parse a source file from a string, with an extra set of extensions to know about on top of what the file itself declares.

parseFileContentsWithComments :: ParseMode -> String -> ParseResult (Module, [Comment])

Parse a source file from a string using a custom parse mode and retaining comments.

parseFileContentsWithCommentsAndPragmas :: ParseMode -> String -> ParseResult (Module, [Comment], [UnknownPragma])

Parse a source file from a string using a custom parse mode retaining comments as well as unknown pragmas.

Read extensions declared in LANGUAGE pragmas

readExtensions :: String -> Maybe (Maybe Language, [Extension])

Gather the extensions declared in LANGUAGE pragmas at the top of the file. Returns Nothing if the parse of the pragmas fails.