sig   type code =       VIR_ERR_OK     | VIR_ERR_INTERNAL_ERROR     | VIR_ERR_NO_MEMORY     | VIR_ERR_NO_SUPPORT     | VIR_ERR_UNKNOWN_HOST     | VIR_ERR_NO_CONNECT     | VIR_ERR_INVALID_CONN     | VIR_ERR_INVALID_DOMAIN     | VIR_ERR_INVALID_ARG     | VIR_ERR_OPERATION_FAILED     | VIR_ERR_GET_FAILED     | VIR_ERR_POST_FAILED     | VIR_ERR_HTTP_ERROR     | VIR_ERR_SEXPR_SERIAL     | VIR_ERR_NO_XEN     | VIR_ERR_XEN_CALL     | VIR_ERR_OS_TYPE     | VIR_ERR_NO_KERNEL     | VIR_ERR_NO_ROOT     | VIR_ERR_NO_SOURCE     | VIR_ERR_NO_TARGET     | VIR_ERR_NO_NAME     | VIR_ERR_NO_OS     | VIR_ERR_NO_DEVICE     | VIR_ERR_NO_XENSTORE     | VIR_ERR_DRIVER_FULL     | VIR_ERR_CALL_FAILED     | VIR_ERR_XML_ERROR     | VIR_ERR_DOM_EXIST     | VIR_ERR_OPERATION_DENIED     | VIR_ERR_OPEN_FAILED     | VIR_ERR_READ_FAILED     | VIR_ERR_PARSE_FAILED     | VIR_ERR_CONF_SYNTAX     | VIR_ERR_WRITE_FAILED     | VIR_ERR_XML_DETAIL     | VIR_ERR_INVALID_NETWORK     | VIR_ERR_NETWORK_EXIST     | VIR_ERR_SYSTEM_ERROR     | VIR_ERR_RPC     | VIR_ERR_GNUTLS_ERROR     | VIR_WAR_NO_NETWORK     | VIR_ERR_NO_DOMAIN     | VIR_ERR_NO_NETWORK     | VIR_ERR_INVALID_MAC     | VIR_ERR_AUTH_FAILED     | VIR_ERR_INVALID_STORAGE_POOL     | VIR_ERR_INVALID_STORAGE_VOL     | VIR_WAR_NO_STORAGE     | VIR_ERR_NO_STORAGE_POOL     | VIR_ERR_NO_STORAGE_VOL     | VIR_ERR_UNKNOWN of int   val string_of_code : Libvirt.Virterror.code -> string   type domain =       VIR_FROM_NONE     | VIR_FROM_XEN     | VIR_FROM_XEND     | VIR_FROM_XENSTORE     | VIR_FROM_SEXPR     | VIR_FROM_XML     | VIR_FROM_DOM     | VIR_FROM_RPC     | VIR_FROM_PROXY     | VIR_FROM_CONF     | VIR_FROM_QEMU     | VIR_FROM_NET     | VIR_FROM_TEST     | VIR_FROM_REMOTE     | VIR_FROM_OPENVZ     | VIR_FROM_XENXM     | VIR_FROM_STATS_LINUX     | VIR_FROM_STORAGE     | VIR_FROM_UNKNOWN of int   val string_of_domain : Libvirt.Virterror.domain -> string   type level =       VIR_ERR_NONE     | VIR_ERR_WARNING     | VIR_ERR_ERROR     | VIR_ERR_UNKNOWN_LEVEL of int   val string_of_level : Libvirt.Virterror.level -> string   type t = {     code : Libvirt.Virterror.code;     domain : Libvirt.Virterror.domain;     message : string option;     level : Libvirt.Virterror.level;     str1 : string option;     str2 : string option;     str3 : string option;     int1 : int32;     int2 : int32;   }   val to_string : Libvirt.Virterror.t -> string   val get_last_error : unit -> Libvirt.Virterror.t option   val get_last_conn_error :     [> `R ] Libvirt.Connect.t -> Libvirt.Virterror.t option   val reset_last_error : unit -> unit   val reset_last_conn_error : [> `R ] Libvirt.Connect.t -> unit   val no_error : unit -> Libvirt.Virterror.t end