xcb-types 0.9.0 → 0.10.0
raw patch · 3 files changed
+8/−5 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- Data.XCB.Pretty: instance Data.XCB.Pretty.Pretty a => Data.XCB.Pretty.Pretty (GHC.Base.Maybe a)
+ Data.XCB.Pretty: instance Data.XCB.Pretty.Pretty a => Data.XCB.Pretty.Pretty (GHC.Maybe.Maybe a)
- Data.XCB.Types: BitCase :: (Maybe Name) -> (Expression typ) -> (Maybe Alignment) -> [GenStructElem typ] -> GenBitCase typ
+ Data.XCB.Types: BitCase :: Maybe Name -> Expression typ -> Maybe Alignment -> [GenStructElem typ] -> GenBitCase typ
- Data.XCB.Types: Doc :: (Maybe String) -> (Map Name String) -> [(String, String)] -> GenStructElem typ
+ Data.XCB.Types: Doc :: Maybe String -> Map Name String -> [(String, String)] -> GenStructElem typ
- Data.XCB.Types: EnumElem :: Name -> (Maybe (Expression typ)) -> EnumElem typ
+ Data.XCB.Types: EnumElem :: Name -> Maybe (Expression typ) -> EnumElem typ
- Data.XCB.Types: ExprField :: Name -> typ -> (Expression typ) -> GenStructElem typ
+ Data.XCB.Types: ExprField :: Name -> typ -> Expression typ -> GenStructElem typ
- Data.XCB.Types: GenXReply :: (Maybe Alignment) -> [GenStructElem typ] -> GenXReply typ
+ Data.XCB.Types: GenXReply :: Maybe Alignment -> [GenStructElem typ] -> GenXReply typ
- Data.XCB.Types: List :: Name -> typ -> (Maybe (Expression typ)) -> (Maybe (EnumVals typ)) -> GenStructElem typ
+ Data.XCB.Types: List :: Name -> typ -> Maybe (Expression typ) -> Maybe (EnumVals typ) -> GenStructElem typ
- Data.XCB.Types: Op :: Binop -> (Expression typ) -> (Expression typ) -> Expression typ
+ Data.XCB.Types: Op :: Binop -> Expression typ -> Expression typ -> Expression typ
- Data.XCB.Types: PopCount :: (Expression typ) -> Expression typ
+ Data.XCB.Types: PopCount :: Expression typ -> Expression typ
- Data.XCB.Types: SField :: Name -> typ -> (Maybe (EnumVals typ)) -> (Maybe (MaskVals typ)) -> GenStructElem typ
+ Data.XCB.Types: SField :: Name -> typ -> Maybe (EnumVals typ) -> Maybe (MaskVals typ) -> GenStructElem typ
- Data.XCB.Types: Switch :: Name -> (Expression typ) -> (Maybe Alignment) -> [GenBitCase typ] -> GenStructElem typ
+ Data.XCB.Types: Switch :: Name -> Expression typ -> Maybe Alignment -> [GenBitCase typ] -> GenStructElem typ
- Data.XCB.Types: Unop :: Unop -> (Expression typ) -> Expression typ
+ Data.XCB.Types: Unop :: Unop -> Expression typ -> Expression typ
- Data.XCB.Types: ValueParam :: typ -> Name -> (Maybe MaskPadding) -> ListName -> GenStructElem typ
+ Data.XCB.Types: ValueParam :: typ -> Name -> Maybe MaskPadding -> ListName -> GenStructElem typ
- Data.XCB.Types: XError :: Name -> Int -> (Maybe Alignment) -> [GenStructElem typ] -> GenXDecl typ
+ Data.XCB.Types: XError :: Name -> Int -> Maybe Alignment -> [GenStructElem typ] -> GenXDecl typ
- Data.XCB.Types: XEvent :: Name -> Int -> (Maybe Alignment) -> [GenStructElem typ] -> (Maybe Bool) -> GenXDecl typ
+ Data.XCB.Types: XEvent :: Name -> Int -> Maybe Alignment -> [GenStructElem typ] -> Maybe Bool -> GenXDecl typ
- Data.XCB.Types: XRequest :: Name -> Int -> (Maybe Alignment) -> [GenStructElem typ] -> (Maybe (GenXReply typ)) -> GenXDecl typ
+ Data.XCB.Types: XRequest :: Name -> Int -> Maybe Alignment -> [GenStructElem typ] -> Maybe (GenXReply typ) -> GenXDecl typ
- Data.XCB.Types: XStruct :: Name -> (Maybe Alignment) -> [GenStructElem typ] -> GenXDecl typ
+ Data.XCB.Types: XStruct :: Name -> Maybe Alignment -> [GenStructElem typ] -> GenXDecl typ
- Data.XCB.Types: XUnion :: Name -> (Maybe Alignment) -> [GenStructElem typ] -> GenXDecl typ
+ Data.XCB.Types: XUnion :: Name -> Maybe Alignment -> [GenStructElem typ] -> GenXDecl typ
Files
- Data/XCB/FromXML.hs +4/−3
- Data/XCB/Pretty.hs +2/−0
- xcb-types.cabal +2/−2
Data/XCB/FromXML.hs view
@@ -30,6 +30,7 @@ import Control.Applicative ((<$>)) import Control.Monad+import Control.Monad.Fail (MonadFail) import Control.Monad.Reader import System.IO (openFile, IOMode (ReadMode), hSetEncoding, utf8, hGetContents)@@ -339,7 +340,7 @@ opMax <- el `attr` "opcode-max" >>= readM return $ AllowedEvent extension xge opMin opMax -structField :: (MonadPlus m, Functor m) => Element -> m StructElem+structField :: (MonadFail m, MonadPlus m, Functor m) => Element -> m StructElem structField el | el `named` "field" = do typ <- liftM mkType $ el `attr` "type"@@ -401,7 +402,7 @@ in error $ "I don't know what to do with structelem " ++ show name -bitCase :: (MonadPlus m, Functor m) => Element -> m BitCase+bitCase :: (MonadFail m, MonadPlus m, Functor m) => Element -> m BitCase bitCase el | el `named` "bitcase" || el `named` "case" = do let mName = el `attr` "name" (exprEl, fieldEls) <- unconsChildren el@@ -413,7 +414,7 @@ let name = elName el in error $ "Invalid bitCase: " ++ show name -expression :: (MonadPlus m, Functor m) => Element -> m XExpression+expression :: (MonadFail m, MonadPlus m, Functor m) => Element -> m XExpression expression el | el `named` "fieldref" = return $ FieldRef $ strContent el | el `named` "enumref" = do
Data/XCB/Pretty.hs view
@@ -14,6 +14,8 @@ -- intended to aid in debugging. module Data.XCB.Pretty where +import Prelude hiding ((<>))+ import Data.XCB.Types import Text.PrettyPrint.HughesPJ
xcb-types.cabal view
@@ -1,5 +1,5 @@ Name: xcb-types-Version: 0.9.0+Version: 0.10.0 Cabal-Version: >= 1.6 Synopsis: Parses XML files used by the XCB project Description: This package provides types which mirror the structures@@ -17,7 +17,7 @@ to learn XSLT, this package should help. . This version of xcb-types is intended to fully parse the X Protocol- description version 1.4.+ description version 1.13. License: BSD3 License-file: LICENSE