fay 0.23.1.12 → 0.23.1.13
raw patch · 44 files changed
+90/−74 lines, 44 filesdep −groomdep ~basedep ~haskell-src-exts
Dependencies removed: groom
Dependency ranges changed: base, haskell-src-exts
Files
- CHANGELOG.md +4/−0
- fay.cabal +9/−10
- src/Fay.hs +2/−2
- src/Fay/Compiler.hs +1/−1
- src/Fay/Compiler/Decl.hs +1/−1
- src/Fay/Compiler/Desugar.hs +1/−1
- src/Fay/Compiler/Desugar/Name.hs +1/−1
- src/Fay/Compiler/Exp.hs +1/−1
- src/Fay/Compiler/FFI.hs +13/−10
- src/Fay/Compiler/GADT.hs +1/−1
- src/Fay/Compiler/Import.hs +1/−1
- src/Fay/Compiler/InitialPass.hs +1/−1
- src/Fay/Compiler/Misc.hs +1/−1
- src/Fay/Compiler/Optimizer.hs +1/−1
- src/Fay/Compiler/Parse.hs +1/−1
- src/Fay/Compiler/Pattern.hs +1/−1
- src/Fay/Compiler/PrimOp.hs +1/−1
- src/Fay/Compiler/Print.hs +1/−1
- src/Fay/Compiler/QName.hs +1/−1
- src/Fay/Config.hs +1/−1
- src/Fay/Exts.hs +1/−1
- src/Fay/Exts/NoAnnotation.hs +1/−1
- src/Fay/Exts/Scoped.hs +1/−1
- src/Fay/Types/CompileError.hs +1/−1
- src/Fay/Types/Js.hs +1/−1
- src/Fay/Types/ModulePath.hs +1/−1
- src/Fay/Types/Printer.hs +1/−1
- src/haskell-names/Language/Haskell/Names/Annotated.hs +1/−1
- src/haskell-names/Language/Haskell/Names/Exports.hs +12/−6
- src/haskell-names/Language/Haskell/Names/GetBound.hs +1/−1
- src/haskell-names/Language/Haskell/Names/GlobalSymbolTable.hs +1/−1
- src/haskell-names/Language/Haskell/Names/Imports.hs +1/−1
- src/haskell-names/Language/Haskell/Names/LocalSymbolTable.hs +1/−1
- src/haskell-names/Language/Haskell/Names/ModuleSymbols.hs +4/−3
- src/haskell-names/Language/Haskell/Names/Open/Base.hs +2/−2
- src/haskell-names/Language/Haskell/Names/Open/Derived.hs +4/−1
- src/haskell-names/Language/Haskell/Names/Open/Instances.hs +1/−1
- src/haskell-names/Language/Haskell/Names/RecordWildcards.hs +1/−1
- src/haskell-names/Language/Haskell/Names/Recursive.hs +1/−1
- src/haskell-names/Language/Haskell/Names/ScopeUtils.hs +1/−1
- src/haskell-names/Language/Haskell/Names/SyntaxUtils.hs +1/−1
- src/haskell-names/Language/Haskell/Names/Types.hs +1/−1
- src/tests/Test/Compile.hs +1/−1
- src/tests/Test/Desugar.hs +5/−5
CHANGELOG.md view
@@ -2,6 +2,10 @@ See full history at: <https://github.com/faylang/fay/commits> +#### 0.23.1.13++* Add support for haskell-src-exts 1.18.1.+ #### 0.23.1.12 * Fix compilation on GHC < 7.8.
fay.cabal view
@@ -1,5 +1,5 @@ name: fay-version: 0.23.1.12+version: 0.23.1.13 synopsis: A compiler for Fay, a Haskell subset that compiles to JavaScript. description: Fay is a proper subset of Haskell which is type-checked with GHC, and compiled to JavaScript. It is lazy, pure, has a Fay monad,@@ -135,30 +135,30 @@ Paths_fay build-depends:- base >= 4.5 && < 4.9+ base >= 4.5 && < 4.10 , base-compat >= 0.8 && < 0.10- , aeson > 0.6 && < 0.11+ , aeson > 0.6 && < 1.1 , bytestring >= 0.9 && < 0.11 , containers >= 0.4 && < 0.6- , data-default >= 0.2 && < 0.6+ , data-default >= 0.2 && < 0.8 , data-lens-light == 0.1.* , directory >= 1.1 && < 1.3 , filepath >= 1.3 && < 1.5 , ghc-paths == 0.1.*- , haskell-src-exts == 1.17.*+ , haskell-src-exts >= 1.18.1 && < 1.19 , language-ecmascript >= 0.15 && < 0.18 , mtl >= 2.1 && < 2.3 , mtl-compat >= 0.1 && < 0.3- , process >= 1.1 && < 1.3+ , process >= 1.1 && < 1.5 , safe >= 0.2 && < 0.4 , sourcemap == 0.1.* , split >= 0.1 && < 0.3 , spoon >= 0.1 && < 0.4 , syb >= 0.3 && < 0.7 , text >= 0.11 && < 1.3- , time >= 1.4 && < 1.6- , transformers >= 0.3 && < 0.4 || > 0.4.1 && < 0.5- , transformers-compat >= 0.3 && < 0.5+ , time >= 1.4 && < 1.7+ , transformers >= 0.3 && < 0.4 || > 0.4.1 && < 0.7+ , transformers-compat >= 0.3 && < 0.6 , traverse-with-class >= 0.1 && < 0.3 , type-eq >= 0.1 && < 0.6 , uniplate >= 1.6.11 && < 1.7@@ -200,7 +200,6 @@ , directory , fay , filepath- , groom == 0.1.* , haskell-src-exts , random >= 1.0 && < 1.2 , tasty >= 0.9 && < 0.12
src/Fay.hs view
@@ -36,8 +36,8 @@ import Data.Aeson (encode) import qualified Data.ByteString.Lazy as L-import Language.Haskell.Exts.Annotated (prettyPrint)-import Language.Haskell.Exts.Annotated.Syntax+import Language.Haskell.Exts (prettyPrint)+import Language.Haskell.Exts.Syntax import Language.Haskell.Exts.SrcLoc import Paths_fay import SourceMap (generate)
src/Fay/Compiler.hs view
@@ -46,7 +46,7 @@ import Control.Monad.RWS (gets, modify) import qualified Data.Set as S-import Language.Haskell.Exts.Annotated hiding (name)+import Language.Haskell.Exts hiding (name) import Language.Haskell.Names (annotateModule) --------------------------------------------------------------------------------
src/Fay/Compiler/Decl.hs view
@@ -23,7 +23,7 @@ import Control.Monad.Except (throwError) import Control.Monad.RWS (gets, modify)-import Language.Haskell.Exts.Annotated hiding (binds, loc, name)+import Language.Haskell.Exts hiding (binds, loc, name) -- | Compile Haskell declaration. compileDecls :: Bool -> [S.Decl] -> Compile [JsStmt]
src/Fay/Compiler/Desugar.hs view
@@ -21,7 +21,7 @@ import Control.Monad.Except (throwError) import Control.Monad.Reader (asks) import qualified Data.Generics.Uniplate.Data as U-import Language.Haskell.Exts.Annotated hiding (binds, loc, name)+import Language.Haskell.Exts hiding (binds, loc, name) -- | Top level, desugar a whole module possibly returning errors desugar :: (Data l, Typeable l) => l -> Module l -> IO (Either CompileError (Module l))
src/Fay/Compiler/Desugar/Name.hs view
@@ -9,7 +9,7 @@ import Fay.Compiler.Desugar.Types import Control.Monad.Reader (asks, local)-import Language.Haskell.Exts.Annotated (Name (..))+import Language.Haskell.Exts (Name (..)) -- | Generate a temporary, SCOPED name for testing conditions and -- such. We don't have name tracking yet, so instead we use this.
src/Fay/Compiler/Exp.hs view
@@ -30,7 +30,7 @@ import Control.Monad.Except (throwError) import Control.Monad.RWS (asks, gets) import qualified Data.Char as Char-import Language.Haskell.Exts.Annotated hiding (alt, binds, name, op)+import Language.Haskell.Exts hiding (alt, binds, name, op) import Language.Haskell.Names (NameInfo (RecExpWildcard), Scoped (Scoped)) -- | Compile Haskell expression.
src/Fay/Compiler/FFI.hs view
@@ -18,20 +18,20 @@ import Fay.Compiler.Prelude import Fay.Compiler.Misc-import Fay.Compiler.Print (printJSString)+import Fay.Compiler.Print (printJSString) import Fay.Compiler.QName-import Fay.Exts.NoAnnotation (unAnn)-import qualified Fay.Exts.NoAnnotation as N-import qualified Fay.Exts.Scoped as S+import Fay.Exts.NoAnnotation (unAnn)+import qualified Fay.Exts.NoAnnotation as N+import qualified Fay.Exts.Scoped as S import Fay.Types -import Control.Monad.Except (throwError)-import Control.Monad.Writer (tell)+import Control.Monad.Except (throwError)+import Control.Monad.Writer (tell) import Data.Generics.Schemes-import Language.ECMAScript3.Parser as JS+import Language.ECMAScript3.Parser as JS import Language.ECMAScript3.Syntax-import Language.Haskell.Exts.Annotated (SrcSpanInfo, prettyPrint)-import Language.Haskell.Exts.Annotated.Syntax+import Language.Haskell.Exts (SrcSpanInfo, prettyPrint)+import Language.Haskell.Exts.Syntax -- | Compile an FFI expression (also used when compiling top level definitions). compileFFIExp :: SrcSpanInfo -> Maybe (Name a) -> String -> S.Type -> Compile JsExp@@ -56,7 +56,10 @@ TyParArray _ t -> TyParArray () <$> rmNewtys t TyEquals _ t1 t2 -> TyEquals () <$> rmNewtys t1 <*> rmNewtys t2 TySplice {} -> return $ unAnn typ- TyBang _ bt t -> TyBang () (unAnn bt) <$> rmNewtys t+ TyBang _ bt unp t -> TyBang () (unAnn bt) (unAnn unp) <$> rmNewtys t+ TyWildCard _ _ -> error "TyWildCard not supported"+ TyQuasiQuote _ _ _ -> error "TyQuasiQuote not supported"+ compileFFI' :: N.Type -> Compile JsExp compileFFI' sig = do let name = fromMaybe "<exp>" nameopt
src/Fay/Compiler/GADT.hs view
@@ -4,7 +4,7 @@ (convertGADT ) where -import Language.Haskell.Exts.Annotated hiding (name)+import Language.Haskell.Exts hiding (name) -- | Convert a GADT to a normal data type. convertGADT :: GadtDecl a -> QualConDecl a
src/Fay/Compiler/Import.hs view
@@ -22,7 +22,7 @@ import Control.Monad.Except (throwError) import Control.Monad.RWS (ask, get, gets, lift, listen, modify)-import Language.Haskell.Exts.Annotated hiding (name, var)+import Language.Haskell.Exts hiding (name, var) import System.Directory import System.FilePath
src/Fay/Compiler/InitialPass.hs view
@@ -22,7 +22,7 @@ import Control.Monad.Except (throwError) import Control.Monad.RWS (modify) import qualified Data.Map as M-import Language.Haskell.Exts.Annotated hiding (name, var)+import Language.Haskell.Exts hiding (name, var) import qualified Language.Haskell.Names as HN (getInterfaces) -- | Preprocess and collect all information needed during code generation.
src/Fay/Compiler/Misc.hs view
@@ -23,7 +23,7 @@ import Control.Monad.Except (runExceptT, throwError) import Control.Monad.RWS (asks, gets, modify, runRWST) import Data.Version (parseVersion)-import Language.Haskell.Exts.Annotated hiding (name)+import Language.Haskell.Exts hiding (name) import Language.Haskell.Names (GName (GName), NameInfo (GlobalValue, LocalValue, ScopeError), OrigName, Scoped (Scoped), origGName, origName) import System.IO
src/Fay/Compiler/Optimizer.hs view
@@ -16,7 +16,7 @@ import Control.Monad.State (State, modify, runState) import Control.Monad.Writer (runWriter, tell) import qualified Fay.Exts.NoAnnotation as N-import Language.Haskell.Exts.Annotated hiding (app, name, op)+import Language.Haskell.Exts hiding (app, name, op) -- | The arity of a function. Arity here is defined to be the number -- of arguments that can be directly uncurried from a curried lambda
src/Fay/Compiler/Parse.hs view
@@ -3,7 +3,7 @@ , defaultExtensions ) where -import Language.Haskell.Exts.Annotated hiding (name)+import Language.Haskell.Exts hiding (name) -- | Parse some Fay code. parseFay :: Parseable ast => FilePath -> String -> ParseResult ast
src/Fay/Compiler/Pattern.hs view
@@ -17,7 +17,7 @@ import Control.Monad.Except (throwError) import Control.Monad.Reader (ask)-import Language.Haskell.Exts.Annotated hiding (name)+import Language.Haskell.Exts hiding (name) import Language.Haskell.Names (NameInfo (RecPatWildcard), Scoped (Scoped)) -- | Compile the given pattern against the given expression.
src/Fay/Compiler/PrimOp.hs view
@@ -29,7 +29,7 @@ import Data.Map (Map) import qualified Data.Map as M-import Language.Haskell.Exts.Annotated hiding (binds, name)+import Language.Haskell.Exts hiding (binds, name) -- | Make an identifier from the built-in HJ module. fayBuiltin :: a -> String -> QName a
src/Fay/Compiler/Print.hs view
@@ -15,7 +15,7 @@ import Data.Aeson.Encode import qualified Data.ByteString.Lazy.UTF8 as UTF8-import Language.Haskell.Exts.Annotated hiding (alt, name, op, sym)+import Language.Haskell.Exts hiding (alt, name, op, sym) -------------------------------------------------------------------------------- -- Printing
src/Fay/Compiler/QName.hs view
@@ -2,7 +2,7 @@ module Fay.Compiler.QName where -import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts -- | Extract the module name from a qualified name. qModName :: QName a -> Maybe (ModuleName a)
src/Fay/Config.hs view
@@ -45,7 +45,7 @@ import Data.Default import Data.Maybe ()-import Language.Haskell.Exts.Annotated (ModuleName (..))+import Language.Haskell.Exts (ModuleName (..)) import System.Environment -- | Configuration of the compiler.
src/Fay/Exts.hs view
@@ -1,6 +1,6 @@ module Fay.Exts where -import qualified Language.Haskell.Exts.Annotated as A+import qualified Language.Haskell.Exts as A type X = A.SrcSpanInfo
src/Fay/Exts/NoAnnotation.hs view
@@ -6,7 +6,7 @@ import Data.List.Split (splitOn) import Data.String-import qualified Language.Haskell.Exts.Annotated as A+import qualified Language.Haskell.Exts as A type Alt = A.Alt () type BangType = A.BangType ()
src/Fay/Exts/Scoped.hs view
@@ -2,7 +2,7 @@ import qualified Fay.Exts as F -import qualified Language.Haskell.Exts.Annotated as A+import qualified Language.Haskell.Exts as A import qualified Language.Haskell.Names as HN (Scoped (Scoped), NameInfo (None))
src/Fay/Types/CompileError.hs view
@@ -4,7 +4,7 @@ import qualified Fay.Exts.NoAnnotation as N import qualified Fay.Exts.Scoped as S -import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts -- | Error type. data CompileError
src/Fay/Types/Js.hs view
@@ -11,7 +11,7 @@ import Fay.Types.ModulePath import Data.String-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts -- | Statement type. data JsStmt
src/Fay/Types/ModulePath.hs view
@@ -10,7 +10,7 @@ import Data.List import Data.List.Split-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts -- | The name of a module split into a list for code generation. newtype ModulePath = ModulePath { unModulePath :: [String] }
src/Fay/Types/Printer.hs view
@@ -19,7 +19,7 @@ import Control.Monad.RWS import Data.List (elemIndex) import Data.String-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts import SourceMap.Types -- | Global options of the printer
src/haskell-names/Language/Haskell/Names/Annotated.hs view
@@ -27,7 +27,7 @@ import Data.Lens.Light import Data.Proxy-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts import Type.Eq annotate
src/haskell-names/Language/Haskell/Names/Exports.hs view
@@ -19,7 +19,7 @@ import Control.Monad.Writer (WriterT (WriterT), runWriterT) import qualified Data.Map as Map import qualified Data.Set as Set-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts processExports :: (MonadModule m, ModuleInfo m ~ Symbols, Data l, Eq l)@@ -70,8 +70,7 @@ (EAbs (Scoped (Export s) l) (noScope ns) (Scoped (GlobalType i) <$> qn), s) Global.Special {} -> error "Global.Special in export list?"- EAbs _ NoNamespace{} _ -> error "resolveExportSpec: 'type' namespace is not supported yet" -- FIXME- EThingAll l qn -> return $+ EThingWith l (EWildcard wcl wcn) qn [] -> return $ case Global.lookupType qn tbl of Global.Error err -> (scopeError err exp, mempty)@@ -84,11 +83,15 @@ , n' == st_origName i ] s = mkTy i <> subs in- ( EThingAll (Scoped (Export s) l) (Scoped (GlobalType i) <$> qn)+ ( EThingWith (Scoped (Export s) l)+ (EWildcard (Scoped (Export s) wcl) wcn)+ (Scoped (GlobalType i) <$> qn)+ [] , s ) Global.Special {} -> error "Global.Special in export list?"- EThingWith l qn cns -> return $+ EThingWith l (EWildcard _ _) _cns -> error "Name resolution: CNames are not supported in wildcard exports"+ EThingWith l (NoWildcard wcl) qn cns -> return $ case Global.lookupType qn tbl of Global.Error err -> (scopeError err exp, mempty)@@ -102,7 +105,10 @@ cns s = mkTy i <> subs in- ( EThingWith (Scoped (Export s) l) (Scoped (GlobalType i) <$> qn) cns'+ ( EThingWith (Scoped (Export s) l)+ (NoWildcard (Scoped (Export s) wcl))+ (Scoped (GlobalType i) <$> qn)+ cns' , s ) Global.Special {} -> error "Global.Special in export list?"
src/haskell-names/Language/Haskell/Names/GetBound.hs view
@@ -15,7 +15,7 @@ import Language.Haskell.Names.SyntaxUtils import Data.Generics.Uniplate.Data-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts -- | Get bound value identifiers.
src/haskell-names/Language/Haskell/Names/GlobalSymbolTable.hs view
@@ -20,7 +20,7 @@ import Data.Lens.Light import qualified Data.Map as Map import qualified Data.Set as Set-import Language.Haskell.Exts.Annotated as HSE+import Language.Haskell.Exts as HSE -- | Global symbol table — contains global names data Table =
src/haskell-names/Language/Haskell/Names/Imports.hs view
@@ -18,7 +18,7 @@ import Data.Lens.Light import qualified Data.Map as Map import qualified Data.Set as Set-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts instance ModName (ModuleName l) where modToString (ModuleName _ s) = s
src/haskell-names/Language/Haskell/Names/LocalSymbolTable.hs view
@@ -13,7 +13,7 @@ import Language.Haskell.Names.Types import qualified Data.Map as Map-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts -- | Local symbol table — contains locally bound names newtype Table = Table (Map.Map NameS SrcLoc)
src/haskell-names/Language/Haskell/Names/ModuleSymbols.hs view
@@ -7,7 +7,7 @@ ) where -import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts import Language.Haskell.Names.GetBound import qualified Language.Haskell.Names.GlobalSymbolTable as Global import Language.Haskell.Names.ScopeUtils@@ -74,7 +74,7 @@ let tn = hname dh in [ Right (SymType { st_origName = tn, st_fixity = Nothing })] - TypeFamDecl _ dh _ ->+ TypeFamDecl _loc dh _mrs _mk -> let tn = hname dh in [ Right (SymTypeFam { st_origName = tn, st_fixity = Nothing })] @@ -121,7 +121,7 @@ cdecls = fromMaybe [] mds in Right (SymClass { st_origName = cq, st_fixity = Nothing }) :- [ Right (SymTypeFam { st_origName = hname dh, st_fixity = Nothing }) | ClsTyFam _ dh _ <- cdecls ] +++ [ Right (SymTypeFam { st_origName = hname dh, st_fixity = Nothing }) | ClsTyFam _ dh _ _ <- cdecls ] ++ [ Right (SymDataFam { st_origName = hname dh, st_fixity = Nothing }) | ClsDataFam _ _ dh _ <- cdecls ] ++ [ Left (SymMethod { sv_origName = qname mn, sv_fixity = Nothing, sv_className = cq }) | mn <- ms ] @@ -139,6 +139,7 @@ where ModuleName _ smdl = mdl qname = GName smdl . nameToString+ hname :: DeclHead l -> GName hname = qname . getDeclHeadName dataOrNewCon dataOrNew = case dataOrNew of DataType {} -> SymData; NewType {} -> SymNewType
src/haskell-names/Language/Haskell/Names/Open/Base.hs view
@@ -1,7 +1,7 @@ -- | This module provides a more flexible way to process Haskell code — -- using an open-recursive traversal. ----- You can look at "Language.Haskell.Exts.Annotated" source as an example+-- You can look at "Language.Haskell.Exts" source as an example -- of how to use this module. {-# OPTIONS -fno-warn-name-shadowing #-} {-# LANGUAGE DataKinds #-}@@ -49,7 +49,7 @@ import Data.Generics.Traversable import Data.Lens.Light import GHC.Exts (Constraint)-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts -- | Describes how we should treat names in the current context data NameContext
src/haskell-names/Language/Haskell/Names/Open/Derived.hs view
@@ -7,7 +7,7 @@ module Language.Haskell.Names.Open.Derived where import Data.Generics.Traversable.TH-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts deriveGTraversable ''ModuleName deriveGTraversable ''SpecialCon@@ -82,3 +82,6 @@ deriveGTraversable ''Namespace deriveGTraversable ''Role deriveGTraversable ''PatternSynDirection+deriveGTraversable ''Unpackedness+deriveGTraversable ''ResultSig+deriveGTraversable ''InjectivityInfo
src/haskell-names/Language/Haskell/Names/Open/Instances.hs view
@@ -22,7 +22,7 @@ import Data.Lens.Light import qualified Data.Traversable as T-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts c :: Applicative w => c -> w c c = pure
src/haskell-names/Language/Haskell/Names/RecordWildcards.hs view
@@ -20,7 +20,7 @@ import qualified Data.Map as Map import Data.Maybe import qualified Data.Set as Set-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts -- | Information about the names being introduced by a record wildcard --
src/haskell-names/Language/Haskell/Names/Recursive.hs view
@@ -24,7 +24,7 @@ import Data.Maybe import Data.Monoid import qualified Data.Set as Set-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts -- | Take a set of modules and return a list of sets, where each sets for
src/haskell-names/Language/Haskell/Names/ScopeUtils.hs view
@@ -15,7 +15,7 @@ import Data.Lens.Light import qualified Data.Set as Set-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts scopeError :: Functor f => Error l -> f l -> f (Scoped l) scopeError e f = Scoped (ScopeError e) <$> f
src/haskell-names/Language/Haskell/Names/SyntaxUtils.hs view
@@ -21,7 +21,7 @@ import Data.Foldable import Data.Maybe import qualified Data.Set as Set-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts dropAnn :: (Functor a) => a l -> a () dropAnn = fmap (const ())
src/haskell-names/Language/Haskell/Names/Types.hs view
@@ -34,7 +34,7 @@ import Data.Foldable as F import Data.Lens.Light import qualified Data.Set as Set-import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts import Text.Printf type ExtensionSet = Set.Set KnownExtension
src/tests/Test/Compile.hs view
@@ -11,7 +11,7 @@ import Test.Util (isRight) #endif -import Language.Haskell.Exts.Annotated+import Language.Haskell.Exts import Test.Tasty import Test.Tasty.HUnit import Test.Tasty.TH
src/tests/Test/Desugar.hs view
@@ -10,13 +10,13 @@ import Fay.Compiler.Prelude import Fay.Compiler.Desugar-import Fay.Compiler.Parse (parseFay)-import Fay.Types.CompileError (CompileError (..))+import Fay.Compiler.Parse (parseFay)+import Fay.Types.CompileError (CompileError (..)) -import Language.Haskell.Exts.Annotated hiding (alt, binds, loc, name)+import Language.Haskell.Exts hiding (alt, binds, loc, name) import Test.Tasty import Test.Tasty.HUnit-import Text.Groom+-- import Text.Groom tests :: TestTree tests = testGroup "desugar" $ map (\(T k a b) -> testCase k $ doDesugar k a b) testDeclarations@@ -147,7 +147,7 @@ when (unAnn desugaredExpected /= unAnn originalExpected ) $ putStrLn "desugaredExpected /= undesugared" g :: Show a => a -> IO ()-g = putStrLn . groom+g = putStrLn . show -- groom unAnn :: Functor f => f a -> f () unAnn = void