packages feed

haskell-src 1.0.1.3 → 1.0.1.4

raw patch · 3 files changed

+46/−16 lines, 3 filesdep +sybdep ~basePVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies added: syb

Dependency ranges changed: base

API changes (from Hackage documentation)

- Language.Haskell.Lexer: At :: Token
- Language.Haskell.Lexer: BackQuote :: Token
- Language.Haskell.Lexer: Backslash :: Token
- Language.Haskell.Lexer: Bar :: Token
- Language.Haskell.Lexer: Character :: Char -> Token
- Language.Haskell.Lexer: Colon :: Token
- Language.Haskell.Lexer: Comma :: Token
- Language.Haskell.Lexer: ConId :: String -> Token
- Language.Haskell.Lexer: ConSym :: String -> Token
- Language.Haskell.Lexer: DotDot :: Token
- Language.Haskell.Lexer: DoubleArrow :: Token
- Language.Haskell.Lexer: DoubleColon :: Token
- Language.Haskell.Lexer: EOF :: Token
- Language.Haskell.Lexer: Equals :: Token
- Language.Haskell.Lexer: Exclamation :: Token
- Language.Haskell.Lexer: FloatTok :: Rational -> Token
- Language.Haskell.Lexer: IntTok :: Integer -> Token
- Language.Haskell.Lexer: KW_As :: Token
- Language.Haskell.Lexer: KW_Case :: Token
- Language.Haskell.Lexer: KW_Class :: Token
- Language.Haskell.Lexer: KW_Data :: Token
- Language.Haskell.Lexer: KW_Default :: Token
- Language.Haskell.Lexer: KW_Deriving :: Token
- Language.Haskell.Lexer: KW_Do :: Token
- Language.Haskell.Lexer: KW_Else :: Token
- Language.Haskell.Lexer: KW_Export :: Token
- Language.Haskell.Lexer: KW_Foreign :: Token
- Language.Haskell.Lexer: KW_Hiding :: Token
- Language.Haskell.Lexer: KW_If :: Token
- Language.Haskell.Lexer: KW_Import :: Token
- Language.Haskell.Lexer: KW_In :: Token
- Language.Haskell.Lexer: KW_Infix :: Token
- Language.Haskell.Lexer: KW_InfixL :: Token
- Language.Haskell.Lexer: KW_InfixR :: Token
- Language.Haskell.Lexer: KW_Instance :: Token
- Language.Haskell.Lexer: KW_Let :: Token
- Language.Haskell.Lexer: KW_Module :: Token
- Language.Haskell.Lexer: KW_NewType :: Token
- Language.Haskell.Lexer: KW_Of :: Token
- Language.Haskell.Lexer: KW_Qualified :: Token
- Language.Haskell.Lexer: KW_Safe :: Token
- Language.Haskell.Lexer: KW_Then :: Token
- Language.Haskell.Lexer: KW_Type :: Token
- Language.Haskell.Lexer: KW_Unsafe :: Token
- Language.Haskell.Lexer: KW_Where :: Token
- Language.Haskell.Lexer: LeftArrow :: Token
- Language.Haskell.Lexer: LeftCurly :: Token
- Language.Haskell.Lexer: LeftParen :: Token
- Language.Haskell.Lexer: LeftSquare :: Token
- Language.Haskell.Lexer: Minus :: Token
- Language.Haskell.Lexer: QConId :: (String, String) -> Token
- Language.Haskell.Lexer: QConSym :: (String, String) -> Token
- Language.Haskell.Lexer: QVarId :: (String, String) -> Token
- Language.Haskell.Lexer: QVarSym :: (String, String) -> Token
- Language.Haskell.Lexer: RightArrow :: Token
- Language.Haskell.Lexer: RightCurly :: Token
- Language.Haskell.Lexer: RightParen :: Token
- Language.Haskell.Lexer: RightSquare :: Token
- Language.Haskell.Lexer: SemiColon :: Token
- Language.Haskell.Lexer: StringTok :: String -> Token
- Language.Haskell.Lexer: Tilde :: Token
- Language.Haskell.Lexer: Underscore :: Token
- Language.Haskell.Lexer: VRightCurly :: Token
- Language.Haskell.Lexer: VarId :: String -> Token
- Language.Haskell.Lexer: VarSym :: String -> Token
- Language.Haskell.Lexer: data Token
- Language.Haskell.Lexer: instance Eq Token
- Language.Haskell.Lexer: instance Show Token
- Language.Haskell.Lexer: lexer :: (Token -> P a) -> P a
- Language.Haskell.ParseMonad: Layout :: Int -> LexContext
- Language.Haskell.ParseMonad: NoLayout :: LexContext
- Language.Haskell.ParseMonad: ParseFailed :: SrcLoc -> String -> ParseResult a
- Language.Haskell.ParseMonad: ParseMode :: String -> ParseMode
- Language.Haskell.ParseMonad: ParseOk :: a -> ParseResult a
- Language.Haskell.ParseMonad: alternative :: Lex a v -> Lex a (Lex a v)
- Language.Haskell.ParseMonad: atSrcLoc :: P a -> SrcLoc -> P a
- Language.Haskell.ParseMonad: checkBOL :: Lex a Bool
- Language.Haskell.ParseMonad: data Lex r a
- Language.Haskell.ParseMonad: data LexContext
- Language.Haskell.ParseMonad: data P a
- Language.Haskell.ParseMonad: data ParseMode
- Language.Haskell.ParseMonad: data ParseResult a
- Language.Haskell.ParseMonad: defaultParseMode :: ParseMode
- Language.Haskell.ParseMonad: discard :: Int -> Lex r ()
- Language.Haskell.ParseMonad: getInput :: Lex r String
- Language.Haskell.ParseMonad: getOffside :: Lex a Ordering
- Language.Haskell.ParseMonad: getSrcLoc :: P SrcLoc
- Language.Haskell.ParseMonad: instance (Show a) => Show (ParseResult a)
- Language.Haskell.ParseMonad: instance (Show a) => Show (ParseStatus a)
- Language.Haskell.ParseMonad: instance Eq LexContext
- Language.Haskell.ParseMonad: instance Monad (Lex r)
- Language.Haskell.ParseMonad: instance Monad P
- Language.Haskell.ParseMonad: instance Ord LexContext
- Language.Haskell.ParseMonad: instance Show LexContext
- Language.Haskell.ParseMonad: lexNewline :: Lex a ()
- Language.Haskell.ParseMonad: lexTab :: Lex a ()
- Language.Haskell.ParseMonad: lexWhile :: (Char -> Bool) -> Lex a String
- Language.Haskell.ParseMonad: parseFilename :: ParseMode -> String
- Language.Haskell.ParseMonad: popContext :: P ()
- Language.Haskell.ParseMonad: popContextL :: String -> Lex a ()
- Language.Haskell.ParseMonad: pushContextL :: LexContext -> Lex a ()
- Language.Haskell.ParseMonad: pushCurrentContext :: P ()
- Language.Haskell.ParseMonad: runParser :: P a -> String -> ParseResult a
- Language.Haskell.ParseMonad: runParserWithMode :: ParseMode -> P a -> String -> ParseResult a
- Language.Haskell.ParseMonad: setBOL :: Lex a ()
- Language.Haskell.ParseMonad: startToken :: Lex a ()
- Language.Haskell.ParseUtils: checkAssertion :: HsType -> P HsAsst
- Language.Haskell.ParseUtils: checkClassBody :: [HsDecl] -> P [HsDecl]
- Language.Haskell.ParseUtils: checkClassHeader :: HsQualType -> P (HsContext, HsName, [HsName])
- Language.Haskell.ParseUtils: checkContext :: HsType -> P HsContext
- Language.Haskell.ParseUtils: checkDataHeader :: HsQualType -> P (HsContext, HsName, [HsName])
- Language.Haskell.ParseUtils: checkExpr :: HsExp -> P HsExp
- Language.Haskell.ParseUtils: checkInstHeader :: HsQualType -> P (HsContext, HsQName, [HsType])
- Language.Haskell.ParseUtils: checkPattern :: HsExp -> P HsPat
- Language.Haskell.ParseUtils: checkPrec :: Integer -> P Int
- Language.Haskell.ParseUtils: checkRevDecls :: [HsDecl] -> P [HsDecl]
- Language.Haskell.ParseUtils: checkUnQual :: HsQName -> P HsName
- Language.Haskell.ParseUtils: checkValDef :: SrcLoc -> HsExp -> HsRhs -> [HsDecl] -> P HsDecl
- Language.Haskell.ParseUtils: mkRecConstrOrUpdate :: HsExp -> [HsFieldUpdate] -> P HsExp
- Language.Haskell.ParseUtils: splitTyConApp :: HsType -> P (HsName, [HsType])
- Language.Haskell.Pretty: prettyPrint :: (Pretty a) => a -> String
+ Language.Haskell.Pretty: prettyPrint :: Pretty a => a -> String
- Language.Haskell.Pretty: prettyPrintStyleMode :: (Pretty a) => Style -> PPHsMode -> a -> String
+ Language.Haskell.Pretty: prettyPrintStyleMode :: Pretty a => Style -> PPHsMode -> a -> String
- Language.Haskell.Pretty: prettyPrintWithMode :: (Pretty a) => PPHsMode -> a -> String
+ Language.Haskell.Pretty: prettyPrintWithMode :: Pretty a => PPHsMode -> a -> String

Files

Language/Haskell/ParseMonad.hs view
@@ -26,6 +26,8 @@ 	) where  import Language.Haskell.Syntax(SrcLoc(..))+import Control.Applicative+import Data.Monoid  -- | The result of a parse. data ParseResult a@@ -34,6 +36,26 @@ 				-- ^ The parse failed at the specified 				-- source location, with an error message. 	deriving Show++instance Functor ParseResult where+  fmap f (ParseOk x)           = ParseOk $ f x+  fmap f (ParseFailed loc msg) = ParseFailed loc msg++instance Applicative ParseResult where+  pure = ParseOk+  ParseOk f           <*> x = f <$> x+  ParseFailed loc msg <*> _ = ParseFailed loc msg++instance Monad ParseResult where+  return = ParseOk+  ParseOk x           >>= f = f x+  ParseFailed loc msg >>= _ = ParseFailed loc msg++instance Monoid m => Monoid (ParseResult m) where+  mempty = ParseOk mempty+  ParseOk x `mappend` ParseOk y = ParseOk $ x `mappend` y+  ParseOk _ `mappend` err       = err+  err       `mappend` _         = err -- left-biased  -- internal version data ParseStatus a = Ok ParseState a | Failed SrcLoc String
Language/Haskell/Syntax.hs view
@@ -1,4 +1,5 @@-{-# OPTIONS_GHC -fglasgow-exts -cpp #-}+{-# LANGUAGE CPP                #-}+{-# LANGUAGE DeriveDataTypeable #-} ----------------------------------------------------------------------------- -- | -- Module      :  Language.Haskell.Syntax
haskell-src.cabal view
@@ -1,19 +1,26 @@-name:		haskell-src-version:	1.0.1.3-license:	BSD3-license-file:	LICENSE-author:		Simon Marlow, Sven Panne and Noel Winstanley-maintainer:	libraries@haskell.org-category:	Language-synopsis:	Manipulating Haskell source code+name:           haskell-src+version:        1.0.1.4+license:        BSD3+license-file:   LICENSE+author:         Simon Marlow, Sven Panne and Noel Winstanley+maintainer:     libraries@haskell.org+category:       Language+synopsis:       Support for manipulating Haskell source code description:-	Facilities for manipulating Haskell source code:-	an abstract syntax, lexer, parser and pretty-printer.+    The 'haskell-src' package provides support for manipulating Haskell+    source code. The package provides a lexer, parser and+    pretty-printer, and a definition of a Haskell abstract syntax tree+    (AST). Common uses of this package are to parse or generate Haskell+    98 code. build-type:     Simple-cabal-version:  >=1.2+cabal-version:  >=1.6  flag split-base +source-repository head+    type:     darcs+    location: http://code.haskell.org/haskell-src+ library   exposed-modules:         Language.Haskell.Lexer,@@ -23,11 +30,11 @@         Language.Haskell.Syntax,         Language.Haskell.ParseUtils   if flag(split-base)-    build-depends:	base >= 3 && < 4, pretty, array+    build-depends:      base >= 4 && < 5, syb, pretty, array   else-    build-depends:	base < 3+    build-depends:      base < 3   build-depends: haskell98   -- The dependency on Haskell 98 is only because   -- Happy generates a parser that imports Array-  extensions:	CPP-  nhc98-options:	-K11M+  extensions:   CPP+  nhc98-options:        -K11M