packages feed

ghc-parser 0.2.1.0 → 0.2.2.0

raw patch · 3 files changed

+67/−7 lines, 3 filesdep ~ghc

Dependency ranges changed: ghc

Files

generic-src/Language/Haskell/GHC/Parser.hs view
@@ -30,7 +30,10 @@  import Bag import DynFlags (parseDynamicFilePragma)+#if MIN_VERSION_ghc(8,10,0)+#else import ErrUtils hiding (ErrMsg)+#endif import FastString #if MIN_VERSION_ghc(8,4,0) import GHC hiding (Located, Parsed, parser)@@ -133,23 +136,37 @@     toParseOut $ unP parser parseState   where     toParseOut :: ParseResult a -> ParseOutput a-#if MIN_VERSION_ghc(8,4,0)+#if MIN_VERSION_ghc(8,10,0)+    toParseOut (PFailed pstate) =+      let realSpan = last_loc pstate+          errMsg = printErrorBag $ snd $ (messages pstate) flags+          ln = srcLocLine $ SrcLoc.realSrcSpanStart realSpan+          col = srcLocCol $ SrcLoc.realSrcSpanStart realSpan+        in Failure errMsg $ Loc ln col+#elif MIN_VERSION_ghc(8,4,0)     toParseOut (PFailed _ spn@(RealSrcSpan realSpan) err) =+      let errMsg = printErrorBag $ unitBag $ mkPlainErrMsg flags spn err+          ln = srcLocLine $ SrcLoc.realSrcSpanStart realSpan+          col = srcLocCol $ SrcLoc.realSrcSpanStart realSpan+        in Failure errMsg $ Loc ln col #else     toParseOut (PFailed spn@(RealSrcSpan realSpan) err) =-#endif       let errMsg = printErrorBag $ unitBag $ mkPlainErrMsg flags spn err           ln = srcLocLine $ SrcLoc.realSrcSpanStart realSpan           col = srcLocCol $ SrcLoc.realSrcSpanStart realSpan         in Failure errMsg $ Loc ln col+#endif -#if MIN_VERSION_ghc(8,4,0)+#if MIN_VERSION_ghc(8,10,0)+#elif MIN_VERSION_ghc(8,4,0)     toParseOut (PFailed _ spn err) =+      let errMsg = printErrorBag $ unitBag $ mkPlainErrMsg flags spn err+        in Failure errMsg $ Loc 0 0 #else     toParseOut (PFailed spn err) =-#endif       let errMsg = printErrorBag $ unitBag $ mkPlainErrMsg flags spn err         in Failure errMsg $ Loc 0 0+#endif      toParseOut (POk _parseState result) =       Parsed result
ghc-parser.cabal view
@@ -2,7 +2,7 @@ -- documentation, see http://haskell.org/cabal/users-guide/  name:                ghc-parser-version:             0.2.1.0+version:             0.2.2.0 synopsis:            Haskell source parser from GHC. -- description: homepage:            https://github.com/gibiansky/IHaskell@@ -24,12 +24,15 @@   -- other-modules:   -- other-extensions:   build-depends:       base                 >=4.9 && < 5,-                       ghc                  >=8.0 && <8.9+                       ghc                  >=8.0 && <8.11    if impl(ghc >= 8.0) && impl(ghc < 8.4)     hs-source-dirs:    generic-src src-8.0   else-    hs-source-dirs:    generic-src src-8.4+    if impl(ghc >= 8.4) && impl(ghc < 8.10)+      hs-source-dirs:  generic-src src-8.4+    else+      hs-source-dirs:  generic-src src-8.10     default-language:    Haskell2010
+ src-8.10/Language/Haskell/GHC/HappyParser.hs view
@@ -0,0 +1,40 @@+module Language.Haskell.GHC.HappyParser+    ( fullStatement+    , fullImport+    , fullDeclaration+    , fullExpression+    , fullTypeSignature+    , fullModule+    ) where++import Parser+import SrcLoc++-- compiler/hsSyn+import GHC.Hs++-- compiler/utils+import OrdList++-- compiler/parser+import Lexer++import RdrHsSyn (runECP_P)++fullStatement :: P (Maybe (LStmt GhcPs (LHsExpr GhcPs)))+fullStatement = parseStmt++fullImport :: P (LImportDecl GhcPs)+fullImport = parseImport++fullDeclaration :: P (OrdList (LHsDecl GhcPs))+fullDeclaration = fmap unitOL parseDeclaration++fullExpression :: P (LHsExpr GhcPs)+fullExpression = runECP_P =<< parseExpression++fullTypeSignature :: P (Located (OrdList (LHsDecl GhcPs)))+fullTypeSignature = fmap (noLoc . unitOL) parseTypeSignature++fullModule :: P (Located (HsModule GhcPs))+fullModule = parseModule