-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Low-level DBus protocol implementation -- -- Low-level DBus protocol implementation @package dbus-core @version 0.4 module DBus.Types data Atom class (Variable a) => Atomic a toAtom :: (Atomic a) => a -> Atom fromAtom :: (Variable a) => Atom -> Maybe a atomSignature :: Atom -> Signature atomType :: Atom -> Type atomToVariant :: Atom -> Variant atomFromVariant :: Variant -> Maybe Atom data Variant class Variable a defaultSignature :: (Variable a) => a -> Signature toVariant :: (Variable a) => a -> Variant fromVariant :: (Variable a) => Variant -> Maybe a variantSignature :: Variant -> Signature variantType :: Variant -> Type data Array toArray :: (Variable a) => [a] -> Maybe Array fromArray :: (Variable a) => Array -> Maybe [a] arrayItems :: Array -> [Variant] arrayFromItems :: Signature -> [Variant] -> Maybe Array arraySignature :: Array -> Signature data Dictionary toDictionary :: (Atomic a, Variable b) => [(a, b)] -> Maybe Dictionary fromDictionary :: (Atomic a, Variable b) => Dictionary -> Maybe [(a, b)] dictionaryItems :: Dictionary -> [(Atom, Variant)] dictionaryFromItems :: Signature -> Signature -> [(Atom, Variant)] -> Maybe Dictionary dictionarySignature :: Dictionary -> Signature data Structure Structure :: [Variant] -> Structure structureSignature :: Structure -> Signature data Endianness LittleEndian :: Endianness BigEndian :: Endianness data InterfaceName mkInterfaceName :: String -> Maybe InterfaceName mkInterfaceName' :: String -> InterfaceName strInterfaceName :: InterfaceName -> String data BusName mkBusName :: String -> Maybe BusName mkBusName' :: String -> BusName strBusName :: BusName -> String data MemberName mkMemberName :: String -> Maybe MemberName mkMemberName' :: String -> MemberName strMemberName :: MemberName -> String data ErrorName mkErrorName :: String -> Maybe ErrorName mkErrorName' :: String -> ErrorName strErrorName :: ErrorName -> String data ObjectPath mkObjectPath :: String -> Maybe ObjectPath mkObjectPath' :: String -> ObjectPath strObjectPath :: ObjectPath -> String newtype Serial Serial :: Word32 -> Serial nextSerial :: Serial -> Serial firstSerial :: Serial data Signature data Type BooleanT :: Type ByteT :: Type Int16T :: Type UInt16T :: Type Int32T :: Type UInt32T :: Type Int64T :: Type UInt64T :: Type DoubleT :: Type StringT :: Type ObjectPathT :: Type SignatureT :: Type ArrayT :: Type -> Type DictionaryT :: Type -> Type -> Type StructureT :: [Type] -> Type VariantT :: Type signatureTypes :: Signature -> [Type] mkSignature :: String -> Maybe Signature mkSignature' :: String -> Signature strSignature :: Signature -> String typeString :: Type -> String module DBus.Constants protocolVersion :: Word8 dbusName :: BusName dbusPath :: ObjectPath dbusInterface :: InterfaceName interfaceIntrospectable :: InterfaceName interfaceProperties :: InterfaceName interfacePeer :: InterfaceName errorFailed :: ErrorName errorNoMemory :: ErrorName errorServiceUnknown :: ErrorName errorNameHasNoOwner :: ErrorName errorNoReply :: ErrorName errorIOError :: ErrorName errorBadAddress :: ErrorName errorNotSupported :: ErrorName errorLimitsExceeded :: ErrorName errorAccessDenied :: ErrorName errorAuthFailed :: ErrorName errorNoServer :: ErrorName errorTimeout :: ErrorName errorNoNetwork :: ErrorName errorAddressInUse :: ErrorName errorDisconnected :: ErrorName errorInvalidArgs :: ErrorName errorFileNotFound :: ErrorName errorFileExists :: ErrorName errorUnknownMethod :: ErrorName errorTimedOut :: ErrorName errorMatchRuleNotFound :: ErrorName errorMatchRuleInvalid :: ErrorName errorSpawnExecFailed :: ErrorName errorSpawnForkFailed :: ErrorName errorSpawnChildExited :: ErrorName errorSpawnChildSignaled :: ErrorName errorSpawnFailed :: ErrorName errorSpawnFailedToSetup :: ErrorName errorSpawnConfigInvalid :: ErrorName errorSpawnServiceNotValid :: ErrorName errorSpawnServiceNotFound :: ErrorName errorSpawnPermissionsInvalid :: ErrorName errorSpawnFileInvalid :: ErrorName errorSpawnNoMemory :: ErrorName errorUnixProcessIdUnknown :: ErrorName errorInvalidFileContent :: ErrorName errorSELinuxSecurityContextUnknown :: ErrorName errorAdtAuditDataUnknown :: ErrorName errorObjectPathInUse :: ErrorName errorInconsistentMessage :: ErrorName module DBus.Message class Message a messageTypeCode :: (Message a) => a -> Word8 messageHeaderFields :: (Message a) => a -> [HeaderField] messageFlags :: (Message a) => a -> Set Flag messageBody :: (Message a) => a -> [Variant] data Flag NoReplyExpected :: Flag NoAutoStart :: Flag data HeaderField Path :: ObjectPath -> HeaderField Interface :: InterfaceName -> HeaderField Member :: MemberName -> HeaderField ErrorName :: ErrorName -> HeaderField ReplySerial :: Serial -> HeaderField Destination :: BusName -> HeaderField Sender :: BusName -> HeaderField Signature :: Signature -> HeaderField data MethodCall MethodCall :: ObjectPath -> MemberName -> Maybe InterfaceName -> Maybe BusName -> Set Flag -> [Variant] -> MethodCall methodCallPath :: MethodCall -> ObjectPath methodCallMember :: MethodCall -> MemberName methodCallInterface :: MethodCall -> Maybe InterfaceName methodCallDestination :: MethodCall -> Maybe BusName methodCallFlags :: MethodCall -> Set Flag methodCallBody :: MethodCall -> [Variant] data MethodReturn MethodReturn :: Serial -> Maybe BusName -> Set Flag -> [Variant] -> MethodReturn methodReturnSerial :: MethodReturn -> Serial methodReturnDestination :: MethodReturn -> Maybe BusName methodReturnFlags :: MethodReturn -> Set Flag methodReturnBody :: MethodReturn -> [Variant] data Error Error :: ErrorName -> Serial -> Maybe BusName -> Set Flag -> [Variant] -> Error errorName :: Error -> ErrorName errorSerial :: Error -> Serial errorDestination :: Error -> Maybe BusName errorFlags :: Error -> Set Flag errorBody :: Error -> [Variant] data Signal Signal :: ObjectPath -> MemberName -> InterfaceName -> Set Flag -> [Variant] -> Signal signalPath :: Signal -> ObjectPath signalMember :: Signal -> MemberName signalInterface :: Signal -> InterfaceName signalFlags :: Signal -> Set Flag signalBody :: Signal -> [Variant] data ReceivedMessage ReceivedMethodCall :: Serial -> (Maybe BusName) -> MethodCall -> ReceivedMessage ReceivedMethodReturn :: Serial -> (Maybe BusName) -> MethodReturn -> ReceivedMessage ReceivedError :: Serial -> (Maybe BusName) -> Error -> ReceivedMessage ReceivedSignal :: Serial -> (Maybe BusName) -> Signal -> ReceivedMessage ReceivedUnknown :: Serial -> (Maybe BusName) -> ReceivedMessage receivedSerial :: ReceivedMessage -> Serial receivedSender :: ReceivedMessage -> Maybe BusName marshal :: (Message a) => Endianness -> Serial -> a -> ByteString unmarshal :: (Monad m) => (Word32 -> m ByteString) -> m (Either String ReceivedMessage) instance Show ReceivedMessage instance Eq ReceivedMessage instance Show MessageHeader instance Eq MessageHeader instance Show Signal instance Eq Signal instance Show Error instance Eq Error instance Show MethodReturn instance Eq MethodReturn instance Show MethodCall instance Eq MethodCall instance Show HeaderField instance Eq HeaderField instance Show Flag instance Eq Flag instance Ord Flag instance Message Signal instance Message Error instance Message MethodReturn instance Message MethodCall instance Variable HeaderField module DBus.Address data Address addressMethod :: Address -> String addressParameters :: Address -> Map String String strAddress :: Address -> String parseAddresses :: String -> Maybe [Address] instance Eq Address instance Show Address module DBus.Connection data Connection data ConnectionException InvalidAddress :: String -> ConnectionException BadParameters :: Address -> String -> ConnectionException UnknownMethod :: Address -> ConnectionException NoWorkingAddress :: [Address] -> ConnectionException data ProtocolException ProtocolException :: String -> ProtocolException connect :: Address -> IO Connection send :: (Message a) => Connection -> (Serial -> IO b) -> a -> IO b receive :: Connection -> IO ReceivedMessage instance Typeable ProtocolException instance Typeable ConnectionException instance Show ProtocolException instance Show ConnectionException instance Exception ProtocolException instance Exception ConnectionException instance Show Connection module DBus.Bus getSystemBus :: IO (Connection, BusName) getSessionBus :: IO (Connection, BusName) getFirstBus :: [Address] -> IO (Connection, BusName) getBus :: Address -> IO (Connection, BusName)