dbus-1.2.4: A client library for the D-Bus IPC system.

Safe HaskellNone
LanguageHaskell98

DBus.Internal.Types

Synopsis

Documentation

data Type Source #

Instances
Eq Type Source # 
Instance details

Defined in DBus.Internal.Types

Methods

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

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

Ord Type Source # 
Instance details

Defined in DBus.Internal.Types

Methods

compare :: Type -> Type -> Ordering #

(<) :: Type -> Type -> Bool #

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

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

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

max :: Type -> Type -> Type #

min :: Type -> Type -> Type #

Show Type Source # 
Instance details

Defined in DBus.Internal.Types

Methods

showsPrec :: Int -> Type -> ShowS #

show :: Type -> String #

showList :: [Type] -> ShowS #

Generic Type Source # 
Instance details

Defined in DBus.Internal.Types

Associated Types

type Rep Type :: Type -> Type #

Methods

from :: Type -> Rep Type x #

to :: Rep Type x -> Type #

NFData Type Source # 
Instance details

Defined in DBus.Internal.Types

Methods

rnf :: Type -> () #

type Rep Type Source # 
Instance details

Defined in DBus.Internal.Types

type Rep Type = D1 (MetaData "Type" "DBus.Internal.Types" "dbus-1.2.4-HPUJS1gPse38bWfSdZ3v5V" False) ((((C1 (MetaCons "TypeBoolean" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "TypeWord8" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "TypeWord16" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "TypeWord32" PrefixI False) (U1 :: Type -> Type))) :+: ((C1 (MetaCons "TypeWord64" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "TypeInt16" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "TypeInt32" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "TypeInt64" PrefixI False) (U1 :: Type -> Type)))) :+: (((C1 (MetaCons "TypeDouble" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "TypeUnixFd" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "TypeString" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "TypeSignature" PrefixI False) (U1 :: Type -> Type))) :+: ((C1 (MetaCons "TypeObjectPath" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "TypeVariant" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "TypeArray" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Type)) :+: (C1 (MetaCons "TypeDictionary" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Type) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Type)) :+: C1 (MetaCons "TypeStructure" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Type])))))))

newtype Signature Source #

A signature is a list of D-Bus types, obeying some basic rules of validity.

The rules of signature validity are complex: see http://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-signatures for details.

Constructors

Signature [Type] 

signatureTypes :: Signature -> [Type] Source #

Get the list of types in a signature. The inverse of signature.

formatSignature :: Signature -> String Source #

Convert a signature into a signature string. The inverse of parseSignature.

signature :: MonadThrow m => [Type] -> m Signature Source #

Convert a list of types into a valid signature.

Throws if the given types are not a valid signature.

signature_ :: [Type] -> Signature Source #

Convert a list of types into a valid signature.

Throws an exception if the given types are not a valid signature.

parseSignature :: MonadThrow m => String -> m Signature Source #

Parse a signature string into a valid signature.

Throws if the given string is not a valid signature.

parseAtom :: Int -> (Type -> a) -> a -> a Source #

typeOf :: forall a. IsValue a => a -> Type Source #

class IsVariant a where Source #

Instances
IsVariant Bool Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Double Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Int16 Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Int32 Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Int64 Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Word8 Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Word16 Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Word32 Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Word64 Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant () Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant ByteString Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant ByteString Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Text Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Text Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant String Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Fd Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Serial Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Dictionary Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Array Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Structure Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant BusName Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant ErrorName Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant MemberName Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant InterfaceName Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant ObjectPath Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Variant Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Signature Source # 
Instance details

Defined in DBus.Internal.Types

IsValue a => IsVariant [a] Source # 
Instance details

Defined in DBus.Internal.Types

IsValue a => IsVariant (Vector a) Source # 
Instance details

Defined in DBus.Internal.Types

(IsVariant a1, IsVariant a2) => IsVariant (a1, a2) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2) Source #

(Ord k, IsAtom k, IsValue v) => IsVariant (Map k v) Source # 
Instance details

Defined in DBus.Internal.Types

(IsVariant a1, IsVariant a2, IsVariant a3) => IsVariant (a1, a2, a3) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3) Source #

(IsVariant a1, IsVariant a2, IsVariant a3, IsVariant a4) => IsVariant (a1, a2, a3, a4) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3, a4) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3, a4) Source #

(IsVariant a1, IsVariant a2, IsVariant a3, IsVariant a4, IsVariant a5) => IsVariant (a1, a2, a3, a4, a5) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3, a4, a5) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3, a4, a5) Source #

(IsVariant a1, IsVariant a2, IsVariant a3, IsVariant a4, IsVariant a5, IsVariant a6) => IsVariant (a1, a2, a3, a4, a5, a6) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3, a4, a5, a6) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3, a4, a5, a6) Source #

(IsVariant a1, IsVariant a2, IsVariant a3, IsVariant a4, IsVariant a5, IsVariant a6, IsVariant a7) => IsVariant (a1, a2, a3, a4, a5, a6, a7) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3, a4, a5, a6, a7) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3, a4, a5, a6, a7) Source #

(IsVariant a1, IsVariant a2, IsVariant a3, IsVariant a4, IsVariant a5, IsVariant a6, IsVariant a7, IsVariant a8) => IsVariant (a1, a2, a3, a4, a5, a6, a7, a8) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3, a4, a5, a6, a7, a8) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8) Source #

(IsVariant a1, IsVariant a2, IsVariant a3, IsVariant a4, IsVariant a5, IsVariant a6, IsVariant a7, IsVariant a8, IsVariant a9) => IsVariant (a1, a2, a3, a4, a5, a6, a7, a8, a9) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3, a4, a5, a6, a7, a8, a9) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9) Source #

(IsVariant a1, IsVariant a2, IsVariant a3, IsVariant a4, IsVariant a5, IsVariant a6, IsVariant a7, IsVariant a8, IsVariant a9, IsVariant a10) => IsVariant (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) Source #

(IsVariant a1, IsVariant a2, IsVariant a3, IsVariant a4, IsVariant a5, IsVariant a6, IsVariant a7, IsVariant a8, IsVariant a9, IsVariant a10, IsVariant a11) => IsVariant (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) Source #

(IsVariant a1, IsVariant a2, IsVariant a3, IsVariant a4, IsVariant a5, IsVariant a6, IsVariant a7, IsVariant a8, IsVariant a9, IsVariant a10, IsVariant a11, IsVariant a12) => IsVariant (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) Source #

(IsVariant a1, IsVariant a2, IsVariant a3, IsVariant a4, IsVariant a5, IsVariant a6, IsVariant a7, IsVariant a8, IsVariant a9, IsVariant a10, IsVariant a11, IsVariant a12, IsVariant a13) => IsVariant (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) Source #

(IsVariant a1, IsVariant a2, IsVariant a3, IsVariant a4, IsVariant a5, IsVariant a6, IsVariant a7, IsVariant a8, IsVariant a9, IsVariant a10, IsVariant a11, IsVariant a12, IsVariant a13, IsVariant a14) => IsVariant (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) Source #

(IsVariant a1, IsVariant a2, IsVariant a3, IsVariant a4, IsVariant a5, IsVariant a6, IsVariant a7, IsVariant a8, IsVariant a9, IsVariant a10, IsVariant a11, IsVariant a12, IsVariant a13, IsVariant a14, IsVariant a15) => IsVariant (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

toVariant :: (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) -> Variant Source #

fromVariant :: Variant -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) Source #

class IsVariant a => IsValue a where Source #

Value types can be used as items in containers, such as lists or dictionaries.

Users may not provide new instances of IsValue because this could allow containers to be created with items of heterogenous types.

Instances
IsValue Bool Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Double Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Int16 Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Int32 Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Int64 Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Word8 Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Word16 Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Word32 Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Word64 Source # 
Instance details

Defined in DBus.Internal.Types

IsValue () Source # 
Instance details

Defined in DBus.Internal.Types

IsValue ByteString Source # 
Instance details

Defined in DBus.Internal.Types

IsValue ByteString Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Text Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Text Source # 
Instance details

Defined in DBus.Internal.Types

IsValue String Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Fd Source # 
Instance details

Defined in DBus.Internal.Types

IsValue ObjectPath Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Variant Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Signature Source # 
Instance details

Defined in DBus.Internal.Types

IsValue a => IsValue [a] Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy [a] -> Type Source #

toValue :: [a] -> Value Source #

fromValue :: Value -> Maybe [a] Source #

IsValue a => IsValue (Vector a) Source # 
Instance details

Defined in DBus.Internal.Types

(IsValue a1, IsValue a2) => IsValue (a1, a2) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2) -> Type Source #

toValue :: (a1, a2) -> Value Source #

fromValue :: Value -> Maybe (a1, a2) Source #

(Ord k, IsAtom k, IsValue v) => IsValue (Map k v) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (Map k v) -> Type Source #

toValue :: Map k v -> Value Source #

fromValue :: Value -> Maybe (Map k v) Source #

(IsValue a1, IsValue a2, IsValue a3) => IsValue (a1, a2, a3) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3) -> Type Source #

toValue :: (a1, a2, a3) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3) Source #

(IsValue a1, IsValue a2, IsValue a3, IsValue a4) => IsValue (a1, a2, a3, a4) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3, a4) -> Type Source #

toValue :: (a1, a2, a3, a4) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3, a4) Source #

(IsValue a1, IsValue a2, IsValue a3, IsValue a4, IsValue a5) => IsValue (a1, a2, a3, a4, a5) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3, a4, a5) -> Type Source #

toValue :: (a1, a2, a3, a4, a5) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3, a4, a5) Source #

(IsValue a1, IsValue a2, IsValue a3, IsValue a4, IsValue a5, IsValue a6) => IsValue (a1, a2, a3, a4, a5, a6) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3, a4, a5, a6) -> Type Source #

toValue :: (a1, a2, a3, a4, a5, a6) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3, a4, a5, a6) Source #

(IsValue a1, IsValue a2, IsValue a3, IsValue a4, IsValue a5, IsValue a6, IsValue a7) => IsValue (a1, a2, a3, a4, a5, a6, a7) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3, a4, a5, a6, a7) -> Type Source #

toValue :: (a1, a2, a3, a4, a5, a6, a7) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3, a4, a5, a6, a7) Source #

(IsValue a1, IsValue a2, IsValue a3, IsValue a4, IsValue a5, IsValue a6, IsValue a7, IsValue a8) => IsValue (a1, a2, a3, a4, a5, a6, a7, a8) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8) -> Type Source #

toValue :: (a1, a2, a3, a4, a5, a6, a7, a8) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8) Source #

(IsValue a1, IsValue a2, IsValue a3, IsValue a4, IsValue a5, IsValue a6, IsValue a7, IsValue a8, IsValue a9) => IsValue (a1, a2, a3, a4, a5, a6, a7, a8, a9) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9) -> Type Source #

toValue :: (a1, a2, a3, a4, a5, a6, a7, a8, a9) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9) Source #

(IsValue a1, IsValue a2, IsValue a3, IsValue a4, IsValue a5, IsValue a6, IsValue a7, IsValue a8, IsValue a9, IsValue a10) => IsValue (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) -> Type Source #

toValue :: (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) Source #

(IsValue a1, IsValue a2, IsValue a3, IsValue a4, IsValue a5, IsValue a6, IsValue a7, IsValue a8, IsValue a9, IsValue a10, IsValue a11) => IsValue (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) -> Type Source #

toValue :: (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) Source #

(IsValue a1, IsValue a2, IsValue a3, IsValue a4, IsValue a5, IsValue a6, IsValue a7, IsValue a8, IsValue a9, IsValue a10, IsValue a11, IsValue a12) => IsValue (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) -> Type Source #

toValue :: (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) Source #

(IsValue a1, IsValue a2, IsValue a3, IsValue a4, IsValue a5, IsValue a6, IsValue a7, IsValue a8, IsValue a9, IsValue a10, IsValue a11, IsValue a12, IsValue a13) => IsValue (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) -> Type Source #

toValue :: (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) Source #

(IsValue a1, IsValue a2, IsValue a3, IsValue a4, IsValue a5, IsValue a6, IsValue a7, IsValue a8, IsValue a9, IsValue a10, IsValue a11, IsValue a12, IsValue a13, IsValue a14) => IsValue (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) -> Type Source #

toValue :: (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) Source #

(IsValue a1, IsValue a2, IsValue a3, IsValue a4, IsValue a5, IsValue a6, IsValue a7, IsValue a8, IsValue a9, IsValue a10, IsValue a11, IsValue a12, IsValue a13, IsValue a14, IsValue a15) => IsValue (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) Source # 
Instance details

Defined in DBus.Internal.Types

Methods

typeOf' :: Proxy (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) -> Type Source #

toValue :: (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) -> Value Source #

fromValue :: Value -> Maybe (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) Source #

class IsValue a => IsAtom a where Source #

Atomic types can be used as keys to dictionaries.

Users may not provide new instances of IsAtom because this could allow dictionaries to be created with invalid keys.

Methods

toAtom :: a -> Atom Source #

fromAtom :: Atom -> Maybe a Source #

Instances
IsAtom Bool Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom Double Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom Int16 Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom Int32 Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom Int64 Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom Word8 Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom Word16 Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom Word32 Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom Word64 Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom Text Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom Text Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom String Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom Fd Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom ObjectPath Source # 
Instance details

Defined in DBus.Internal.Types

IsAtom Signature Source # 
Instance details

Defined in DBus.Internal.Types

newtype Variant Source #

Variants may contain any other built-in D-Bus value. Besides representing native VARIANT values, they allow type-safe storage and inspection of D-Bus collections.

Constructors

Variant Value 
Instances
Eq Variant Source # 
Instance details

Defined in DBus.Internal.Types

Methods

(==) :: Variant -> Variant -> Bool #

(/=) :: Variant -> Variant -> Bool #

Show Variant Source # 
Instance details

Defined in DBus.Internal.Types

IsValue Variant Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Variant Source # 
Instance details

Defined in DBus.Internal.Types

showThings :: String -> (a -> String) -> String -> [a] -> String Source #

variantType :: Variant -> Type Source #

Every variant is strongly-typed; that is, the type of its contained value is known at all times. This function retrieves that type, so that the correct cast can be used to retrieve the value.

bimap :: Ord k' => (k -> v -> (k', v')) -> Map k v -> Map k' v' Source #

bimapM :: (Monad m, Ord k') => (k -> v -> m (k', v')) -> Map k v -> m (Map k' v') Source #

newtype ObjectPath Source #

Object paths are special strings, used to identify a particular object exported from a D-Bus application.

Object paths must begin with a slash, and consist of alphanumeric characters separated by slashes.

See http://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-marshaling-object-path for details.

Constructors

ObjectPath String 
Instances
Eq ObjectPath Source # 
Instance details

Defined in DBus.Internal.Types

Ord ObjectPath Source # 
Instance details

Defined in DBus.Internal.Types

Show ObjectPath Source # 
Instance details

Defined in DBus.Internal.Types

IsString ObjectPath Source # 
Instance details

Defined in DBus.Internal.Types

Lift ObjectPath Source # 
Instance details

Defined in DBus.Internal.Types

Methods

lift :: ObjectPath -> Q Exp #

NFData ObjectPath Source # 
Instance details

Defined in DBus.Internal.Types

Methods

rnf :: ObjectPath -> () #

IsAtom ObjectPath Source # 
Instance details

Defined in DBus.Internal.Types

IsValue ObjectPath Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant ObjectPath Source # 
Instance details

Defined in DBus.Internal.Types

newtype InterfaceName Source #

Interfaces are used to group a set of methods and signals within an exported object. Interface names consist of alphanumeric characters separated by periods.

See http://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-names-interface for details.

Constructors

InterfaceName String 

newtype MemberName Source #

Member names are used to identify a single method or signal within an interface. Method names consist of alphanumeric characters.

See http://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-names-member for details.

Constructors

MemberName String 

newtype ErrorName Source #

Error names are used to identify which type of error was returned from a method call. Error names consist of alphanumeric characters separated by periods.

See http://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-names-error for details.

Constructors

ErrorName String 

newtype BusName Source #

Bus names are used to identify particular clients on the message bus. A bus name may be either unique or well-known, where unique names start with a colon. Bus names consist of alphanumeric characters separated by periods.

See http://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-names-bus for details.

Constructors

BusName String 
Instances
Eq BusName Source # 
Instance details

Defined in DBus.Internal.Types

Methods

(==) :: BusName -> BusName -> Bool #

(/=) :: BusName -> BusName -> Bool #

Ord BusName Source # 
Instance details

Defined in DBus.Internal.Types

Show BusName Source # 
Instance details

Defined in DBus.Internal.Types

IsString BusName Source # 
Instance details

Defined in DBus.Internal.Types

Methods

fromString :: String -> BusName #

Lift BusName Source # 
Instance details

Defined in DBus.Internal.Types

Methods

lift :: BusName -> Q Exp #

NFData BusName Source # 
Instance details

Defined in DBus.Internal.Types

Methods

rnf :: BusName -> () #

IsVariant BusName Source # 
Instance details

Defined in DBus.Internal.Types

newtype Structure Source #

A D-Bus Structure is a container type similar to Haskell tuples, storing values of any type that is convertable to IsVariant. A Structure may contain up to 255 values.

Most users can use the IsVariant instance for tuples to extract the values of a structure. This type is for very large structures, which may be awkward to work with as tuples.

Constructors

Structure [Value] 
Instances
Eq Structure Source # 
Instance details

Defined in DBus.Internal.Types

Show Structure Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Structure Source # 
Instance details

Defined in DBus.Internal.Types

data Array Source #

A D-Bus Array is a container type similar to Haskell lists, storing zero or more values of a single D-Bus type.

Most users can use the IsVariant instance for lists or vectors to extract the values of an array. This type is for advanced use cases, where the user wants to convert array values to Haskell types that are not instances of IsValue.

Instances
Eq Array Source # 
Instance details

Defined in DBus.Internal.Types

Methods

(==) :: Array -> Array -> Bool #

(/=) :: Array -> Array -> Bool #

Show Array Source # 
Instance details

Defined in DBus.Internal.Types

Methods

showsPrec :: Int -> Array -> ShowS #

show :: Array -> String #

showList :: [Array] -> ShowS #

IsVariant Array Source # 
Instance details

Defined in DBus.Internal.Types

data Dictionary Source #

A D-Bus Dictionary is a container type similar to Haskell maps, storing zero or more associations between keys and values.

Most users can use the IsVariant instance for maps to extract the values of a dictionary. This type is for advanced use cases, where the user wants to convert dictionary items to Haskell types that are not instances of IsValue.

Constructors

Dictionary Type Type (Map Atom Value) 

newtype Serial Source #

A value used to uniquely identify a particular message within a session. Serials are 32-bit unsigned integers, and eventually wrap.

Constructors

Serial Word32 
Instances
Eq Serial Source # 
Instance details

Defined in DBus.Internal.Types

Methods

(==) :: Serial -> Serial -> Bool #

(/=) :: Serial -> Serial -> Bool #

Ord Serial Source # 
Instance details

Defined in DBus.Internal.Types

Show Serial Source # 
Instance details

Defined in DBus.Internal.Types

IsVariant Serial Source # 
Instance details

Defined in DBus.Internal.Types

firstSerial :: Serial Source #

Get the first serial in the sequence.

nextSerial :: Serial -> Serial Source #

Get the next serial in the sequence. This may wrap around to firstSerial.

forceParse :: String -> (String -> Maybe a) -> String -> a Source #