!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ NoneIA value used to uniquely identify a particular message within a session. < Serials are 32-bit unsigned integers, and eventually wrap. HA D-Bus Dictionary is a container type similar to Haskell maps, storing 4 zero or more associations between keys and values. Most users can use the  ) instance for maps to extract the values F of a dictionary. This type is for advanced use cases, where the user K wants to convert dictionary items to Haskell types that are not instances  of  . DA 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  * instance for lists or vectors to extract M the values of an array. This type is for advanced use cases, where the user J wants to convert array values to Haskell types that are not instances of   . IA D-Bus Structure is a container type similar to Haskell tuples, storing + values of any type that is convertable to  . A Structure may  contain up to 255 values. Most users can use the  $ instance for tuples to extract the J values of a structure. This type is for very large structures, which may $ be awkward to work with as tuples. FBus names are used to identify particular clients on the message bus.  A bus name may be either unique or  well-known, where unique names L start with a colon. Bus names consist of alphanumeric characters separated  by periods. See   Rhttp://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-names-bus  for details. GError 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   Thttp://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-names-error  for details. FMember names are used to identify a single method or signal within an = interface. Method names consist of alphanumeric characters. See   Uhttp://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-names-member  for details. DInterfaces are used to group a set of methods and signals within an E exported object. Interface names consist of alphanumeric characters  separated by periods. See   Xhttp://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-names-interface  for details. GObject paths are special strings, used to identify a particular object $ exported from a D-Bus application. BObject 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. =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. 2Atomic types can be used as keys to dictionaries. 'Users may not provide new instances of   because this could allow / dictionaries to be created with invalid keys. AValue types can be used as items in containers, such as lists or  dictionaries. 'Users may not provide new instances of   because this could allow < containers to be created with items of heterogenous types. BA signature is a list of D-Bus types, obeying some basic rules of  validity. 1The rules of signature validity are complex: see   Shttp://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-signatures  for details. !5Get the list of types in a signature. The inverse of #. "<Convert a signature into a signature string. The inverse of  %. #0Convert a list of types into a valid signature. Returns Nothing/ if the given types are not a valid signature. $0Convert a list of types into a valid signature. BThrows an exception if the given types are not a valid signature. %1Parse a signature string into a valid signature. Returns Nothing/ if the given string is not a valid signature. &DEvery variant is strongly-typed; that is, the type of its contained I value is known at all times. This function retrieves that type, so that 5 the correct cast can be used to retrieve the value. :&Get the first serial in the sequence. ;=Get the next serial in the sequence. This may wrap around to  :.       !"#$ % &' ()* +,- .!"/#$%012345678&9:;<=>?'()@*+,A-./B012345C6789:;DEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~|      !"#$ % &' ()* +,- .!"/#$%012345678&9:;<=>?'()@*+,A-./B012345C6789:;DEF      $#"!  % &' ()*  +,- .!"/#$%012345678&9:;<=>?'()@*+,A-./B012345C6789:;DEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~None<HNot an actual message type, but a wrapper around messages received from ) the bus. Each value contains the message's . GIf casing against these constructors, always include a default case to K handle messages of an unknown type. New message types may be added to the H D-Bus specification, and applications should handle them gracefully by " either ignoring or logging them. AFSignals are broadcast by applications to notify other clients of some  event. B1The path of the object that emitted this signal. C+The interface that this signal belongs to. DThe name of this signal. E6The name of the application that emitted this signal. BMost users will just leave this empty, because the bus overwrites A the sender for security reasons. Setting the sender manually is ! used for peer-peer connections.  Defaults to Nothing. F6The name of the application to emit the signal to. If Nothing, > the signal is sent to any application that has registered an  appropriate match rule.  Defaults to Nothing. G?Additional information about the signal, such as the new value  or the time.  Defaults to []. HEA method error is a reply to a method call, indicating that the call ( received an error and did not succeed. I:The name of the error type. Names are used so clients can : handle certain classes of error differently from others. J?The serial of the original method call. This lets the original 1 caller match up this reply to the pending call. K;The name of the application that is returning from a call. BMost users will just leave this empty, because the bus overwrites A the sender for security reasons. Setting the sender manually is ! used for peer-peer connections.  Defaults to Nothing. L5The name of the application that initiated the call. @Most users should set this. If a message with no destination is @ sent to the bus, the bus will behave as if the destination was  set to org.freedesktop.DBus!. For peer-peer connections, the : destination can be empty because there is only one peer.  Defaults to Nothing. M:Additional information about the error. By convention, if ? the error body contains any items, the first item should be a  string describing the error. NFA method return is a reply to a method call, indicating that the call  succeeded. O?The serial of the original method call. This lets the original 1 caller match up this reply to the pending call. P;The name of the application that is returning from a call. BMost users will just leave this empty, because the bus overwrites A the sender for security reasons. Setting the sender manually is ! used for peer-peer connections.  Defaults to Nothing. Q5The name of the application that initiated the call. @Most users should set this. If a message with no destination is @ sent to the bus, the bus will behave as if the destination was  set to org.freedesktop.DBus!. For peer-peer connections, the : destination can be empty because there is only one peer.  Defaults to Nothing. R*Values returned from the method call. See  .  Defaults to []. SAA method call is a request to run some procedure exported by the ? remote process. Procedures are identified by an (object_path, % interface_name, method_name) tuple. T?The object path of the method call. Conceptually, object paths  act like a procedural language'#s pointers. Each object referenced * by a path is a collection of procedures. U@The interface of the method call. Each object may implement any ; number of interfaces. Each method is part of at least one  interface. In certain cases, this may be Nothing, but most users should set  it to a value. VCThe method name of the method call. Method names are unique within 9 an interface, but might not be unique within an object. W1The name of the application that sent this call. BMost users will just leave this empty, because the bus overwrites A the sender for security reasons. Setting the sender manually is ! used for peer-peer connections.  Defaults to Nothing. X1The name of the application to send the call to. @Most users should set this. If a message with no destination is @ sent to the bus, the bus will behave as if the destination was  set to org.freedesktop.DBus!. For peer-peer connections, the : destination can be empty because there is only one peer.  Defaults to Nothing. Y?Set whether a reply is expected. This can save network and cpu . resources by inhibiting unnecessary replies.  Defaults to True. Z1Set whether the bus should auto-start the remote  Defaults to True. [&The arguments to the method call. See  .  Defaults to []. ]FGet a human-readable description of the error, by returning the first  item in the error body if it' s a string. ?<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]:<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]<@?>=ABCDEFGHIJKLMNOPQRS TUVWXYZ[\]Nonen^_`abcd      !"#$%&'()*+,-./0123 ^_`abcd#'+`^_`bacd      !"#$%&'()*+,-./0123  Safe-Inferred eJWhen a D-Bus server must listen for connections, or a client must connect " to a server, the listening socket'%s configuration is specified with an  address. An address contains the method, which determines the ' protocol and transport mechanism, and  parameters, which provide ; additional method-specific information about the address. h7Try to convert a method string and parameter map to an e. Returns 4* if the method or parameters are invalid. i9Convert an address to a string in the format expected by k. jBConvert a list of addresses to a string in the format expected by  l. k4Try to parse a string containing one valid address. #An address string is in the format method:key1=val1,key2=val2. There C are some limitations on the characters allowed within methods and ; parameters; see the D-Bus specification for full details. l>Try to parse a string containing one or more valid addresses. +Addresses are separated by semicolons. See k for the format  of addresses. m0Returns the address in the environment variable  DBUS_SYSTEM_BUS_ADDRESS, or   unix:path=/var/run/dbus/system_bus_socket if DBUS_SYSTEM_BUS_ADDRESS  is not set. Returns 4 if DBUS_SYSTEM_BUS_ADDRESS contains an invalid address. n0Returns the address in the environment variable  DBUS_SESSION_BUS_ADDRESS, which must be set. Returns 4 if DBUS_SYSTEM_BUS_ADDRESS is unset or contains an  invalid address. o0Returns the address in the environment variable  DBUS_STARTER_ADDRESS, which must be set. Returns 4 if DBUS_STARTER_ADDRESS is unset or contains an  invalid address. e5fgh678ijkl9mno:;<=e5fgh678ijkl9mno:;<e5fgh678ijkl9mno:;<=None pGA D-Bus UUID is 128 bits of data, usually randomly generated. They are : used for identifying unique server instances to clients. :Older versions of the D-Bus spec also called these values GUIDs. ED-Bus UUIDs are not the same as the RFC-standardized UUIDs or GUIDs. qGGet the D-Bus type corresponding to the given Haskell value. The value  may be  undefined. rConstruct a new S. for the given object, interface, and method. Use fields such as X and [ to populate  a S.  {-# LANGUAGE OverloadedStrings #-}   methodCall "/" "org.example.Math" "Add"  { X = Just "org.example.Calculator"  , [ = [  (1 :: Int32),   (2 :: Int32)]  } sConstruct a new N+, in reply to a method call with the given  serial. Use fields such as R to populate a N. tConstruct a new H+, in reply to a method call with the given  serial. Use fields such as M to populate a H. uConstruct a new A3 for the given object, interface, and signal name. Use fields such as G to populate a A. v=No matter what sort of message was received, get its serial. wKNo matter what sort of message was received, get its sender (if provided). xINo matter what sort of message was received, get its body (if provided). y Convert a \ into a >. Although unusual, it is C possible for marshaling to fail; if this occurs, an error will be  returned instead. zParse a > into a <. The result can be I inspected to see what type of message was parsed. Unknown message types H can still be parsed successfully, as long as they otherwise conform to  the D-Bus standard. {*Format a D-Bus UUID as hex-encoded ASCII. |BGenerate a random D-Bus UUID. This value is suitable for use in a - randomly-allocated address, or as a listener's socket address  "guid" parameter. p?qrstuvwxyz{|}  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|\STUVWXYZ[rTUVWXZY[NOPQRsOPQRHIJKLMtIJKLM]ABCDEFGuBDCEFG<@?>=vwx & q #$!"%)'(,*+/-.201534678efghijklmno`bay_cz^d9:;p{| p?qrstuvwxyz{|NoneR@AB}C~DEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij'}~;}~~3@AB}C~DEGFHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijNone.Supports connecting over Unix or TCP sockets. EUnix sockets are similar to pipes, but exist as special files in the  filesystem. On Linux, abstract sockets" have a path-like address, but do . not actually have entries in the filesystem. )TCP sockets may use either IPv4 or IPv6. A 9 which can listen for and accept connections from remote  peers. 6Used for transports that listen on a port or address. @Begin listening for connections on the given address, using the  given options.  Throws a  if it'!s not possible to listen at that 7 address (for example, if the port is already in use). Accept a new connection.  Throws a " if some error happens before the ' transport is ready to exchange bytes. Close an open listener. 1Get the address to use to connect to a listener. 3Get the UUID allocated to this transport listener. See |. A / which can open a connection to a remote peer. AOpen a connection to the given address, using the given options.  Throws a  if the connection could not be  established. A ( can exchange bytes with a remote peer. FAdditional options that this transport type may use when establishing  a connection. !Default values for this transport' s options. Send a > over the transport.  Throws a  if an error occurs.  Receive a >+ of the given size from the transport. The B transport should block until sufficient bytes are available, and B only return fewer than the requested amount if there will not be  any more data.  Throws a  if an error occurs. >Close an open transport, and release any associated resources  or handles. 4Thrown from transport methods when an error occurs. 8Returns the processID, userID, and groupID of the socket's peer. See k. $lmnopqrstuvwxyzlmnopqrstuvwxyzNone Used with  and % to provide custom authenticators or  transport options. =Used to perform authentication with the remote peer. After a D transport has been opened, it will be passed to the authenticator. 8 If the authenticator returns true, then the socket was  authenticated. FOptions for the underlying transport, to be used by custom transports 4 for controlling how to connect to the remote peer. See DBus.Transport+ for details on defining custom transports CAn Authenticator defines how the local peer (client) authenticates % itself to the remote peer (server). 2Defines the client-side half of an authenticator. >Defines the server-side half of an authenticator. The UUID is # allocated by the socket listener. FAn open socket to another process. Messages can be sent to the remote  peer using , or received using . HStores information about an error encountered while creating or using a  . Default , which uses the default Unix/TCP transport and  authenticator. ?Open a socket to a remote peer listening at the given address.   open =   Throws  on failure. ?Open a socket to a remote peer listening at the given address. Most users should use 0. This function is for users who need to define & custom authenticators or transports. Throws  on failure. &Begin listening at the given address. Use . to create sockets from incoming connections. Use 5 to stop listening, and to free underlying transport % resources such as file descriptors. Throws  on failure. &Begin listening at the given address. Use . to create sockets from incoming connections. Use 5 to stop listening, and to free underlying transport % resources such as file descriptors. DThis function is for users who need to define custom authenticators  or transports. Throws  on failure. 0Accept a new connection from a socket listener. Throws  on failure. Close an open 1. Once closed, the socket is no longer valid and  must not be used. Close an open ). Once closed, the listener is no longer  valid and must not be used. 1Get the address to use to connect to a listener. (Send a single message, with a generated . The second parameter H exists to prevent race conditions when registering a reply handler; it ! receives the serial the message will be sent with, before it's  actually sent. DSockets are thread-safe. Only one message may be sent at a time; if H multiple threads attempt to send messages concurrently, one will block % until after the other has finished. Throws  on failure. LReceive the next message from the socket , blocking until one is available. HSockets are thread-safe. Only one message may be received at a time; if K multiple threads attempt to receive messages concurrently, one will block % until after the other has finished. Throws  on failure. An empty authenticator. Use  or  1 to control how the authentication is performed.  -myAuthenticator :: Authenticator MyTransport  myAuthenticator = authenticator  {  = clientMyAuth  ,  = serverMyAuth  }  'clientMyAuth :: MyTransport -> IO Bool 1serverMyAuth :: MyTransport -> String -> IO Bool {Implements the D-Bus EXTERNAL" mechanism, which uses credential  passing over a Unix socket. |Drop n items from the end of a list }ARead values from a monad until a guard value is read; return all  values, including the guard. 1~{|} ~{|}None,CUsed to automatically generate method signatures for introspection 5 documents. To support automatic signatures, a method's parameters and ' return value must all be instances of  . CThis class maps Haskell idioms to D-Bus; it is therefore unable to F generate some signatures. In particular, it does not support methods  which accept/9return a single structure, or single-element structures. J It also cannot generate signatures for methods with parameters or return $ values which are only instances of  . For these cases, please  use . HTo match common Haskell use, if the return value is a tuple, it will be ' converted to a list of return values. IA match rule describes which signals a particular callback is interested  in. Use  to construct match rules. EExample: a match rule which matches signals sent by the root object.  matchFromRoot :: MatchRule matchFromRoot =  {  = Just "/" } <If set, only receives signals sent from the given bus name. 'The standard D-Bus implementation from  http://dbus.freedesktop.org/ E almost always sets signal senders to the unique name of the sending  client. If  is a requested name like  "com.example.Foo"!, it will not match any signals. BThe exception is for signals sent by the bus itself, which always  have a sender of "org.freedesktop.DBus". :If set, only receives signals sent to the given bus name. 8If set, only receives signals sent with the given path. BIf set, only receives signals sent with the given interface name. ?If set, only receives signals sent with the given member name. =Not exported; exists to generate a compiler warning if users 9 case on the reply and forget to include a default case. 2The provided name is not assigned to this client. <The provided name is not assigned to any client on the bus. ,This client has released the provided name. =Not exported; exists to generate a compiler warning if users 9 case on the reply and forget to include a default case. @This client is already the primary owner of the requested name. 1The name was already reserved by another client,  : was set, and replacement was either not attempted or not  successful. AThe name was already reserved by another client, and replacement - was either not attempted or not successful. <This client is now the primary owner of the requested name. ?Options for the underlying socket, for advanced use cases. See  the  DBus.Socket module. AA function to run the client thread. The provided IO computation F should be called repeatedly; each time it is called, it will process  one incoming message. &The provided computation will throw a  if it fails to < process an incoming message, or if the connection is lost. The default implementation is . GAn active client session to a message bus. Clients may send or receive / method calls, and listen for or emit signals. LReply to a method call with a successful return, containing the given body. JReply to a method call with an error, containing the given error name and  body. GTypically, the first item of the error body is a string with a message  describing the error. 9Connect to the bus specified in the environment variable  DBUS_SYSTEM_BUS_ADDRESS, or to   unix:path=/var/run/dbus/system_bus_socket if DBUS_SYSTEM_BUS_ADDRESS  is not set.  Throws a  if DBUS_SYSTEM_BUS_ADDRESS contains an invalid . address, or if connecting to the bus failed. 9Connect to the bus specified in the environment variable  DBUS_SESSION_BUS_ADDRESS, which must be set.  Throws a  if DBUS_SESSION_BUS_ADDRESS is unset, contains an 6 invalid address, or if connecting to the bus failed. 9Connect to the bus specified in the environment variable  DBUS_STARTER_ADDRESS, which must be set.  Throws a  if DBUS_STARTER_ADDRESS is unset, contains an 6 invalid address, or if connecting to the bus failed. -Connect to the bus at the specified address.  Throws a  on failure. GConnect to the bus at the specified address, with the given connection  options. Most users should use  instead.  Throws a  on failure. HDefault client options. Uses the built-in Socket-based transport, which  supports the tcp: and unix: methods. Stop a Client'3s callback thread and close its underlying socket. Allow this client'0s reservation to be replaced, if another client  requests it with the  flag. If this client'<s reservation is replaced, this client will be added to the 1 wait queue unless the request also included the  flag. HIf the name being requested is already reserved, attempt to replace it. 3 This only works if the current owner provided the   flag. IIf the name is already in use, do not add this client to the queue, just  return an error. FAsks the message bus to assign the given name to this client. The bus J maintains a queue of possible owners, where the head of the queue is the  current ("primary" ) owner. -There are several uses for name reservation: G Clients which export methods reserve a name so users and applications L can send them messages. For example, the GNOME Keyring reserves the name  "org.gnome.keyring" on the user'"s session bus, and NetworkManager  reserves "org.freedesktop.NetworkManager" on the system bus. F When there are multiple implementations of a particular service, the E service standard will ususally include a generic bus name for the K service. This allows other clients to avoid depending on any particular  implementation'4s name. For example, both the GNOME Keyring and KDE  KWallet services request the "org.freedesktop.secrets" name on the  user's session bus.  A process with "single instance"% behavior can use name assignment to I check whether the instance is already running, and invoke some method & on it (e.g. opening a new window).  Throws a  if the call failed. :Release a name that this client previously requested. See  ) for an explanation of name reservation.  Throws a  if the call failed. :Send a method call to the bus, and wait for the response.  Throws a  if the method call couldn't be sent, or if the reply  couldn' t be parsed. :Send a method call to the bus, and wait for the response.  Unsets the noReplyExpected message flag before sending.  Throws a  if the method call couldn't sent, if the reply  couldn'#t be parsed, or if the reply was a H. ?Send a method call to the bus, and do not wait for a response.  Sets the noReplyExpected message flag before sending.  Throws a  if the method call couldn' t be sent. ERequest that the bus forward signals matching the given rule to this ) client, and process them in a callback. JA received signal might be processed by more than one callback at a time. ) Callbacks each run in their own thread.  Throws a  if the match rule couldn't be added to the bus. Emit the signal on the bus.  Throws a  if the signal message couldn' t be sent. BConvert a match rule into the textual format accepted by the bus. Match any signal. ANormally, any exceptions raised while executing a method will be  given the generic "!org.freedesktop.DBus.Error.Failed" name.  = allows the programmer to specify an error name, and provide L additional information to the remote application. You may use this instead  of  to abort a method call. GDefine a method handler, which will accept method calls with the given  interface and member name. ANote that the input and output parameter signatures are used for = introspection, but are not checked when executing a method. See 3 for an easier way to export functions with simple  parameter and return types. +Export the given functions under the given  and  . Use  to construct a " from a function that accepts and  returns simple types. Use  to construct a ( from a function that handles parameter  conversion manually.  ping :: MethodCall -> IO  ping _ = replyReturn []   sayHello :: String -> IO String sayHello name = return ("Hello " ++ name ++ "!")  export client "/ hello_world"  [  "com.example.HelloWorld" "Ping" ping  ,  "com.example.HelloWorld" "Hello" sayHello  ] CPrepare a Haskell function for export, automatically detecting the  function's type signature. See 2 for details on the limitations of this function. See 2 for exporting functions with user-defined types. hError message #Additional items of the error body Input parameter signature Output parameter signature 4=C     !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn o p q r s t u v w x yz{|}~K          !"{#$%%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~KRX]hi       o  ! " # $ % > &'()z**+K,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdeefghijklmnopqrstuvwxxyz{{|}~ dbus-0.10.2DBusDBus.IntrospectionDBus.Transport DBus.Socket DBus.Client DBus.Types DBus.Message DBus.Wire DBus.AddressSerial DictionaryArray StructureBusName ErrorName MemberName InterfaceName ObjectPathVariantIsAtomIsValue IsVariant toVariant fromVariant SignatureType TypeStructureTypeDictionary TypeArray TypeVariantTypeObjectPath TypeSignature TypeString TypeDouble TypeInt64 TypeInt32 TypeInt16 TypeWord64 TypeWord32 TypeWord16 TypeWord8 TypeBooleansignatureTypesformatSignature signature signature_parseSignature variantTypeformatObjectPathparseObjectPath objectPath_formatInterfaceNameparseInterfaceNameinterfaceName_formatMemberNameparseMemberName memberName_formatErrorNameparseErrorName errorName_ formatBusName parseBusNamebusName_structureItems arrayItemsdictionaryItems serialValue firstSerial nextSerialReceivedMessageReceivedSignalReceivedMethodErrorReceivedMethodReturnReceivedMethodCallSignal signalPathsignalInterface signalMember signalSendersignalDestination signalBody MethodErrormethodErrorNamemethodErrorSerialmethodErrorSendermethodErrorDestinationmethodErrorBody MethodReturnmethodReturnSerialmethodReturnSendermethodReturnDestinationmethodReturnBody MethodCallmethodCallPathmethodCallInterfacemethodCallMembermethodCallSendermethodCallDestinationmethodCallReplyExpectedmethodCallAutoStartmethodCallBodyMessagemethodErrorMessageUnmarshalError MarshalError Endianness BigEndian LittleEndianmarshalErrorMessageunmarshalErrorMessageAddress addressMethodaddressParametersaddress formatAddressformatAddresses parseAddressparseAddressesgetSystemAddressgetSessionAddressgetStarterAddressUUIDtypeOf methodCall methodReturn methodErrorsignalreceivedMessageSerialreceivedMessageSenderreceivedMessageBodymarshal unmarshal formatUUID randomUUIDProperty propertyName propertyType propertyRead propertyWrite SignalArg signalArgName signalArgType signalName signalArgs Direction MethodArg methodArgName methodArgTypemethodArgDirectionMethod methodName methodArgs Interface interfaceNameinterfaceMethodsinterfaceSignalsinterfacePropertiesObject objectPathobjectInterfacesobjectChildrenobject interfacemethod methodArg directionIn directionOut signalArgpropertyparseXML formatXMLSocketTransportTransportListenTransportListenertransportListentransportAccepttransportListenerClosetransportListenerAddresstransportListenerUUID TransportOpen transportOpen TransportTransportOptionstransportDefaultOptions transportPut transportGettransportCloseTransportErrortransportErrorMessagetransportErrorAddresssocketTransportOptionBacklogtransportErrorsocketTransportCredentialsSocketListener SocketOptionssocketAuthenticatorsocketTransportOptions AuthenticatorauthenticatorClientauthenticatorServerSocket SocketErrorsocketErrorMessagesocketErrorFatalsocketErrorAddress socketErrordefaultSocketOptionsopenopenWithlisten listenWithacceptclose closeListenersocketListenerAddresssendreceive authenticator AutoMethod MatchRule matchSendermatchDestination matchPathmatchInterface matchMemberReleaseNameReply NameNotOwnerNameNonExistent NameReleasedRequestNameReplyNameAlreadyOwner NameExists NameInQueueNamePrimaryOwnerRequestNameFlagReply ClientOptionsclientSocketOptionsclientThreadRunnerClient ClientErrorclientErrorMessageclientErrorFatal clientError replyReturn replyError connectSystemconnectSessionconnectStarterconnect connectWithdefaultClientOptions disconnectnameAllowReplacementnameReplaceExistingnameDoNotQueue requestName releaseNamecallcall_ callNoReplyemitformatMatchRulematchAny throwErrorexport autoMethod ArrayBytesAtomAtomObjectPath AtomSignatureAtomText AtomDouble AtomInt64 AtomInt32 AtomInt16 AtomWord64 AtomWord32 AtomWord16 AtomWord8AtomBoolValueValueStructureValueMap ValueVector ValueBytes ValueVariant ValueAtomtoAtomfromAtomtoValue fromValue SigParseErrorshowTypetypeCodeparseSignatureBytes parseSigFast parseAtompeekWord8AsInt parseSigFullshowAtom showValue showThings vectorToBytes valueTypeatomTypevectorItemTypebimapbimapM mapItemTypevarToValparserObjectPathparserInterfaceNameparserMemberName parserBusName skipSepBy1 forceParsemaybeParseString$fIsVariantSerial$fIsVariant(,,,,,,,,,,,,,,)$fIsVariant(,,,,,,,,,,,,,)$fIsVariant(,,,,,,,,,,,,)$fIsVariant(,,,,,,,,,,,)$fIsVariant(,,,,,,,,,,)$fIsVariant(,,,,,,,,,)$fIsVariant(,,,,,,,,)$fIsVariant(,,,,,,,)$fIsVariant(,,,,,,)$fIsVariant(,,,,,)$fIsVariant(,,,,)$fIsVariant(,,,)$fIsVariant(,,)$fIsValue(,,,,,,,,,,,,,,)$fIsValue(,,,,,,,,,,,,,)$fIsValue(,,,,,,,,,,,,)$fIsValue(,,,,,,,,,,,)$fIsValue(,,,,,,,,,,)$fIsValue(,,,,,,,,,)$fIsValue(,,,,,,,,)$fIsValue(,,,,,,,)$fIsValue(,,,,,,)$fIsValue(,,,,,)$fIsValue(,,,,)$fIsValue(,,,) $fIsValue(,,)$fIsVariantDictionary$fShowDictionary$fIsVariantArray $fEqArray $fShowArray$fIsVariantStructure$fShowStructure$fIsVariantBusName$fIsStringBusName$fIsVariantErrorName$fIsStringErrorName$fIsVariantMemberName$fIsStringMemberName$fIsVariantInterfaceName$fIsStringInterfaceName$fIsStringObjectPath$fIsVariant(,) $fIsValue(,)$fIsVariantMap $fIsValueMap$fIsVariantByteString$fIsValueByteString$fIsVariantByteString0$fIsValueByteString0 $fIsVariant[] $fIsValue[]$fIsVariantVector$fIsValueVector$fIsVariant[]0 $fIsValue[]0 $fIsAtom[]$fIsVariantText $fIsValueText $fIsAtomText$fIsVariantVariant$fIsValueVariant$fIsVariantObjectPath$fIsValueObjectPath$fIsAtomObjectPath$fIsVariantSignature$fIsValueSignature$fIsAtomSignature$fIsVariantText0$fIsValueText0 $fIsAtomText0$fIsVariantDouble$fIsValueDouble$fIsAtomDouble$fIsVariantInt64$fIsValueInt64 $fIsAtomInt64$fIsVariantInt32$fIsValueInt32 $fIsAtomInt32$fIsVariantInt16$fIsValueInt16 $fIsAtomInt16$fIsVariantWord64$fIsValueWord64$fIsAtomWord64$fIsVariantWord32$fIsValueWord32$fIsAtomWord32$fIsVariantWord16$fIsValueWord16$fIsAtomWord16$fIsVariantWord8$fIsValueWord8 $fIsAtomWord8$fIsVariantBool $fIsValueBool $fIsAtomBool $fShowVariant $fEqValue$fExceptionSigParseError$fIsStringSignature$fShowSignature $fShowTypeReceivedUnknown HeaderFieldHeaderSignature HeaderSenderHeaderDestinationHeaderReplySerialHeaderErrorName HeaderMemberHeaderInterface HeaderPathUnknownMessageunknownMessageTypeunknownMessageSenderunknownMessageBodymessageTypeCodemessageHeaderFields messageBody messageFlagsmaybe'setMethodCallFlags$fMessageSignal$fMessageMethodError$fMessageMethodReturn$fMessageMethodCallErrorT runErrorTErrorM runErrorMUnmarshalState Unmarshal MarshalStateMarshalWireunWireWireRWireRRWireRLencodeEndiannessdecodeEndianness alignmentpaddinggetStateputState chooseEndian marshalAtomappendBappendSpadmarshalBuilderconsume skipPaddingskipTerminator fromMaybeU unmarshalGet marshalWord8unmarshalWord8 marshalWord16 marshalWord32 marshalWord64 marshalInt16 marshalInt32 marshalInt64unmarshalWord16unmarshalWord32unmarshalWord64unmarshalInt16unmarshalInt32unmarshalInt64 marshalDoubleunmarshalDouble marshalBool unmarshalBool marshalText unmarshalTextmaybeDecodeUtf8marshalObjectPathunmarshalObjectPathsignatureBytesmarshalSignatureunmarshalSignaturearrayMaximumLength marshalVectormarshalStrictBytes getArrayBytesunmarshalByteArrayunmarshalArraydictionaryToArrayarrayToDictionary marshalMapunmarshalDictionarymarshalStructureunmarshalStructuremarshalVariantunmarshalVariantprotocolVersionmessageMaximumLength encodeField encodeField' decodeField decodeField'marshalMessage checkBodySig marshalHeadercheckMaximumSizeunmarshalMessageMfindBodySignaturebuildReceivedMessagerequireunmarshalMessageuntilM throwErrorM throwErrorT $fMonadErrorT$fFunctorErrorT $fMonadErrorM$fFunctorErrorM $fMonadWirebase Data.MaybeNothing validMethod validParamsoptionallyEncoded parsecAddressgetenvhexToInt $fShowAddressbytestring-0.10.0.0Data.ByteString.Internal ByteString XmlWriter runXmlWriterOutIn parseElement parseRoot parseChild parseObjectparseInterface parseMethod parseSignal parseTypeparseMethodArgparseSignalArgisArg parsePropertygetattrchildrentell writeRoot writeChild writeObjectwriteInterface writeMethod writeSignal formatTypewriteMethodArgwriteSignalArg writePropertyattributeString writeElementwriteEmptyElementwriteAttributeescape$fMonadXmlWriternetwork-2.3.2.0Network.Socket getPeerCredrecvLoopopenUnixopenTcp listenUnix listenTcpcatchIOExceptionaddress_setPortreadPortNumber $fTransportListenSocketTransport$fTransportOpenSocketTransport$fTransportSocketTransport$fExceptionTransportError authExternaldropEnd readUntilsocketTransport socketAddress socketSerialsocketReadLocksocketWriteLock SomeTransportnextSocketSerial toSocketErrorclientAuthExternalserverAuthExternaltransportPutLinetransportGetLine splitPrefix$fTransportSomeTransport$fExceptionSocketErrorUnknownReleaseNameReplyUnknownRequestNameReply DoNotQueue Control.MonadforeverGHC.IOthrowIOfunTypesapply MethodExcReplaceExistingAllowReplacement MethodInfo InterfaceInfo ObjectInfo ReplyError ReplyReturnCallback clientSocketclientPendingCallsclientSignalHandlers clientObjectsclientThreadID disconnect'mainLoopdispatch encodeFlagssend_checkMatchRule findMethodintrospectRootmethodIntrospect introspect errorFailederrorDisconnectederrorUnknownObjecterrorUnknownInterfaceerrorUnknownMethoderrorInvalidParametersdbusNamedbusPath dbusInterfaceinterfaceIntrospectable$fAutoMethod(->)$fAutoMethodIO$fAutoMethodIO0$fExceptionMethodExc$fShowMatchRule$fExceptionClientError