xcb-types-0.14.0: Parses XML files used by the XCB project
Copyright(c) Antoine Latter 2008
LicenseBSD3
MaintainerAntoine Latter <aslatter@gmail.com>
Stabilityprovisional
Portabilityportable
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.XCB.Types

Description

Defines types inteneded to be equivalent to the schema used by the XCB project in their XML protocol description.

Synopsis

Documentation

data GenXHeader typ Source #

This is what a single XML file maps to. It contains some meta-data then declarations.

Constructors

XHeader 

Fields

Instances

Instances details
Functor GenXHeader Source # 
Instance details

Defined in Data.XCB.Types

Methods

fmap :: (a -> b) -> GenXHeader a -> GenXHeader b Source #

(<$) :: a -> GenXHeader b -> GenXHeader a Source #

Show typ => Show (GenXHeader typ) Source # 
Instance details

Defined in Data.XCB.Types

Pretty a => Pretty (GenXHeader a) Source # 
Instance details

Defined in Data.XCB.Pretty

data GenXDecl typ Source #

The different types of declarations which can be made in one of the XML files.

Instances

Instances details
Functor GenXDecl Source # 
Instance details

Defined in Data.XCB.Types

Methods

fmap :: (a -> b) -> GenXDecl a -> GenXDecl b Source #

(<$) :: a -> GenXDecl b -> GenXDecl a Source #

Show typ => Show (GenXDecl typ) Source # 
Instance details

Defined in Data.XCB.Types

Pretty a => Pretty (GenXDecl a) Source # 
Instance details

Defined in Data.XCB.Pretty

data GenStructElem typ Source #

Instances

Instances details
Functor GenStructElem Source # 
Instance details

Defined in Data.XCB.Types

Methods

fmap :: (a -> b) -> GenStructElem a -> GenStructElem b Source #

(<$) :: a -> GenStructElem b -> GenStructElem a Source #

Show typ => Show (GenStructElem typ) Source # 
Instance details

Defined in Data.XCB.Types

Pretty a => Pretty (GenStructElem a) Source # 
Instance details

Defined in Data.XCB.Pretty

data GenBitCase typ Source #

Constructors

BitCase (Maybe Name) (Expression typ) (Maybe Alignment) [GenStructElem typ] 

Instances

Instances details
Functor GenBitCase Source # 
Instance details

Defined in Data.XCB.Types

Methods

fmap :: (a -> b) -> GenBitCase a -> GenBitCase b Source #

(<$) :: a -> GenBitCase b -> GenBitCase a Source #

Show typ => Show (GenBitCase typ) Source # 
Instance details

Defined in Data.XCB.Types

Pretty a => Pretty (GenBitCase a) Source # 
Instance details

Defined in Data.XCB.Pretty

data GenXReply typ Source #

Constructors

GenXReply (Maybe Alignment) [GenStructElem typ] 

Instances

Instances details
Functor GenXReply Source # 
Instance details

Defined in Data.XCB.Types

Methods

fmap :: (a -> b) -> GenXReply a -> GenXReply b Source #

(<$) :: a -> GenXReply b -> GenXReply a Source #

Show typ => Show (GenXReply typ) Source # 
Instance details

Defined in Data.XCB.Types

data GenXidUnionElem typ Source #

Constructors

XidUnionElem typ 

Instances

Instances details
Functor GenXidUnionElem Source # 
Instance details

Defined in Data.XCB.Types

Show typ => Show (GenXidUnionElem typ) Source # 
Instance details

Defined in Data.XCB.Types

Pretty a => Pretty (GenXidUnionElem a) Source # 
Instance details

Defined in Data.XCB.Pretty

data EnumElem typ Source #

Constructors

EnumElem Name (Maybe (Expression typ)) 

Instances

Instances details
Functor EnumElem Source # 
Instance details

Defined in Data.XCB.Types

Methods

fmap :: (a -> b) -> EnumElem a -> EnumElem b Source #

(<$) :: a -> EnumElem b -> EnumElem a Source #

Show typ => Show (EnumElem typ) Source # 
Instance details

Defined in Data.XCB.Types

Pretty a => Pretty (EnumElem a) Source # 
Instance details

Defined in Data.XCB.Pretty

data Expression typ Source #

Declarations may contain expressions from this small language

Constructors

Value Int

A literal value

Bit Int

A log-base-2 literal value

FieldRef Name

A reference to a field in the same declaration

EnumRef typ Name

A reference to a member of an enum.

PopCount (Expression typ)

Calculate the number of set bits in the argument

SumOf Name

Note sure. The argument should be a reference to a list

Op Binop (Expression typ) (Expression typ)

A binary opeation

Unop Unop (Expression typ)

A unary operation

ParamRef Name

I think this is the name of an argument passed to the request. See fffbd04d63 in xcb-proto.

Instances

Instances details
Functor Expression Source # 
Instance details

Defined in Data.XCB.Types

Methods

fmap :: (a -> b) -> Expression a -> Expression b Source #

(<$) :: a -> Expression b -> Expression a Source #

Show typ => Show (Expression typ) Source # 
Instance details

Defined in Data.XCB.Types

Pretty a => Pretty (Expression a) Source # 
Instance details

Defined in Data.XCB.Pretty

data Binop Source #

Supported Binary operations.

Constructors

Add 
Sub 
Mult 
Div 
And 
RShift 

Instances

Instances details
Show Binop Source # 
Instance details

Defined in Data.XCB.Types

Pretty Binop Source # 
Instance details

Defined in Data.XCB.Pretty

data Unop Source #

Constructors

Complement 

Instances

Instances details
Show Unop Source # 
Instance details

Defined in Data.XCB.Types

Pretty Unop Source # 
Instance details

Defined in Data.XCB.Pretty

data Type Source #

Types may include a reference to the containing module.

Instances

Instances details
Show Type Source # 
Instance details

Defined in Data.XCB.Types

Eq Type Source # 
Instance details

Defined in Data.XCB.Types

Methods

(==) :: Type -> Type -> Bool Source #

(/=) :: Type -> Type -> Bool Source #

Ord Type Source # 
Instance details

Defined in Data.XCB.Types

Pretty Type Source # 
Instance details

Defined in Data.XCB.Pretty

type EnumVals typ = typ Source #

type MaskVals typ = typ Source #

data Alignment Source #

Constructors

Alignment Int Int 

Instances

Instances details
Show Alignment Source # 
Instance details

Defined in Data.XCB.Types

Pretty Alignment Source # 
Instance details

Defined in Data.XCB.Pretty

data AllowedEvent Source #

Constructors

AllowedEvent Name Bool Int Int 

Instances

Instances details
Show AllowedEvent Source # 
Instance details

Defined in Data.XCB.Types

Pretty AllowedEvent Source # 
Instance details

Defined in Data.XCB.Pretty

data PadType Source #

Constructors

PadBytes 
PadAlignment 

Instances

Instances details
Show PadType Source # 
Instance details

Defined in Data.XCB.Types

Pretty PadType Source # 
Instance details

Defined in Data.XCB.Pretty