`sig
module Oid :
sig
type t
val of_string : string -> Ldap_schemaparser.Oid.t
val to_string : Ldap_schemaparser.Oid.t -> string
val compare : Ldap_schemaparser.Oid.t -> Ldap_schemaparser.Oid.t -> int
end
val format_oid : Ldap_schemaparser.Oid.t -> unit
module Lcstring :
sig
type t
val of_string : string -> Ldap_schemaparser.Lcstring.t
val to_string : Ldap_schemaparser.Lcstring.t -> string
val compare :
Ldap_schemaparser.Lcstring.t -> Ldap_schemaparser.Lcstring.t -> int
end
val format_lcstring : Ldap_schemaparser.Lcstring.t -> unit
type octype = Abstract | Structural | Auxiliary
type objectclass = {
oc_name : string list;
oc_oid : Ldap_schemaparser.Oid.t;
oc_desc : string;
oc_obsolete : bool;
oc_sup : Ldap_schemaparser.Lcstring.t list;
oc_must : Ldap_schemaparser.Lcstring.t list;
oc_may : Ldap_schemaparser.Lcstring.t list;
oc_type : Ldap_schemaparser.octype;
oc_xattr : string list;
}
type attribute = {
at_name : string list;
at_desc : string;
at_oid : Ldap_schemaparser.Oid.t;
at_equality : string;
at_ordering : string;
at_substr : Ldap_schemaparser.Oid.t;
at_syntax : Ldap_schemaparser.Oid.t;
at_length : Stdlib.Int64.t;
at_obsolete : bool;
at_single_value : bool;
at_collective : bool;
at_no_user_modification : bool;
at_usage : string;
at_sup : Ldap_schemaparser.Lcstring.t list;
at_xattr : string list;
}
type schema = {
objectclasses :
(Ldap_schemaparser.Lcstring.t, Ldap_schemaparser.objectclass)
Stdlib.Hashtbl.t;
objectclasses_byoid :
(Ldap_schemaparser.Oid.t, Ldap_schemaparser.objectclass)
Stdlib.Hashtbl.t;
attributes :
(Ldap_schemaparser.Lcstring.t, Ldap_schemaparser.attribute)
Stdlib.Hashtbl.t;
attributes_byoid :
(Ldap_schemaparser.Oid.t, Ldap_schemaparser.attribute) Stdlib.Hashtbl.t;
}
val schema_print_depth : int Stdlib.ref
val format_schema : Ldap_schemaparser.schema -> unit
exception Parse_error_oc of Stdlib.Lexing.lexbuf *
Ldap_schemaparser.objectclass * string
exception Parse_error_at of Stdlib.Lexing.lexbuf *
Ldap_schemaparser.attribute * string
exception Syntax_error_oc of Stdlib.Lexing.lexbuf *
Ldap_schemaparser.objectclass * string
exception Syntax_error_at of Stdlib.Lexing.lexbuf *
Ldap_schemaparser.attribute * string
val readSchema : string list -> string list -> Ldap_schemaparser.schema
end`