Sch_dslmodule Constraint = Sch_constraintmodule Free = Sch_freemodule Sig = Sch_sigmodule File = Sch_filetype ('o, 'a) field = {name : string;doc : string;codec : 'a t;default : 'a option;get : 'o -> 'a;omit : 'a -> bool;}and 'a union_case = | Case : {tag : string;doc : string;codec : 'b t;inject : 'b -> 'a;project : 'a -> 'b option;} -> 'a union_casea prism like structure for union cases, the inject and project functions are used to convert between the case payload and the union type
*)and _ t = | Str : string base_map -> string t| Password : string base_map -> string t| Int : int base_map -> int t| Int32 : int32 base_map -> int32 t| Int64 : int64 base_map -> int64 t| Bool : {} -> bool t| Float : float base_map -> float t| Double : float base_map -> float t| File : File.t t| Option : 'a t -> 'a option t| List : {doc : string;item : 'a t;constraint_ : 'a list Constraint.t option;} -> 'a list t| Map : {doc : string;item : 'a t;constraint_ : (string * 'a) list Constraint.t option;} -> (string * 'a) list t| Object : {kind : string;doc : string;unknown : unknown_handling;members : ('o fieldk, 'o) Free.t;} -> 'o t| Union : {doc : string;discriminator : string;cases : 'a union_case list;} -> 'a t| Rec : 'a t Stdlib.Lazy.t -> 'a t| Iso : {fwd : 'b -> ('a, string list) Stdlib.result;bwd : 'a -> 'b;repr : 'b t;} -> 'a tval case_tags : 'a union_case list -> string listval find_case_by_tag :
Stdlib.String.t ->
'a union_case list ->
'a union_case optiontype 'a projected_case = | Projected : {tag : string;codec : 'b t;payload : 'b;} -> 'a projected_caseval find_case_for_value : 'a -> 'a union_case list -> 'b projected_case optionval error : string -> decode_errorCreate an error at the current location (empty path)
val errors : string list -> decode_error listCreate multiple errors at the current location
val in_field : string -> decode_error list -> decode_error listAdd a field name to the path of all errors
val error_to_pair : decode_error -> string * stringConvert a decode_error to a (path_string, message) pair
val type_name : 'a. 'a t -> stringtypename according to openapi
val format_name : 'a. 'a t -> string optionformat according to openapi
val doc : 'a. 'a t -> stringval is_object_codec : 'a. 'a t -> boolval with_basemap :
?constraint_:'a Constraint.t ->
?doc:string ->
'a base_map ->
'a base_mapval with_ :
'a. ?constraint_:'a Constraint.t ->
?doc:string ->
?discriminator:string ->
'a t ->
'a tval string : string tval password : string tval bool : bool tval int : int tval int32 : int32 tval int64 : int64 tval float : float tval double : float tval list :
?doc:string ->
?constraint_:'a list Constraint.t ->
'a t ->
'a list tval map :
?doc:string ->
?constraint_:(string * 'a) list Constraint.t ->
'a t ->
(string * 'a) list tmodule Object : sig ... endmodule Validation : sig ... end