packages feed

papillon 0.1.0.3 → 0.1.0.4

raw patch · 3 files changed

+25/−22 lines, 3 filesdep ~template-haskelldep ~transformers

Dependency ranges changed: template-haskell, transformers

Files

bin/Class.hs view
@@ -74,16 +74,16 @@ 	varE $ mkName "ParseError"  parseErrorT :: Bool -> DecQ-parseErrorT _ = flip (dataD (cxt []) (mkName "ParseError")-		[PlainTV $ mkName "pos", PlainTV $ mkName "drv"])-	[] $ [	recC (mkName "ParseError") [+parseErrorT _ = dataD (cxt []) (mkName "ParseError")+		[PlainTV $ mkName "pos", PlainTV $ mkName "drv"] Nothing+	[	recC (mkName "ParseError") [ 			varStrictType c strT, 			varStrictType m strT, 			varStrictType com strT, 			varStrictType d drvT, 			varStrictType r lstT, 			varStrictType pos posT ]-	 ]+	 ] (cxt []) 	where 	[c, m, com, r, d, pos] = map mkName [ 		"peCode",@@ -248,7 +248,7 @@ instanceSrcStr _ = 	instanceD (cxt [classP sourceList [varT c]]) (conT source `appT` listC) [ 		tySynInstD tokenN $ tySynEqn [listC] (varT c),-		flip (newtypeInstD (cxt []) posN [listC]) [] $+		flip (newtypeInstD (cxt []) posN [listC] Nothing) (cxt []) $ 			normalC listPosN [strictType notStrict $ 				conT listPosN `appT` varT c], 		valD (varP getTokenN) (normalB $ varE listTokenN) [],@@ -307,12 +307,12 @@ -}  instanceSLC th = instanceD (cxt []) (conT sourceList `appT` conT (charN th)) [-	newtypeInstD (cxt []) listPosN [conT $ charN th] (+	newtypeInstD (cxt []) listPosN [conT $ charN th] Nothing ( 		normalC (mkName "CharPos") [ 			strictType notStrict $ tupleT 2 				`appT` conT (mkName "Int") 				`appT` conT (mkName "Int")]-	 ) [mkName "Show"],+	 ) (cxt [conT $ mkName "Show"]), 	funD listTokenN [ 		clause [infixP (varP c) (consN th) (varP s)] 			(normalB $ conE (justN th) `appE` tupleBody) [],
papillon.cabal view
@@ -2,7 +2,7 @@ cabal-version:	>= 1.8  name:		papillon-version:	0.1.0.3+version:	0.1.0.4 stability:	Experimental author:		Yoshikuni Jujo <PAF01143@nifty.ne.jp> maintainer:	Yoshikuni Jujo <PAF01143@nifty.ne.jp>@@ -39,8 +39,8 @@     Text.Papillon.Papillon,     Text.Papillon.List   build-depends:-    base > 3 && < 5, template-haskell == 2.10.*,-    monads-tf == 0.1.*, transformers == 0.4.*,+    base > 3 && < 5, template-haskell == 2.11.*,+    monads-tf == 0.1.*, transformers == 0.5.*,     bytestring == 0.10.*   ghc-options:		-Wall -fno-warn-tabs @@ -49,6 +49,6 @@   main-is:		papillon.hs   other-modules:	Class   build-depends:-    directory, filepath, base > 3 && < 5, template-haskell == 2.10.*,-    monads-tf == 0.1.*, transformers == 0.4.*, papillon+    directory, filepath, base > 3 && < 5, template-haskell == 2.11.*,+    monads-tf == 0.1.*, transformers == 0.5.*, papillon   ghc-options:		-Wall -fno-warn-tabs
src/Text/Papillon/Core.hs view
@@ -92,19 +92,22 @@ 		pt = SigD (mkPrName prefix "parse") $ 			src `arrT` ConT (mkPrUName prefix "Derivs") 	p <- funD (mkPrName prefix "parse") [mkParseBody th (isJust monad) prefix parsed]-	return [d, pt, p]+	d' <- d+	return [d', pt, p] -derivs :: Bool -> Type -> Type -> String -> Peg -> Dec-derivs th monad src prefix pg = DataD [] (mkPrUName prefix "Derivs") [] [-	RecC (mkPrUName prefix "Derivs") $ map derivs1 pg ++ [-		(mkPrName prefix dvCharsN, NotStrict, resultT tkn),-		(dvPosN prefix, NotStrict, resultT $ ConT (mkName "Pos") `AppT` src)-	 ]] []+derivs :: Bool -> Type -> Type -> String -> Peg -> DecQ+derivs th monad src prefix pg = do+	ns <- notStrict+	return $ DataD [] (mkPrUName prefix "Derivs") [] Nothing [+		RecC (mkPrUName prefix "Derivs") $ map (derivs1 ns) pg ++ [+			(mkPrName prefix dvCharsN, ns, resultT tkn),+			(dvPosN prefix, ns, resultT $ ConT (mkName "Pos") `AppT` src)+		]] [] 	where 	tkn = ConT (mkName "Token") `AppT` src-	derivs1 (name, Just t, _) = (mkPrName prefix name, NotStrict, resultT t)-	derivs1 (name, Nothing, _) =-		(mkPrName prefix name, NotStrict, resultT $ TupleT 0)+	derivs1 ns (name, Just t, _) = (mkPrName prefix name, ns, resultT t)+	derivs1 ns (name, Nothing, _) =+		(mkPrName prefix name, ns, resultT $ TupleT 0) 	resultT typ = ConT (errorTTN th) 		`AppT` (ConT (mkName "ParseError") 			`AppT` (ConT (mkName "Pos") `AppT` src)