sig
val sync : ('a -> 'b -> 'c -> 'd) -> 'a -> 'b -> 'c -> 'd Lwt.t
type cookie =
Set of Extensions.url_path option * float option * string * string
| Unset of Extensions.url_path option * string
val cookie_table_of_eliom_cookies :
?oldtable:Http_frame.cookieset ->
sp:Eliomsessions.server_params ->
Eliomservices.cookie list -> Http_frame.cookieset
type result_to_send =
EliomResult of Http_frame.result
| EliomExn of (exn list * Eliomservices.cookie list)
type suff = [ `WithSuffix | `WithoutSuffix ]
type servcoserv = [ `Coservice | `Service ]
type getpost = [ `Get | `Post ]
type attached_service_kind =
[ `External
| `Internal of Eliomservices.servcoserv * Eliomservices.getpost ]
type get_attached_service_kind =
[ `External | `Internal of Eliomservices.servcoserv * [ `Get ] ]
type post_attached_service_kind =
[ `External | `Internal of Eliomservices.servcoserv * [ `Post ] ]
type internal =
[ `Internal of Eliomservices.servcoserv * Eliomservices.getpost ]
type registrable = [ `Registrable | `Unregistrable ]
type +'a a_s
type +'a na_s
type service_kind =
[ `Attached of Eliomservices.attached_service_kind Eliomservices.a_s
| `Nonattached of Eliomservices.getpost Eliomservices.na_s ]
type get_service_kind =
[ `Attached of
Eliomservices.get_attached_service_kind Eliomservices.a_s
| `Nonattached of [ `Get ] Eliomservices.na_s ]
type post_service_kind =
[ `Attached of
Eliomservices.post_attached_service_kind Eliomservices.a_s
| `Nonattached of [ `Post ] Eliomservices.na_s ]
type internal_service_kind =
[ `Attached of Eliomservices.internal Eliomservices.a_s
| `Nonattached of Eliomservices.getpost Eliomservices.na_s ]
type attached =
[ `Attached of Eliomservices.attached_service_kind Eliomservices.a_s ]
type nonattached =
[ `Nonattached of Eliomservices.getpost Eliomservices.na_s ]
type ('a, 'b, +'c, +'d, +'e, +'f, +'g) service
val new_service :
?sp:Eliomsessions.server_params ->
path:Extensions.url_path ->
get_params:('a, [< Eliomservices.suff ] as 'b, 'c)
Eliomparameters.params_type ->
unit ->
('a, unit,
[> `Attached of
[> `Internal of [> `Service ] * [> `Get ] ] Eliomservices.a_s ],
'b, 'c, unit, [> `Registrable ])
Eliomservices.service
val new_external_service :
prefix:string ->
path:Extensions.url_path ->
get_params:('a, [< Eliomservices.suff ] as 'b, 'c)
Eliomparameters.params_type ->
post_params:('d, [ `WithoutSuffix ], 'e) Eliomparameters.params_type ->
unit ->
('a, 'd, [> `Attached of [> `External ] Eliomservices.a_s ], 'b, 'c, 'e,
[> `Unregistrable ])
Eliomservices.service
val new_post_service :
?sp:Eliomsessions.server_params ->
fallback:('a, unit,
[ `Attached of
[ `Internal of [ `Coservice | `Service ] * [ `Get ] ]
Eliomservices.a_s ],
[< Eliomservices.suff ] as 'b, 'c, unit, [< `Registrable ])
Eliomservices.service ->
post_params:('d, [ `WithoutSuffix ], 'e) Eliomparameters.params_type ->
unit ->
('a, 'd,
[> `Attached of
[> `Internal of [ `Coservice | `Service ] * [> `Post ] ]
Eliomservices.a_s ],
'b, 'c, 'e, [> `Registrable ])
Eliomservices.service
val new_coservice :
?max_use:int ->
?timeout:float ->
fallback:(unit, unit,
[ `Attached of
[ `Internal of [ `Service ] * [ `Get ] ] Eliomservices.a_s ],
[ `WithoutSuffix ], unit, unit, [< Eliomservices.registrable ])
Eliomservices.service ->
get_params:('a, [ `WithoutSuffix ], 'b) Eliomparameters.params_type ->
unit ->
('a, unit,
[> `Attached of
[> `Internal of [> `Coservice ] * [> `Get ] ] Eliomservices.a_s ],
[ `WithoutSuffix ], 'b, unit, [> `Registrable ])
Eliomservices.service
val new_post_coservice :
?max_use:int ->
?timeout:float ->
fallback:('a, unit,
[ `Attached of
[ `Internal of [< `Coservice | `Service ] * [ `Get ] ]
Eliomservices.a_s ],
[< Eliomservices.suff ] as 'b, 'c, unit, [< `Registrable ])
Eliomservices.service ->
post_params:('d, [ `WithoutSuffix ], 'e) Eliomparameters.params_type ->
unit ->
('a, 'd,
[> `Attached of
[> `Internal of [> `Coservice ] * [> `Post ] ] Eliomservices.a_s ],
'b, 'c, 'e, [> `Registrable ])
Eliomservices.service
val new_coservice' :
?max_use:int ->
?timeout:float ->
get_params:('a, [ `WithoutSuffix ], 'b) Eliomparameters.params_type ->
unit ->
('a, unit, [> `Nonattached of [> `Get ] Eliomservices.na_s ],
[ `WithoutSuffix ], 'b, unit, [> `Registrable ])
Eliomservices.service
val new_post_coservice' :
?max_use:int ->
?timeout:float ->
post_params:('a, [ `WithoutSuffix ], 'b) Eliomparameters.params_type ->
unit ->
(unit, 'a, [> `Nonattached of [> `Post ] Eliomservices.na_s ],
[ `WithoutSuffix ], unit, 'b, [> `Registrable ])
Eliomservices.service
val static_dir :
sp:Eliomsessions.server_params ->
(string list, unit,
[> `Attached of
[> `Internal of [> `Service ] * [> `Get ] ] Eliomservices.a_s ],
[ `WithSuffix ], [ `One of string list ] Eliomparameters.param_name,
unit, [> `Unregistrable ])
Eliomservices.service
val preapply :
service:('a, 'b, [> `Attached of 'd Eliomservices.a_s ] as 'c,
[< Eliomservices.suff ], 'e, 'f, 'g)
Eliomservices.service ->
'a ->
(unit, 'b, 'c, [ `WithoutSuffix ], unit, 'f, [> `Unregistrable ])
Eliomservices.service
val set_exn_handler :
?sp:Eliomsessions.server_params ->
(Eliomsessions.server_params -> exn -> Eliomservices.result_to_send Lwt.t) ->
unit
val get_kind_ : ('a, 'b, 'c, 'd, 'e, 'f, 'g) Eliomservices.service -> 'c
val get_pre_applied_parameters_ :
('a, 'b, 'c, 'd, 'e, 'f, 'g) Eliomservices.service ->
(string * string) list
val get_get_params_type_ :
('a, 'b, 'c, 'd, 'e, 'f, 'g) Eliomservices.service ->
('a, 'd, 'e) Eliomparameters.params_type
val get_post_params_type_ :
('a, 'b, 'c, 'd, 'e, 'f, 'g) Eliomservices.service ->
('b, [ `WithoutSuffix ], 'f) Eliomparameters.params_type
val get_att_kind_ : 'a Eliomservices.a_s -> 'a
val get_sub_path_ : 'a Eliomservices.a_s -> Extensions.url_path
val get_full_path_ : 'a Eliomservices.a_s -> Extensions.url_path
val get_prefix_ : 'a Eliomservices.a_s -> string
val get_get_state_ : 'a Eliomservices.a_s -> Eliommod.internal_state option
val get_post_state_ :
'a Eliomservices.a_s -> Eliommod.internal_state option
val get_na_name_ : 'a Eliomservices.na_s -> string option * string option
val get_max_use_ :
('a, 'b, 'c, 'd, 'e, 'f, 'g) Eliomservices.service -> int option
val get_timeout_ :
('a, 'b, 'c, 'd, 'e, 'f, 'g) Eliomservices.service -> float option
val reconstruct_absolute_url_path :
Extensions.url_path ->
Extensions.url_path -> Extensions.url_path option -> string
val reconstruct_relative_url_path :
Extensions.url_path ->
Extensions.url_path -> Extensions.url_path option -> string
val erts_of_rst : Eliomservices.result_to_send -> Eliommod.result_to_send
end