Module OBus_message

module OBus_message: sig .. end
Message description

type serial = int32 

Message structure

type body = OBus_value.V.sequence 
The body is a sequence of dynamically typed values
type typ = 
| Method_call of OBus_path.t * OBus_name.interface * OBus_name.member
| Method_return of serial
| Error of serial * OBus_name.error
| Signal of OBus_path.t * OBus_name.interface * OBus_name.member
type flags = {
   no_reply_expected : bool;
   no_auto_start : bool;
}
flags
val no_reply_expected : flags -> bool
no_reply_expected projection
val no_auto_start : flags -> bool
no_auto_start projection
val make_flags : ?no_reply_expected:bool -> ?no_auto_start:bool -> unit -> flags
Creates message flags. All optionnal arguments default to false
val default_flags : flags
All false
type t = {
   flags : flags;
   serial : serial;
   typ : typ;
   destination : OBus_name.bus;
   sender : OBus_name.bus;
   body : body;
}
Projections

val flags : t -> flags
val serial : t -> serial
val typ : t -> typ
val destination : t -> OBus_name.bus
val sender : t -> OBus_name.bus
val body : t -> body

Helpers for creating messages


Note that when creating an message the serial field is not relevant, it is overridden by OBus_connection at sending-time
val make : ?flags:flags ->
?serial:serial ->
?sender:OBus_name.bus ->
?destination:OBus_name.bus ->
typ:typ -> body -> t
val method_call : ?flags:flags ->
?serial:serial ->
?sender:OBus_name.bus ->
?destination:OBus_name.bus ->
path:OBus_path.t ->
?interface:OBus_name.interface ->
member:OBus_name.member -> body -> t
val method_return : ?flags:flags ->
?serial:serial ->
?sender:OBus_name.bus ->
?destination:OBus_name.bus ->
reply_serial:serial -> body -> t
val error : ?flags:flags ->
?serial:serial ->
?sender:OBus_name.bus ->
?destination:OBus_name.bus ->
reply_serial:serial ->
error_name:OBus_name.error -> body -> t
val signal : ?flags:flags ->
?serial:serial ->
?sender:OBus_name.bus ->
?destination:OBus_name.bus ->
path:OBus_path.t ->
interface:OBus_name.interface ->
member:OBus_name.member -> body -> t

Errors

exception Invalid_reply of string
Exception raised when the signature of the reply to a method call does not match the expected signature. The argument is an error message.
val invalid_reply : method_call:t ->
expected_signature:OBus_value.signature ->
method_return:t -> exn
invalid_reply ~method_call ~expected_signature ~method_return returns an OBus_message.Invalid_reply exception with a informative description of the error.

It raises Invalid_argument if method_call is not a method call message or method_return is not a method return message


Pretty-printing

val print : Format.formatter -> t -> unit
Print a message on a formatter