File: Parser.hs

package info (click to toggle)
haskell-language-c-quote 0.13.0.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 484 kB
  • sloc: haskell: 4,939; yacc: 3,663; makefile: 5
file content (31 lines) | stat: -rw-r--r-- 728 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
-- |
-- Module      :  Language.C.Parser
-- Copyright   :  (c)  2006-2010 Harvard University
-- License     :  BSD-style
-- Maintainer  :  mainland@drexel.edu

module Language.C.Parser (
    module Language.C.Parser.Lexer,
    module Language.C.Parser.Monad,
    module Language.C.Parser.Parser,
    parse
  ) where

import Control.Exception

import qualified Data.ByteString.Char8 as B
import Data.Loc

import Language.C.Parser.Lexer
import Language.C.Parser.Parser
import Language.C.Parser.Monad
import Language.C.Syntax

parse :: [Extensions]
      -> [String]
      -> P a
      -> B.ByteString
      -> Maybe Pos
      -> Either SomeException a
parse exts typnames p bs pos =
    evalP p (emptyPState exts typnames bs pos)