# Module DBus.Message

    module Message: sig .. end

    type message_type =

`|` | `Invalid`
`|` | `Method_call`
`|` | `Method_return`
`|` | `Error`
`|` | `Signal`

    type message_header = {

`` | `serial : `int32`;`
`` | `ty : `message_type`;`
`` | `destination : `DBus.service option`;`
`` | `path : `DBus.path option`;`
`` | `interface : `DBus.interface option`;`
`` | `member : `string option`;`
`` | `error_name : `DBus.error_name option`;`
`` | `sender : `string option`;`

`}`

    val string_of_message_ty : message_type -> string

    val create : message_type -> DBus.message

    val new_method_call : DBus.service -> DBus.path -> DBus.interface -> string -> DBus.message

    val new_method_return : DBus.message -> DBus.message

    val new_signal : DBus.path -> DBus.interface -> string -> DBus.message

    val new_error : DBus.message -> DBus.error_name -> string -> DBus.message

    val get_header : DBus.message -> message_header

    val append : DBus.message -> DBus.ty list -> unit

    val get : DBus.message -> DBus.ty list

    val marshal : DBus.message -> string

    val set_path : DBus.message -> DBus.path -> unit

    val set_interface : DBus.message -> DBus.interface -> unit

    val set_member : DBus.message -> string -> unit

    val set_error_name : DBus.message -> DBus.error_name -> unit

    val set_destination : DBus.message -> DBus.service -> unit

    val set_sender : DBus.message -> string -> unit

    val set_reply_serial : DBus.message -> int32 -> unit

    val set_auto_start : DBus.message -> bool -> unit

    val has_path : DBus.message -> DBus.path -> bool

    val has_interface : DBus.message -> DBus.interface -> bool

    val has_member : DBus.message -> string -> bool

    val has_destination : DBus.message -> DBus.service -> bool

    val has_sender : DBus.message -> string -> bool

    val has_signature : DBus.message -> string -> bool

    val get_type : DBus.message -> message_type

    val get_path : DBus.message -> DBus.path option

    val get_interface : DBus.message -> DBus.interface option

    val get_member : DBus.message -> string option

    val get_error_name : DBus.message -> DBus.error_name option

    val get_destination : DBus.message -> DBus.service option

    val get_sender : DBus.message -> string option

    val get_signature : DBus.message -> string option

    val get_serial : DBus.message -> int32

    val get_reply_serial : DBus.message -> int32

    val get_auto_start : DBus.message -> bool

    val is_signal : DBus.message -> DBus.interface -> string -> bool

    val is_method_call : DBus.message -> DBus.interface -> string -> bool

    val is_error : DBus.message -> string -> bool