obus

Pure Ocaml implementation of the D-Bus protocol
Library obus.internals
Module OBus_path
type element = string

A path component

type t = element list

A complete path

val compare : t -> t -> int

Same as Pervasives.compare. It allows this module to be used as argument to the functors Set.Make and Map.Make.

Construction
val empty : t

Empty path

val after : t -> t -> t option

after prefix path if path = prefix @ p return Some p, and None if not

val of_string : string -> t

Create an object path from a string.

  • raises OBus_string.Invalid_string

    if the given string does not represent a valid object path

val to_string : t -> string

Return a string representation of an object path

Helpers
val escape : string -> element

Escape an arbitrary string into a valid element

val unescape : element -> string

Interpret escape sequence to get back the original string

val generate : unit -> t

generate () generate a new unique path

Validation
val validate : OBus_string.validator
val validate_element : OBus_string.validator