comparison src/settings.sig @ 765:a28982de5645

Successfully influenced effectful-ness status of FFI func
author Adam Chlipala <adamc@hcoop.net>
date Sat, 02 May 2009 11:27:26 -0400
parents 7f653298dd66
children df09c95085f8
comparison
equal deleted inserted replaced
764:7f653298dd66 765:a28982de5645
25 * POSSIBILITY OF SUCH DAMAGE. 25 * POSSIBILITY OF SUCH DAMAGE.
26 *) 26 *)
27 27
28 signature SETTINGS = sig 28 signature SETTINGS = sig
29 29
30 (* How do all application URLs begin? *)
30 val setUrlPrefix : string -> unit 31 val setUrlPrefix : string -> unit
31 val getUrlPrefix : unit -> string 32 val getUrlPrefix : unit -> string
32 33
34 (* How many seconds should the server wait before assuming a Comet client has left? *)
33 val setTimeout : int -> unit 35 val setTimeout : int -> unit
34 val getTimeout : unit -> int 36 val getTimeout : unit -> int
35 37
38 (* Which C header files are needed? *)
36 val setHeaders : string list -> unit 39 val setHeaders : string list -> unit
37 val getHeaders : unit -> string list 40 val getHeaders : unit -> string list
38 41
42 type ffi = string * string
43
44 (* Which FFI types may be sent from clients to servers? *)
45 val setClientToServer : ffi list -> unit
46 val mayClientToServer : ffi -> bool
47
48 (* Which FFI functions have side effects? *)
49 val setEffectful : ffi list -> unit
50 val isEffectful : ffi -> bool
51
52 (* Which FFI functions may only be run in clients? *)
53 val setClientOnly : ffi list -> unit
54 val isClientOnly : ffi -> bool
55
56 (* Which FFI functions may only be run on servers? *)
57 val setServerOnly : ffi list -> unit
58 val isServerOnly : ffi -> bool
59
60 (* Which FFI functions may be run in JavaScript? (JavaScript function names included) *)
61 val setJsFuncs : (ffi * string) list -> unit
62 val jsFunc : ffi -> string option
63
39 end 64 end