ghc-9.4.0.20220623: The GHC API
Safe HaskellSafe-Inferred
LanguageHaskell2010

GHC.Parser

Description

This module provides the generated Happy parser for Haskell. It exports a number of parsers which may be used in any library that uses the GHC API. A common usage pattern is to initialize the parser state with a given string and then parse that string:

    runParser :: ParserOpts -> String -> P a -> ParseResult a
    runParser opts str parser = unP parser parseState
    where
      filename = "<interactive>"
      location = mkRealSrcLoc (mkFastString filename) 1 1
      buffer = stringToStringBuffer str
      parseState = initParserState opts buffer location
Synopsis

Documentation

parseModule :: P (Located HsModule) Source #

Parse a Haskell module with Haddock comments. This is done in two steps:

This is the only parser entry point that deals with Haddock comments. The other entry points (parseDeclaration, parseExpression, etc) do not insert them into the AST.